Googlebot 2MB HTML Size Checker
Googlebot only reads the first 2MB of a page's HTML — anything beyond that is silently ignored, including content and structured data. This tool measures your page's HTML size, shows how much of the 2MB budget you're using, and breaks down exactly what's taking up space.
We fetch the raw HTML as Googlebot and measure its byte size. Nothing is stored.
Crawl budget is one of four signals we score. The full audit also checks AI model recall, crawler access and structured data, then returns a single graded report.
Run the full auditCrawl budget reference
Googlebot reads the first 2MB of an HTML response and discards the rest. Anything past the cut-off — including content, links and structured data — is never indexed. Most AI crawlers apply similar or tighter ceilings, and few of them execute JavaScript at all.
Documented byte limits
| Crawler | HTML limit | Executes JS |
|---|---|---|
| Googlebot | 2MB (documented) | Yes, deferred |
| Bingbot | ~2MB | Partial |
| GPTBot | Undocumented, conservative | No |
| ClaudeBot | Undocumented, conservative | No |
| PerplexityBot | Undocumented | No |
What we measure
We request the page with Googlebot's user-agent, follow redirects, and measure the uncompressed byte length of the HTML body. That total is then split into six buckets so you can see what is actually consuming the budget:
- Markup — tags, attributes and visible text. This is the part you want crawlers to reach.
- Inline CSS — everything inside
<style>blocks. Above-the-fold critical CSS is legitimate; a full framework inlined is not. - Inline JS —
<script>contents. Hydration payloads and state blobs (__NEXT_DATA__, Nuxt payloads) commonly dominate here. - JSON-LD — structured data. Counts against the budget but earns its keep.
- Inline SVG — icon sprites pasted into the document instead of referenced as files.
- Comments — build artefacts and commented-out blocks that ship to production.
How the score is calculated
Under 50% of the 2MB budget scores 100. Past that the score decays two points per percentage point, so 75% usage scores 50 and anything over the limit scores 0. The rationale: half a budget is comfortable headroom for a page that will grow, while 90% usage means one CMS change breaks indexing.
Reducing weight
- Move inline scripts and styles to external files. Crawlers fetch those separately and they no longer count against the HTML budget.
- Strip server-rendered state payloads for content that does not need hydration.
- Reference SVG sprites via
<use>instead of pasting full path data per icon. - Paginate very long listings. A 5,000-row table is a crawl-budget problem before it is a UX problem.
- Remove build comments in your production pipeline.
A lean page that blocks GPTBot is still invisible. Check weight, crawler access, markup and model recall together.
Check all four signals at once