Technical SEO ensures that search engines can efficiently crawl, render, and index your pages. Unlike content or link building, technical SEO issues can completely prevent a page from ranking regardless of quality — so fixing them is often the highest-leverage work.
Crawlability
Every page you want indexed must be reachable by following links from your home page. Check for orphan pages, broken links, and redirect chains in Google Search Console.
# Correct redirect — 301 passes link equity
RewriteRule ^old-page$ /new-page [R=301,L]
# Avoid: redirect chains (A → B → C) — consolidate to A → C
# Avoid: redirect loops (A → B → A)
robots.txt
User-agent: *
Disallow: /admin/
Disallow: /api/private/
Disallow: /search? # block faceted search URLs
Allow: /api/public/ # explicitly allow subset
Crawl-delay: 1
Sitemap: https://example.com/sitemap.xml
XML Sitemap Best Practices
- Include only canonical, indexable URLs (no
noindex, no redirects) - Split large sitemaps into chunks of 50,000 URLs and use a sitemap index
- Update
<lastmod>accurately — Google uses it to prioritise recrawling - Submit via Google Search Console → Sitemaps
Canonical Tags
Use canonical tags to tell Google which version of a URL is authoritative when the same content is accessible at multiple URLs (pagination, query parameters, www vs non-www).
<!-- Self-referencing canonical on every page -->
<link rel="canonical" href="https://www.example.com/exact-url">
<!-- Paginated pages — canonical to page 1 is WRONG for unique content.
Each page should self-canonical; use rel="next"/rel="prev" instead. -->
<link rel="canonical" href="https://www.example.com/blog/page/2">
Structured Data
JSON-LD structured data helps Google understand your content type and can unlock rich results (FAQ boxes, breadcrumbs, article bylines, how-to steps) in search.
{
"@context": "https://schema.org",
"@type": "Article",
"headline": "Complete Guide to useEffect",
"datePublished": "2026-01-15",
"dateModified": "2026-04-01",
"author": { "@type": "Person", "name": "Jane Doe" },
"publisher": {
"@type": "Organization",
"name": "TechLead",
"logo": { "@type": "ImageObject", "url": "https://example.com/logo.png" }
}
}
Core Web Vitals Optimisation
- LCP < 2.5 s: preload the hero image (
<link rel="preload" as="image">), use AVIF/WebP, serve from CDN - INP < 200 ms: break up long tasks with
setTimeoutorscheduler.yield(), defer non-critical JS - CLS < 0.1: set explicit
widthandheighton images, reserve space for ads, avoid injecting content above existing content
Mobile-First Indexing
Google indexes and ranks the mobile version of your content. Ensure all content, structured data, and internal links present on desktop are also present on mobile.
<meta name="viewport" content="width=device-width, initial-scale=1">
HTTPS and Security Headers
Strict-Transport-Security: max-age=31536000; includeSubDomains; preload
Content-Security-Policy: default-src 'self'; script-src 'self' 'nonce-xxx'
X-Content-Type-Options: nosniff
X-Frame-Options: DENY