Skip to content
Back to Growth & Acquisition

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.