Technical SEO Audit Service: Scope, Deliverables, Pricing

A technical SEO audit service costs between $500 and $15,000, covers 12 to 20 distinct surfaces, and ends in a prioritized fix list your development team can ship inside 30 to 90 days. That is the entire product. Everything above that price is either scale or implementation support, and everything below it is a tool export somebody else ran for you.

Buyers get this wrong in two directions. Some pay $300 for a crawl, receive 2,000 rows of CSV, and believe they bought an audit. Others spend $12,000 on an enterprise engagement for a 40-page brochure site whose only real problem was a canonical tag pointing at the wrong URL.

The gap between them is not price. It is whether you can name the scope before you pay.

The Short Version
$500 to $1,500 buys an automated crawl review of a small site. $2,000 to $5,000 buys human analysis, log files, and a fix list ranked by impact. $8,000 to $25,000 adds custom crawling, developer workshops, and 90 days of implementation support. Under $500, nobody is reading anything.

What a Technical SEO Audit Service Covers

A technical SEO audit examines everything that can stop a search engine from crawling, rendering, indexing, and ranking your pages. It does not judge whether your articles are any good. It judges whether Googlebot can read them at all.

A thorough pass on a mid-sized site surfaces 20 to 80 issues.

A good one then throws most of them away and tells you which 5 to 10 are worth a sprint.

Anything short of the table below is a partial audit. The last column is what typically ships at the cheapest tier, based on what those packages advertise, not a guarantee from any specific provider. For the wider version that folds in content and off-page work, see our 9-step website audit process.

SurfaceWhat it checksPrimary toolIn a sub-$1,500 audit
Crawlabilityrobots.txt rules, response codes, crawl depth, internal link graphScreaming Frog, Search ConsoleUsually
Indexationindex and noindex directives, canonicals, soft 404s, duplicate clustersScreaming Frog, Search ConsoleUsually
Core Web VitalsLCP, INP, and CLS at the 75th percentile, broken out by templatePageSpeed Insights, CrUXSite average only
Schema markupvalidity, missing recommended properties, types worth addingRich Results TestRarely
XML sitemapscompleteness, honest lastmod dates, no non-indexable URLsScreaming FrogUsually
Robots and meta directivesblocked CSS or JS, staging leaks, conflicts with canonicalsSearch Console, manualUsually
Canonical tagsself-referencing canonicals, pagination, faceted and parameter URLsScreaming FrogSometimes
Hreflanglanguage and region pairs, bidirectional links, x-default fallbackScreaming FrogRarely
JavaScript renderingrendered DOM against raw HTML, server-side versus client-sideURL Inspection, DevToolsRarely
Log file analysiswhat Googlebot actually crawled and where budget is wastedLog File Analyser, BigQueryNo
Speed and resourcesimage formats, font loading, bundle sizes, compression, CDN behaviorWebPageTest, LighthousePartly
HTTPS and securityTLS setup, mixed content, HSTS, www and protocol consolidationSSL Labs, manualUsually
Byte budgetwhether critical HTML lands inside Googlebot’s 2MB fetch ceilingScreaming Frog, curlNo
AI crawler accesswhich training and search crawlers your robots.txt actually allowsrobots.txt, server logsNo
Render statelessnesscontent that only appears after a stored-session or local-storage checkURL InspectionNo
Measurement baselinewhether your before and after window crosses the September 2025 resetSearch ConsoleNo

Read the last column before you read the price. That is where the tiers actually differ, and it is the part a proposal will describe as “comprehensive” rather than list.

A cheap audit is not a small audit. It is a narrow one.

The Surfaces Most Audit Scopes Miss

The checklists in circulation were mostly written before 2024. They remain broadly correct and they are now incomplete in 4 specific places, each of which is checkable in an afternoon.

The 2MB Byte Budget

Google published the number on March 31, 2026. Googlebot fetches up to 2MB per URL, and that ceiling includes the HTTP response headers. PDFs get 64MB. Crawlers that set no limit of their own default to 15MB.

Cross the line and Google does not reject the page. It stops reading at the cutoff and hands the first 2MB to indexing and the Web Rendering Service as though that were the whole file. Bytes after the cutoff are never fetched, never rendered, never indexed.

It behaves like a fuel tank rather than a gate. Nobody turns you away at the 2MB mark. You simply coast to a stop wherever the fuel ends, and whatever was still ahead of you never gets seen.

How a page's inline CSS, base64 images, and navigation markup can push its article content past Googlebot's 2MB fetch limit

Referenced files carry their own separate 2MB counters, so external stylesheets and scripts do not eat the parent page’s budget. Inline ones do. So do base64 images, and so does a mega-menu that ships 300KB of markup before the article starts.

Google’s own guidance is to keep the HTML lean and push the load-bearing elements high in the document: meta tags, the title, link elements, the canonical, and structured data. The renderer is also stateless, clearing local storage and session data between requests, so anything your page reveals only to a returning visitor is invisible to it.

An audit that never measures your heaviest template against this ceiling has not checked whether Google can see your content.

It has checked whether your content exists.

AI Crawler Access

Blocking a company’s training crawler does not block its search crawler. They are separate tokens with separate jobs, and most robots.txt files get this wrong in one direction or the other.

TokenOperatorWhat it doesBlocking it costs you
GPTBotOpenAICollects content for model trainingNothing in ChatGPT search
OAI-SearchBotOpenAISurfaces sites in ChatGPT search resultsVisibility inside ChatGPT search
OAI-AdsBotOpenAIValidates ad landing pagesAd landing page checks
ChatGPT-UserOpenAIFetches a page a user asked aboutUser-requested fetches, though OpenAI notes robots.txt may not apply here
ClaudeBotAnthropicCollects content for model trainingNothing in Claude’s search
Claude-SearchBotAnthropicImproves Claude search result qualityVisibility inside Claude search
Claude-UserAnthropicFetches a page a user asked aboutUser-requested fetches

If the goal is to stay out of training corpora while staying citable in AI answers, that needs both rows handled separately, not one blanket rule. Anthropic also honors Crawl-delay, so rate limiting is available where a full block is too blunt. Our guide to AI crawlers and how to control them covers the full token list and the directives each one respects.

The llms.txt Line Item

If a proposal includes setting up llms.txt, that line is worth nothing and you can say so out loud.

Google’s documentation on AI features in Search is unambiguous: “You don’t need to create new machine readable files, AI text files, or markup to appear in these features.” The same page adds that no special schema.org structured data is required either.

The adoption data agrees. Ahrefs examined 137,210 domains in May 2026. About 28% published a valid llms.txt file, and 97% of those files received zero requests that month. Most of the traffic that did arrive came from SEO auditing tools checking whether the file existed, not from AI systems reading it.

A file that only the tools looking for it ever request is not a ranking factor. It is a mirror.

The longer argument, including what the standard was designed to solve, sits in our breakdown of whether llms.txt does anything.

The Search Console Baseline Reset

Google switched off the &num=100 search parameter in mid-September 2025. Rank trackers had been using it to pull 100 results per request, and every one of those requests logged an impression against each site sitting between positions 11 and 100.

When it stopped, those phantom impressions went with it. Across an analysis of 319 properties, 87.7% lost impressions and 77.6% lost unique ranking terms. Clicks barely moved, because bots never clicked. Average position appeared to improve on many sites purely because the low-ranking noise had left the dataset.

Nothing about those sites changed. The instrument did.

That matters for one reason: if an audit compares a window from early 2025 against a window from this year, part of the difference is the reporting change rather than the fix. Ask which dates the comparison uses before you accept the result. Our Search Console audit workflow walks through the reports that survived the change and the ones that need a fresh baseline.

Technical SEO Audit Pricing

Prices cluster into 4 bands. The useful way to read them is by what each one excludes, because the inclusions all sound identical in a proposal.

TierPriceSite sizeWhat you getWhat you should not expect
Quick audit$500 to $1,500Under 500 URLsAutomated crawl review across 8 to 10 surfaces, a PDF report, a basic fix listLog file analysis, rendering tests, or anyone answering questions afterward
Mid-tier audit$2,000 to $5,000500 to 10,000 URLsAll 12 classic surfaces, partial log analysis, a fix list ranked by a human, around 30 days of questionsA team that ships the fixes for you
Enterprise audit$8,000 to $25,00010,000+ URLs, multilingual, or ecommerceFull log analysis, custom crawling, a phased roadmap, developer workshops, 90-day supportSpeed. 4 to 8 weeks is the normal delivery window
Specialized audit$10,000 to $50,000+Migrations, replatforming, hreflang rebuildsA scope built for one project and one riskAnything reusable. The deliverable expires with the project
Technical SEO audit pricing tiers compared by audit surfaces covered and days of implementation support included

The jump that matters is not the price. It is the vertical gap in support days between the second and third tier, because that is the part that decides whether the fixes ever ship.

You are buying weeks of somebody’s attention, not a document.

Those bands are not arbitrary. Ahrefs surveyed 439 SEO service providers and published what they charge.

Pricing modelAgenciesConsultantsFreelancers
Monthly retainer$3,209$3,250$1,348
Hourly rate$98.90$171.18$71.59
Average per project$9,507$8,685$2,348

Across every respondent, the average retainer came to $2,917, the average hourly rate to $111, and the most common per-project fee landed between $2,501 and $5,000. Which reframes the mid tier completely: a $5,000 audit is not a premium purchase. It is the middle of the market, and roughly half of what an agency charges for an average project.

For a working reference point, our own technical SEO engagements run $2,000 for an audit sprint with a 30-day action plan, $3,800 for the audit plus implementation support and validation across 6 to 8 weeks, and $5,500 per quarter for ongoing technical leadership. Price moves with site size, stack complexity, and how many page templates are in play. If you are comparing that against broader retainer work, our notes on SEO service pricing and scope cover the rest of the ladder.

What a Technical SEO Audit Report Contains

A deliverable worth paying for arrives as 3 artifacts, and the second one is where the money is.

  • The findings report. Usually 30 to 80 pages explaining each issue: what it is, where it happens, why it matters, how severe it is, and the evidence behind that judgment.
  • The prioritized fix list. Typically 10 to 30 items ranked by impact against effort, each with a description, acceptance criteria, an effort estimate, and the expected result.
  • Implementation support. 30 to 90 days of answering developer questions, reviewing pull requests, and retesting after deploys. This is the line that separates a $2,000 audit from a $10,000 one.

A fix list item should be specific enough to become a ticket without translation. Something like this:

Add self-referencing canonical tags to every URL on the /product/ template.

Acceptance criteria: all URLs matching /product/* return a canonical pointing to themselves, confirmed on 20 sampled URLs through URL Inspection.

Effort: 2 developer hours. Expected result: consolidates duplicate signals across 340 URLs.

If your fix list does not read like that, your developers will spend their first sprint turning it into tickets. You are paying for that sprint either way, so it is cheaper to buy the tickets.

SEO Audit Statement of Work Template (PDF and Word)

Scope disputes on audits almost always come from the same gap: the client expected fixes and bought findings. This statement of work draws that line before the work starts.

  • A tick-box list of every check included, grouped by crawl, performance, on-page, and off-site
  • Deliverable definitions with formats, plus how findings get prioritised
  • An explicit out-of-scope list, including implementation of quick fixes
  • Access requirements, timeline, fee bands by site size, and the three implementation paths

Free to use for your own client work, whether you run audits or are buying one.

Tools a Technical SEO Auditor Uses

No single tool covers the full surface list. A serious audit combines 4 or 5, and the totals below are worth knowing before you evaluate a quote.

ToolWhat it is forPriceWhere it stops
Screaming Frog SEO SpiderDesktop crawling, the industry default£199 per yearThe free tier stops at 500 URLs
Screaming Frog Log File AnalyserWhat Googlebot actually crawled£99 per yearFree tier caps at 1,000 log lines and 1 project
Sitebulb LiteVisual crawl audits for small sites$18 per month10,000 URLs per audit
Sitebulb ProFull audits with comparisons and scheduling$42 per month, plus $11 per extra user500,000 URLs per audit
Sitebulb CloudTeam crawling without desktop limitsFrom $125 per monthPlan-dependent crawl volume
Google Search ConsoleReal index coverage and query dataFreeOnly properties you can verify
PageSpeed Insights and CrUXField and lab Core Web VitalsFreeField data needs enough real traffic
AhrefsHistorical trend context and issue cross-checksFrom $29 per month, $129 for the Lite planThird-party estimates, not your own data

Add it up. Both Screaming Frog licences come to £298 a year, Sitebulb Pro adds about $504, and Search Console, PageSpeed Insights, CrUX, and the Rich Results Test cost nothing at all. The full paid stack lands under $1,000 a year.

So a $5,000 audit is not buying software. It is buying the 20 to 40 hours of analyst time that turn 4 tool outputs into 1 ordered list, which is also why the cheap tier has to be automated.

Nobody can sell you 30 hours for $300.

If you want to run the free layer yourself first, our roundup of SEO tools worth paying for separates the ones that earn a licence from the ones that duplicate Search Console.

How Long a Technical SEO Audit Takes

Delivery time tracks analyst hours, not calendar promises.

  • Quick audit, small site: 4 to 8 hours of analyst time, delivered in 3 to 7 business days
  • Mid-tier audit: 16 to 40 hours, delivered in 10 to 20 business days
  • Enterprise audit: 60 to 200 hours, delivered in 4 to 8 weeks
  • Log file analysis alone: 15 to 30 hours of that total on a high-traffic site

Anyone promising a complete technical audit in 24 hours is selling a template with your domain pasted into it.

The findings that pay for the engagement almost never come from the first tool pass. They come from the third or fourth cross-reference, when the crawl data disagrees with the log data, or the rendered DOM disagrees with the raw HTML, and somebody has to work out which one is lying.

Red Flags in Cheap Audits

Not every inexpensive audit is bad. Most are, and they share a recognizable set of tells.

  • The scope names no surfaces. A proposal that says “comprehensive technical review” without listing what it covers is hiding what it skips.
  • The deliverable is a CSV export. Crawlers produce useful data. They do not produce an audit. 2,000 unranked rows is homework, not analysis.
  • No access to Search Console or analytics is requested. Without your actual performance data, they are auditing a stranger’s view of your public URLs.
  • Log file analysis is missing entirely. On any site with real scale, skipping logs means guessing at Googlebot’s behavior instead of reading it.
  • Nothing is prioritized. 80 issues without a ranking is unusable. A real audit says fix these 8 first, these 15 next, and ignore the other 40.
  • Schema validation is absent. Structured data carries weight in rich results and in how answer engines parse a page. An audit that skips it is working from an old checklist.
  • llms.txt appears as a deliverable. It is billable work that does nothing, which tells you how current the rest of the methodology is.
  • The report reads like a template. Ask for a 10-minute call before you buy. Someone who crawled your site can talk about your site. A template seller can only talk about audits.

What Happens After the Audit

Buying the audit is the easy half.

Shipping the fixes is where the return is won or quietly lost.

The failure pattern barely varies. The report lands with 30 items, the development team says they will get to it next sprint, and 6 months later 3 items are done. Nothing was wrong with the report. It just never became code.

On a recent service-led WordPress site, 71 indexed URLs were cannibalizing 12 priority service pages. Pruning them, cleaning up the canonicals, and restructuring internal links lifted qualified traffic to those service pages by 43% in 9 weeks.

Finding that problem took a day.

The 43% came from somebody actually deleting the 71 URLs.

So the structural fix is to buy the implementation with the diagnosis. Either the provider has a team that can ship the changes, or they commit to a defined window of pair work with yours: pull request reviews, a shared channel, weekly check-ins, and retesting after each deploy.

When an Audit Is Worth It

The decision comes down to scale, risk, and whether you can act on the findings.

A technical audit earns its price when:

  • The site has 500 or more URLs and organic traffic worth protecting
  • Rankings moved and no algorithm update explains it
  • You are migrating, replatforming, or consolidating domains
  • You suspect indexation, rendering, or Core Web Vitals problems but cannot isolate them
  • You need a technical case to win development priority internally
  • Your stack is JavaScript-heavy, headless, or spread across multiple domains

It is usually the wrong purchase when:

  • The site is under 100 URLs and mostly static
  • Your real constraint is content quality or link authority
  • No development capacity exists to act on the findings this quarter
  • You were audited inside the last 12 months with no platform changes since

Audit fatigue is real. Two full audits in 12 months on an unchanged site is one audit and one invoice. For a lighter cadence between engagements, our monthly SEO checklist covers what to watch without commissioning anything.

The Limits

An audit cannot tell you whether your content deserves to rank. It measures reachability and comprehension, which is a different question, so a page that is flawlessly crawlable and genuinely unhelpful stays exactly where it is. You still need someone to judge the writing.

It cannot close an authority gap. If 3 competitors hold a decade of links and you hold 8 months, clean canonicals will not bridge that, and the fix is a link and content programme measured in quarters rather than sprints.

It cannot survive your next release. An audit is a photograph of one day, so shipping a new template 6 weeks later expires a good share of the findings. That is why the validation window matters more than the page count of the report.

And it cannot manufacture development capacity. This is the constraint that actually decides the return, and it is the one buyers skip while comparing quotes, so book the sprint before you book the audit.

What Quietly Ruins an Audit

None of these look like mistakes while they are happening.

Commissioning the audit before booking the development time. The report arrives, the sprint is already full, and by the time capacity opens up the findings are 2 releases out of date.

Handing the fix list to a developer with no acceptance criteria. They will build what they think you meant, and you will find out at the next audit, which you will also pay for.

Measuring the result in total organic traffic. Technical fixes usually move one template or section first, so a sitewide number can hide a 40% lift on the 12 pages that actually close deals.

Treating the auditor’s severity ranking as your priority order. Their ranking is technical and yours should be revenue-weighted. Only you know which pages carry the pipeline.

Fixing the easy items first because they are easy. Redirect chains and alt text clear the list quickly and change nothing, while the render-blocking template that costs you the category page sits at item 14.

Letting the engagement end at the report. A diagnosis without treatment is an expensive way to learn what is wrong with you.

Final Remarks

A technical SEO audit is the highest-leverage thing most businesses can buy from an SEO provider, and it is also the easiest to waste. The audit that gets implemented can pay for itself on a single template fix. The one that sits in a shared drive returns nothing at all.

Not a small return. Zero.

Which means the question worth asking is not who finds the most issues. Anyone with a crawler finds issues. Ask which surfaces they cover, ask whether their scope has been updated since 2024, and ask who will be answering your developer’s questions in week 7.

If a provider cannot answer all 3, you are not buying an audit.

You are buying a document.

FAQs on Technical SEO Audits

How much does a technical SEO audit service cost?

Quick audits run $500 to $1,500 for sites under 500 URLs. Mid-tier audits cost $2,000 to $5,000 for sites between 500 and 10,000 URLs. Enterprise audits for multilingual or ecommerce sites above 10,000 URLs run $8,000 to $25,000. Specialized work such as migrations or hreflang rebuilds can exceed $50,000. For context, Ahrefs surveyed 439 providers and found the most common per-project fee sits between $2,501 and $5,000.

What does a technical SEO audit include?

A current audit covers 16 surfaces: crawlability, indexation, Core Web Vitals, schema markup, XML sitemaps, robots and meta directives, canonical tags, hreflang, JavaScript rendering, log file analysis, page speed and resources, HTTPS and security, Googlebot’s 2MB byte budget, AI crawler access, render statelessness, and your measurement baseline. Deliverables should include a findings report, a fix list ranked by impact, and 30 to 90 days of implementation support.

How long does a technical SEO audit take?

Quick audits take 4 to 8 hours of analyst time and arrive in 3 to 7 business days. Mid-tier audits take 16 to 40 hours across 10 to 20 business days. Enterprise audits take 60 to 200 hours across 4 to 8 weeks, with log file analysis alone consuming 15 to 30 of those hours on a high-traffic site.

What separates a cheap audit from an expensive one?

Cheap audits export a crawl and call it a report. Expensive audits add log file analysis, rendering tests, schema validation, and a fix list a human ranked against your revenue pages. The largest single difference is implementation support: the cheap tier delivers a PDF, while the higher tiers stay on for 30 to 90 days of developer collaboration.

Do I need log file analysis in my audit?

Yes, if your site exceeds roughly 1,000 URLs or carries meaningful traffic. Log files show what Googlebot actually crawled rather than what you assume it crawled. They expose wasted crawl budget, ignored sitemap URLs, and template-level indexation problems that crawl tools cannot detect on their own.

What tools do technical SEO auditors use?

Screaming Frog SEO Spider at £199 per year is the default crawler, with its Log File Analyser at £99 per year. Sitebulb runs $18 per month for Lite and $42 for Pro. Search Console, PageSpeed Insights, CrUX, and the Rich Results Test are free. The full paid stack costs under $1,000 a year, which is why audit pricing reflects analyst hours rather than software.

How often should I get a technical SEO audit?

Every 12 to 18 months for most sites, or immediately after a migration, replatform, or redesign. High-growth and enterprise sites benefit from lighter quarterly checks. Running two full audits inside 12 months on an unchanged site rarely surfaces anything new.

Does my site need an llms.txt file?

No. Google’s documentation on AI features states that you don’t need to create new machine readable files, AI text files, or markup to appear in AI Overviews or AI Mode. An Ahrefs study of 137,210 domains in May 2026 found that 97% of published llms.txt files received zero requests that month, and most of the traffic they did get came from SEO tools checking whether the file existed.

Should I block AI crawlers in robots.txt?

Only with the specific token in mind. Training crawlers and search crawlers are separate: blocking GPTBot or ClaudeBot stops training collection but leaves OAI-SearchBot and Claude-SearchBot free to index you, and blocking the search tokens removes you from those assistants’ results. Decide the two questions separately rather than applying one blanket rule.

Why did my Search Console impressions drop in September 2025?

Google disabled the &num=100 search parameter in mid-September 2025, which removed the phantom impressions that rank-tracking bots had been generating for positions 11 to 100. An analysis of 319 properties found 87.7% lost impressions and 77.6% lost unique ranking terms, while clicks stayed flat. Your performance did not change, only its measurement, so any audit comparing a window before that date against one after it is partly measuring the reporting change.

Tell Google you want more of this.

Add Gatilab as a preferred source

One tap, and this site shows up more often in your own Top Stories, AI Overviews and AI Mode. Remove it any time.