
A technical SEO audit identifies the infrastructure issues preventing your website from ranking. You can have the best content on the internet, but if search engines cannot crawl, index, and understand your pages, that content will not appear in results.
This guide covers what a technical SEO audit includes, what it costs, and how to evaluate whether you need one.
What Is a Technical SEO Audit?
A technical SEO audit examines the behind-the-scenes infrastructure of your website: how search engines crawl it, how they index it, and what signals they receive from the code. Unlike a content audit (which evaluates what is on the page) or a backlink audit (which evaluates who links to you), a technical audit focuses on the foundation.
Common issues a technical audit uncovers include slow page speed, broken canonical tags, duplicate content caused by URL parameters, pages blocked by robots.txt, missing structured data, and crawl errors that prevent indexing.
These issues are often invisible. Your site may look fine in a browser but send conflicting signals to search engines. A technical audit surfaces and prioritizes these issues so they can be fixed in order of impact.
What We Found Auditing Our Own Site
Checklists are easy to copy, so here is something they leave out: what an audit actually turns up. Between September and October 2026 we ran the audit described below on spaceagency.online. It is a prerendered React site with about 94 URLs in its sitemap. Five findings mattered, and no standard crawler flagged any of them.
- 13 of 94 sitemap URLs were not indexed. We ran the URL Inspection API against every URL in the sitemap on 22 September 2026. Thirteen pages were "Discovered – currently not indexed" or unknown to Google. A crawler reported all 94 as healthy, because from a crawler's point of view they were.
- Internal links did not fix it. Two service pages each had about 95 internal links from the sitewide navigation and footer, and Google had still never crawled them. These pages were not orphans. Google was rationing how much of the domain it crawled. Both were crawled within a week of a manual indexing request in October.
- One indexing request bought more than one page. We requested indexing for two URLs on 20 September. Google crawled seven pages that day, five of which nobody had requested.
- Six articles existed in the source but not on the site. A content-model change left about 37,000 characters of articles in a field the build never read. The articles looked complete in the CMS data, but they were missing from the sitemap and never prerendered. Our content validator passed them anyway, because it read the same unused field.
- Analytics had been running cookieless for months. The consent banner sent its "granted" update as an array instead of the arguments object Google's tag expects. GA4 kept receiving consent-denied pings after visitors clicked Accept. The only way to see this was the
gcsparameter on the collect request in the browser's network tab.
The pattern is the point. Each finding came from comparing two sources of truth: the sitemap against the index, the source data against the rendered pages, the consent click against the network request. A crawl on its own cannot make those comparisons. We wrote up the search-data side of this work in our SEO visibility ceiling case study.
Technical SEO Audit Checklist: 44 Checks
A comprehensive technical audit covers every layer of your site’s search infrastructure:
Crawlability and Indexation
- robots.txt configuration and crawl budget usage
- URL Inspection status for every sitemap URL: indexed, discovered, or unknown
- Last crawl date for each revenue page
- Sitemap-to-route parity: content in the source that never reaches the sitemap or the rendered HTML
- XML sitemap coverage and accuracy
- Index coverage in Google Search Console
- Nofollow and noindex tag audit
- Orphaned pages (pages with no internal links)
- Crawl depth (pages buried too deep in site architecture)
- Redirect chains and loops
- Soft 404 errors
Core Web Vitals
- Largest Contentful Paint (LCP) — loading performance
- Interaction to Next Paint (INP) — interactivity responsiveness
- Cumulative Layout Shift (CLS) — visual stability
- Image optimization (formats, lazy loading, dimensions)
- Third-party script impact
- Server response time
- Render-blocking resources
- Hydration mismatches on prerendered or server-rendered pages, which silently fall back to client rendering
Structured Data and Schema
- Schema markup validation
- Missing schema opportunities (FAQ, HowTo, Product, etc.)
- Rich result eligibility
- Schema conflicts (multiple schemas with contradictory information)
Canonicalization
- Canonical tag accuracy (self-referencing, cross-domain)
- Duplicate content from URL parameters
- HTTP vs. HTTPS consistency
- Trailing slash consistency
- Case sensitivity in URLs
- Protocol and subdomain consolidation
Site Architecture
- Internal linking structure and link equity flow
- Navigation hierarchy and depth
- Breadcrumb implementation
- HTTPS and mixed content issues
- Mobile usability and viewport configuration
- Hreflang implementation (for multilingual sites)
Page-Level Signals
- Title tag uniqueness and optimization
- Meta description coverage
- Heading hierarchy (H1, H2, H3 structure)
- Image alt text coverage
- Internal anchor text
- Content cannibalization (multiple pages targeting the same keyword)
Measurement Integrity
- Consent Mode update verified on the live collect request, not in the code
- Search Console clicks reconciled against analytics sessions
- Sitemap
lastmodstable across builds, so dates change only when content does
How to Tell a Real Diagnosis From an Automated Crawl Report
Many audits are a crawler export with a logo on the cover: hundreds of "issues" sorted by count, many of them harmless. Here is how to tell a diagnosis from a crawl export:
- It uses your Search Console data. A crawler shows what is on your site. Search Console shows what Google did with it. Most of the important findings come from the gap between the two.
- Every issue names a cause and an affected URL set. "LCP is slow" is a symptom. "The hero image on the service template is lazy-loaded, delaying LCP on 22 pages" is a diagnosis.
- It says what not to fix. Missing alt text on decorative images or a redirect on a page with no traffic can wait. A good audit says so, so your developers spend their time where it counts.
- It shows how each finding was verified, such as the API call, the network request, or the before-and-after build, so your team can check the fix the same way.
- It is honest about what technical work cannot do. If your competitors have hundreds of referring domains and you have twenty, no technical fix closes that gap. An audit that promises rankings is selling something else.
Technical SEO Audit Pricing
Typical agency pricing for a technical SEO audit scales with site size and complexity:
- $2,000-$4,000 — Small site (under 100 pages). Focused audit covering crawlability, Core Web Vitals, and critical issues.
- $4,000-$8,000 — Mid-size site (100-1,000 pages). Comprehensive audit with structured data review, content cannibalization analysis, and prioritized fix roadmap.
- $8,000-$15,000+ — Enterprise site (1,000+ pages). Full technical audit with log file analysis, international SEO review, and platform-specific testing.
The audit is only valuable if it leads to action. Every audit we deliver includes a prioritized fix list organized by impact and effort, so your development team knows exactly what to address first.
Our fixed-price audit: $1,500
Most service-business sites sit well under 250 pages, so we price that audit as a fixed scope instead of a range: $1,500 for sites up to 250 indexable URLs, delivered in 10 business days. It includes:
- An independent crawl compared against your Search Console data, to find where Google's view of the site disagrees with yours
- Indexation and crawl-budget analysis, including pages Google has discovered but never crawled
- Core Web Vitals diagnosis traced to the specific scripts, images, or templates responsible
- Canonical, redirect, sitemap, robots.txt, and structured data checks
- A fix list ranked by traffic impact, plus a walkthrough call with your team
Fixes are quoted separately, after the audit, so you only pay for work the diagnosis justifies. See the full scope on our fixed-price technical SEO audit page, or book the $1,500 audit directly.
DIY vs. Agency Audit
Free tools like Google Search Console, PageSpeed Insights, and Screaming Frog can surface basic issues. But they require expertise to interpret. A missing canonical tag means nothing if you do not know how it affects your specific URL structure. A Core Web Vitals warning does not tell you which third-party script is responsible.
An agency audit provides context, prioritization, and a fix plan. The value is not in identifying the problems — it is in knowing which problems matter, which fix will have the most impact, and how to implement the fix without creating new problems.


