SEO Audit Checklist
12 checks every page needs before it goes live
Skip the manual work: Run a free automated audit and get all 12 checks in seconds.
Most SEO problems aren't mysterious. They're missing title tags, slow servers, and pages Google can't crawl. This checklist covers the 12 signals that move the needle — skip any of them and you're leaving rankings on the table.
1. Title Tag
Your title tag is the single most important on-page SEO element. Google uses it to understand what your page is about, and searchers use it to decide whether to click.
- ✓ 50–60 characters
- ✓ Primary keyword near the front
- ✓ Unique per page — no duplicates
- ✗ Keyword stuffing: "Best shoes, buy shoes, cheap shoes" is not a title
Google rewrites titles it doesn't like. If your title keeps getting replaced in search results, it's usually too long, stuffed, or doesn't match the page content.
2. Meta Description
Meta descriptions don't directly affect rankings, but they affect clicks — which affects rankings indirectly. A good meta description is a free ad in search results.
- ✓ 150–160 characters
- ✓ Include a call to action
- ✓ Match what's actually on the page
3. HTTPS / SSL Certificate
Google confirmed HTTPS as a ranking signal in 2014. Beyond rankings, browsers now actively warn visitors on HTTP sites. There's no reason to run without SSL in 2024.
- ✓ All pages served over HTTPS
- ✓ HTTP redirects to HTTPS (301, not 302)
- ✓ Certificate is valid and not expired
4. Mobile Friendliness
Google uses mobile-first indexing for all sites. That means Google crawls and indexes the mobile version of your site. If your mobile version is broken or missing content, your desktop rankings suffer.
- ✓
width=device-widthviewport meta tag - ✓ Text readable without zooming
- ✓ Tap targets at least 48×48px
5. Page Speed
Core Web Vitals are a confirmed ranking factor. But even before rankings: every extra second of load time drops conversion rates by 7% on average (Akamai). Speed matters for users first.
- ✓ Server response under 1 second
- ✓ Images compressed and served in WebP
- ✓ No render-blocking scripts in
<head>
6. Heading Structure (H1)
One H1 per page. That's the rule. Multiple H1s dilute your topic signal. Zero H1s leaves Google guessing.
- ✓ Exactly one H1 that matches the page topic
- ✓ H2s and H3s used for logical hierarchy
- ✗ Using H tags for visual styling instead of structure
7. Image Alt Text
Alt text does two things: it tells Google what an image shows (image search rankings), and it makes your site accessible to screen readers. Missing alt text fails both.
- ✓ Every content image has descriptive alt text
- ✓ Decorative images use
alt=""(empty, not missing) - ✗
alt="image1.jpg"— not useful to anyone
8. robots.txt
robots.txt tells crawlers what they can and can't access. Missing or misconfigured robots.txt can accidentally block your entire site from indexing.
- ✓ robots.txt exists at
/robots.txt - ✓ Returns HTTP 200
- ✗
Disallow: /— blocks everything (yes, we've seen it in production)
9. XML Sitemap
A sitemap is a map for crawlers. It doesn't guarantee indexing, but it helps Google discover pages — especially new or deep ones that aren't well linked internally.
- ✓ sitemap.xml at
/sitemap.xml - ✓ Submitted to Google Search Console
- ✓ Only includes indexable pages
10. Canonical URL
If the same content appears at multiple URLs (with or without www, with query params, etc.), Google has to guess which one to index. The canonical tag removes that guesswork.
- ✓
<link rel="canonical">on every page - ✓ Points to the preferred, indexable version
11. Open Graph Tags
When someone shares your page on LinkedIn, Twitter, or Slack, Open Graph tags control the title, description, and image that appear. Without them, the preview is whatever the platform guesses.
- ✓
og:title,og:description,og:image - ✓ og:image at least 1200×630px
12. Structured Data (Schema Markup)
Schema markup in JSON-LD format tells Google the type of content on your page — article, product, FAQ, local business. It unlocks rich results: stars, FAQs, breadcrumbs. These increase click-through rates measurably.
- ✓ JSON-LD script in the
<head> - ✓ Validated with Google's Rich Results Test
- ✓ Type matches actual page content
Check these automatically
Manually auditing these 12 items takes 20–30 minutes per page. AuditWidget's free tool runs all 12 checks in under 10 seconds and shows you exactly what to fix.