Free checklist
Technical SEO Checklist
A practical pass you can run before (or after) a full-site scan — crawl access, on-page basics, performance signals, and trust headers. 28 checks — print or Save as PDF anytime.
Work the list top-down. When you want Pass/Fail results across your site, run a free homepage scan and unlock a full-site crawl. Prefer a printable copy? Use Save as PDF (opens a print-friendly page — choose Print → Save as PDF in your browser).
Crawl & indexation
If search engines cannot discover or index key URLs, on-page work will not help.
HTTPS everywhere
Serve the preferred host over HTTPS and redirect HTTP → HTTPS.
One preferred host (www or non-www)
301-redirect the alternate host so only one version is indexable.
robots.txt is reachable and sane
Allow important paths; do not Disallow templates you want ranked.
XML sitemap published
Ship /sitemap.xml (or sitemap index) and submit it in Search Console.
No accidental noindex on money pages
Check robots meta and X-Robots-Tag on home, product, and blog templates.
Self-referencing canonicals
Each indexable page points at its preferred HTTPS URL.
No long redirect chains
Collapse multi-hop redirects to a single 301 where possible.
On-page & structure
Unique titles, clear headings, and structured data make templates crawlable and clickable.
Unique title tags (≈50–60 characters)
Primary topic near the front; brand at the end; one title per URL.
Unique meta descriptions (≈120–160 characters)
Benefit-led copy that matches the visible intro — earns the SERP click.
One clear H1 per page
Use H2s for sections; avoid duplicate or missing H1s on templates.
Valid JSON-LD for key types
Start with Organization + WebSite on the home URL; BreadcrumbList on inner pages.
Hreflang when you serve multiple locales
Skip if single-language; otherwise pair alternates both ways.
Important pages linked in HTML
Reach key URLs via real <a href> links — not PDF-only or JS-only nav.
Content & crawl waste
Thin pages and broken assets burn budget and frustrate visitors.
Enough original content on key templates
Aim for useful depth (often 300+ words) on pages you want to rank.
No broken internal links (4xx/5xx)
Fix nav, footer, and blog templates first — they multiply across the site.
Images load and have alt text
Replace broken image URLs; add descriptive alt on meaningful images.
No duplicate titles / thin near-duplicates
Consolidate or differentiate query-param and printer-friendly variants.
Performance signals
Technical speed basics that crawlers and users both notice.
Mobile viewport meta
Include width=device-width, initial-scale=1.
Gzip or Brotli compression
Enable at the CDN or origin for HTML and text assets.
Caching headers on static assets
Cache-Control / ETag / Last-Modified for CSS, JS, and images.
Lazy-load below-the-fold images
Use loading="lazy" where appropriate; keep LCP image eager.
Preconnect critical third parties
Hint fonts, analytics, or CDN origins you always load.
Trust & security headers
HTTPS alone is not enough — ship a sensible header baseline.
Valid SSL certificate (not expiring soon)
Renew before expiry; watch intermediate chain issues.
Strict-Transport-Security (HSTS)
Enable once HTTPS is solid across the host.
Clickjacking protection
X-Frame-Options or CSP frame-ancestors.
Content-Security-Policy (or report-only start)
Tighten script-src gradually; avoid blocking critical first-party scripts.
No mixed content
Upgrade HTTP asset URLs on HTTPS pages.
Open Graph / social preview tags
og:title, og:description, and a 1200×630 og:image on shareable URLs.
Weekly digest
Get a weekly reminder to re-check your site
Enter your email and a site URL. We use the same digest signup as History — optional email via Resend, unsubscribe anytime. Prefer managing a full watchlist? Add sites on History, then subscribe there.
Next steps: Fix guides · Full-site audit order of operations · Free SEO tools