Technical SEO
Ensure the site is crawlable, fast, mobile-first, and structured so Google can index and rank every page.
Why
Technical SEO is the foundation — without it, the best content won't rank because Google can't crawl, render, or understand the pages. The common failures are: blocked pages (robots.txt disallow), slow pages (Core Web Vitals fail, Google demotes), duplicate content (no canonical tags, parameter URLs), missing structured data (no schema.org JSON-LD, so no rich results), and client-side rendering without SSR (Google's mobile crawler sees a blank page). Technical SEO is unglamorous but it's a multiplier on every content investment — fixing a crawl block can unblock 100 pages' rankings overnight. The discipline is a quarterly technical audit (crawl with Screaming Frog, check Core Web Vitals, validate structured data) and fixing issues before they compound.
When
Before investing in content or backlinks. Audit quarterly; fix issues before they block rankings.
How
1. Crawl the site with Screaming Frog or Sitebulb; fix every 4xx/5xx error, redirect chain, and broken link 2. Check robots.txt: ensure no important paths are disallowed; add a sitemap reference 3. Submit XML sitemap to Google Search Console; monitor indexation rate (should be 90%+ of submitted URLs) 4. Run Core Web Vitals (LCP, FID/INP, CLS) on 20 key pages; fix any that fail (target: LCP <2.5s, INP <200ms, CLS <0.1) 5. Add canonical tags to every page; fix duplicate content (parameter URLs, trailing-slash inconsistencies, HTTP/HTTPS) 6. Add structured data (schema.org JSON-LD): Article for blog posts, HowTo for guides, FAQPage for FAQs, BreadcrumbList 7. Ensure SSR/SSG for all content pages (Astro/Next SSG); client-only rendering shows Google a blank page 8. Set up hreflang for multi-locale pages; each locale version must point to its alternates
Example
# Technical SEO audit (quarterly) Crawl (Screaming Frog): 4xx errors: 12 (fix: redirect or 410) → fixed Broken internal links: 8 → fixed Redirect chains: 3 (A→B→C, flatten to A→C) → fixed Core Web Vitals (20 key pages): LCP: 1.8s (target <2.5s) ✓ INP: 180ms (target <200ms) ✓ CLS: 0.04 (target <0.1) ✓ Structured data (JSON-LD): Blog posts: Article schema ✓ Guide pages: HowTo schema ✓ FAQ sections: FAQPage schema ✓ Breadcrumbs: BreadcrumbList ✓ Indexation: Sitemap URLs: 420 Indexed: 398 (95%) ✓ (target 90%+) Not indexed: 22 (thin pages, prune or improve) # After audit fixes Organic traffic: 11,000 → 14,500 visits/mo (+32%) from unblocking 22 pages + fixing 3 redirect chains
Common Problems
- ⚠Client-side rendering without SSR/SSG — Google's mobile crawler sees a blank page and doesn't index the content.
- ⚠No canonical tags, so parameter URLs (?utm_source=...) create 1000 duplicates that dilute the canonical's ranking.
- ⚠Failing Core Web Vitals (LCP >4s) — Google demotes slow pages regardless of content quality.
- ⚠No structured data, so the pages never get rich results (FAQ accordions, how-to steps) that increase CTR from SERP.
Best Practices
- ✓Use SSR/SSG (Astro, Next SSG) for all content pages; client-only rendering is invisible to Google's mobile crawler.
- ✓Add canonical tags and fix duplicate URLs; parameter duplicates dilute the canonical's ranking signal.
- ✓Pass Core Web Vitals on all key pages (LCP <2.5s, INP <200ms, CLS <0.1); slow pages get demoted regardless of content.
- ✓Add schema.org JSON-LD (Article, HowTo, FAQPage, BreadcrumbList) to earn rich results that lift SERP CTR.