Technical SEO is the bedrock of all other SEO work. You can write the best content, earn hundreds of backlinks, and nail on-page optimisation — but if Googlebot can't crawl your site efficiently, your pages load in 8 seconds, or your site isn't mobile-friendly, none of that work pays off. After auditing over 300 websites in the past 15 years, I've seen companies lose 40–70% of their organic traffic to technical issues that were completely fixable in a matter of days. This checklist organises 30 critical technical SEO fixes by priority, so you always know what to tackle first.
Priority Levels — How to Use This Checklist
Each fix in this checklist is marked with a priority level:
- CRITICAL — Fix immediately. These issues actively prevent Google from indexing or ranking your pages, or fail users so badly that rankings will decline.
- IMPORTANT — Fix within 30 days. These issues measurably harm rankings and user experience but won't cause immediate catastrophe.
- NICE-TO-HAVE — Fix when you have capacity. These are optimisations that incrementally improve performance beyond the baseline.
Core Web Vitals — The Performance Ranking Factor
| Metric | Good | Needs Improvement | Poor | What It Measures |
|---|---|---|---|---|
| LCP (Largest Contentful Paint) | < 2.5s | 2.5–4.0s | > 4.0s | How fast the main content loads |
| INP (Interaction to Next Paint) | < 200ms | 200–500ms | > 500ms | Responsiveness to user interactions |
| CLS (Cumulative Layout Shift) | < 0.1 | 0.1–0.25 | > 0.25 | Visual stability while loading |
CRITICAL Fixes — Tackle These First
- CRITICAL #1 — HTTPS: Your entire site must run on HTTPS. HTTP sites receive a "Not Secure" label in Chrome, destroying trust, and Google uses HTTPS as a ranking signal. Check: Does your URL start with "https://"? Are all assets (images, scripts, CSS) also loaded over HTTPS (no mixed content)? Use WhyNoPadlock.com to check for mixed content issues.
- CRITICAL #2 — Mobile-First Indexing: Google indexes and ranks the mobile version of your website, not desktop. If your mobile site has less content, missing images, or broken navigation compared to desktop, your rankings suffer. Test at search.google.com/test/mobile-friendly. Ensure your mobile and desktop content is identical, font sizes are minimum 16px, tap targets are minimum 48x48px, and there are no intrusive interstitials that block content on mobile.
- CRITICAL #3 — Fix All 404 Errors: Pages returning 404 errors waste crawl budget and create poor user experiences. Use Google Search Console Coverage report to find 404s. For 404 URLs that have external backlinks or significant internal links, implement 301 redirects to the most relevant live page. For orphaned 404s with no backlinks, fix or remove internal links pointing to them.
- CRITICAL #4 — Correct robots.txt Configuration: An incorrect robots.txt file can block Google from crawling your entire site. Check google.com/search (using a Google account) → Google Search Console → Settings → robots.txt tester. The most dangerous mistake: "Disallow: /" accidentally blocking all crawling. Also verify you haven't accidentally disallowed CSS or JavaScript files Google needs to render your pages.
- CRITICAL #5 — XML Sitemap: Submit a complete, clean XML sitemap to Google Search Console. Your sitemap should include all indexable pages and exclude noindex pages, 404 pages, redirect URLs, and paginated pages beyond the first. Use a sitemap generator plugin (Yoast for WordPress, or Screaming Frog to generate one manually). Verify it's accessible at yoursite.com/sitemap.xml and submitted in GSC → Sitemaps.
- CRITICAL #6 — Fix Redirect Chains: A redirect chain occurs when Page A redirects to Page B, which redirects to Page C. Each redirect in the chain loses a small amount of "link equity" and slows page load time. Use Screaming Frog to identify chains (any redirect sequence longer than 1 hop). Consolidate chains so A → C directly. Maximum acceptable redirect depth: 1 hop.
- CRITICAL #7 — Canonical Tag Implementation: Canonical tags tell Google which version of a page is the "master" when similar content exists at multiple URLs (e.g., with/without trailing slash, www vs non-www, HTTP vs HTTPS, URL parameters). Every page should have a self-referencing canonical tag. If you have duplicate or near-duplicate content, the non-preferred versions should canonical to the preferred one.
- CRITICAL #8 — Core Web Vitals: Achieve "Good" scores for LCP (<2.5s), INP (<200ms), and CLS (<0.1) in Google Search Console's Core Web Vitals report. LCP is most commonly fixed by image optimisation and CDN implementation. CLS is most commonly fixed by specifying image dimensions in HTML and avoiding dynamically injected content above existing page content. Use PageSpeed Insights (pagespeed.web.dev) for specific improvement recommendations.
IMPORTANT Fixes — Complete Within 30 Days
- IMPORTANT #9 — Page Speed Optimization: Compress all images (use Squoosh.app or ShortPixel). Convert images to WebP format (30–35% smaller than JPEG with equivalent quality). Enable Gzip or Brotli compression on your server. Minify CSS, JavaScript, and HTML. Use browser caching with Cache-Control headers. Aim for a Google PageSpeed score of 80+ on mobile.
- IMPORTANT #10 — Structured Data / Schema Markup: Implement schema for your business type. For coaching and educational businesses: LocalBusiness, EducationalOrganization, Course, and FAQ schema. For blog posts: Article and FAQ schema. Test implementation at schema.org/validator and Google's Rich Results Test. Schema won't directly boost rankings but generates rich results that significantly improve CTR from search.
- IMPORTANT #11 — Internal Link Audit: Broken internal links waste crawl budget and create poor user experiences. Run Screaming Frog to find all internal links returning 404 errors. Fix or remove them. Also check for orphaned pages (pages with no internal links pointing to them) — these may never be crawled or discovered.
- IMPORTANT #12 — Duplicate Content Resolution: Run your content through Copyscape or Siteliner to identify duplicate content — both internal duplicates (same content at multiple URLs) and accidental duplication from CMS-generated pages (categories, tags, archives, search results pages). Set noindex on thin or duplicate content. Canonical-tag legitimate near-duplicates. Google demotes sites with substantial duplicate content.
- IMPORTANT #13 — Crawl Depth Reduction: Google gives more crawl priority to pages that are fewer clicks from the homepage. Important pages should be accessible within 3 clicks. Use your site architecture and internal linking to ensure your highest-priority pages (services, key blog posts, course pages) are no more than 2–3 clicks deep in the site hierarchy.
- IMPORTANT #14 — Log File Analysis: Server log files reveal exactly which pages Googlebot is crawling and how frequently. Upload your server logs to Screaming Frog's log file analyser to see where Google is spending crawl budget. If Googlebot is crawling low-value pages (admin, tag pages, filters) while neglecting your priority content, adjust robots.txt and internal linking accordingly.
- IMPORTANT #15 — URL Structure Cleanup: Clean, keyword-rich URLs outperform dynamic, parameter-heavy URLs. yourbusiness.com/services/seo outperforms yourbusiness.com/?page_id=142&cat=services. Ensure URLs are lowercase, hyphen-separated (not underscore), under 60 characters, and include the target keyword. Never change existing URLs without implementing 301 redirects from old to new.
- IMPORTANT #16 — Hreflang (Multilingual/Multi-region): If your site targets multiple languages or countries (e.g., English for India and English for the USA), implement hreflang tags to tell Google which version to show in which country. Missing hreflang leads to the wrong language version ranking in the wrong country, costing international traffic.
- IMPORTANT #17 — JavaScript SEO Check: If your site uses JavaScript frameworks (React, Vue, Angular, Next.js), verify that Google can render your content. Use Google Search Console's URL Inspection Tool → "Test Live URL" → "View Tested Page" to see how Googlebot renders your page. If critical content only appears in the rendered view (not the HTML view), implement server-side rendering (SSR) or static site generation (SSG) for SEO-critical pages.
- IMPORTANT #18 — Pagination: For paginated content (blog archive pages, product listings), implement rel="prev" and rel="next" correctly — or use a single "View All" page if content volume permits. Never noindex paginated pages that contain unique content.
NICE-TO-HAVE — Optimisations for Advanced Gains
- NICE #19 — HTTP/2 or HTTP/3: Modern HTTP protocols enable parallel loading of resources, reducing page load time by 20–30%. Check your server protocol using GT Metrix. Most modern hosting providers (SiteGround, Cloudflare) support HTTP/2 by default.
- NICE #20 — Critical CSS Inlining: Inline the CSS required for above-the-fold content directly in the HTML head (instead of loading an external CSS file), eliminating a render-blocking request for the critical path rendering.
- NICE #21 — Image Lazy Loading: Add loading="lazy" to all images below the fold. This defers image loading until the user scrolls near them, dramatically improving initial page load speed and LCP scores.
- NICE #22 — Preconnect to Third Parties: Add preconnect tags for third-party domains your site loads resources from (Google Fonts, Google Analytics, CDNs). This reduces DNS lookup time and connection establishment overhead.
- NICE #23 — Web App Manifest and PWA: For sites that want to be installable on mobile devices. Not a ranking factor but improves mobile user experience and engagement metrics.
- NICE #24 — AMP (Accelerated Mobile Pages): AMP is no longer required for Google Top Stories inclusion, but AMP pages load nearly instantly on mobile. Consider AMP only if your site architecture and development team can support it without compromising functionality.
- NICE #25 — Font Optimization: Self-host fonts instead of loading from Google Fonts (eliminates an external DNS lookup). Use font-display: swap so text is visible while the custom font loads, preventing invisible text flash (FOIT). Subset fonts to include only the characters your site uses.
- NICE #26 — Security Headers: Add Content Security Policy, X-Content-Type-Options, X-Frame-Options, and Strict-Transport-Security headers. While not direct ranking factors, they protect your site and user data — trust signals that indirectly support SEO.
- NICE #27 — Site Search Console Configuration: If your site has internal search functionality, configure Google to not index search result pages (add "?s=" or similar parameters to the URL parameters settings in GSC, or noindex search result pages). These thin pages dilute your site's overall content quality signals.
- NICE #28 — Orphaned Media Cleanup: Images, PDFs, and media files that are uploaded but not linked from any page still consume server storage and can be accidentally indexed. Audit your media library annually and remove unused assets.
- NICE #29 — Status Code Monitoring: Set up automated monitoring (using tools like Oh Dear, Uptime Robot, or Ahrefs Site Audit scheduled crawls) to alert you immediately when pages start returning 5xx errors, which instantly tank rankings if left unresolved.
- NICE #30 — International Targeting in GSC: If your business serves a specific country, set the geographic target in Google Search Console → Search Traffic → International Targeting. This gives Google a clearer signal about your primary audience, improving local search visibility.
Essential Tools for Your Technical SEO Audit
You don't need expensive tools to audit technical SEO effectively. The essential stack: Google Search Console (free — Coverage, Core Web Vitals, Sitemaps, URL Inspection), PageSpeed Insights (free — CWV and performance diagnostics), Screaming Frog SEO Spider (free up to 500 URLs — complete site crawl), GTmetrix (free — waterfall view for diagnosing slow resources), and Schema Markup Validator (free — verify structured data). These five free tools surface 90% of technical SEO issues. If your site has 1,000+ pages, add Ahrefs Site Audit or SEMrush Site Audit for automated ongoing monitoring.