Best Rendering Tools for SEO Audits: Rendered vs Raw HTML Crawlers Compared
By Seth Black · Published
The best rendering tool for an SEO audit is one that can crawl your site twice, once as raw HTML and once rendered in a headless browser, and show you the difference, because the difference is what a non-rendering crawler misses. Screaming Frog, Sitebulb, Semrush (Guru and up), Ahrefs, SE Ranking, Lumar, Oncrawl and bseoa all render JavaScript; they differ in what rendering costs you, which plans include it, and whether they compare raw and rendered output for you. Google’s URL Inspection live test is the free check for a single page.
Vendor facts below were checked on 31 October 2026 on the pages linked, except where noted.
Why does rendered vs raw HTML matter for an audit?
Google processes JavaScript pages in three phases, crawling, rendering and indexing, and its JavaScript SEO basics guide says pages “may stay on this queue for a few seconds, but it can take longer than that” before a headless Chromium renders them. The same guide says “server-side or pre-rendering is still a great idea” because “not all bots can run JavaScript.”
That second point is the one most audits skip. Googlebot renders. Most AI crawlers and many other bots take the HTML your server sent and stop there. A page whose links, headings or body text are injected by JavaScript can look fine in a rendered crawl and nearly empty to everything else. Can AI crawlers see JavaScript content? goes into which bots render and which don’t.
So an audit of a JavaScript site needs both views:
- Raw HTML crawl: what the server sends. Fast. Shows what non-rendering bots see.
- Rendered crawl: what a browser builds. Slow. Shows what Google eventually sees and what users see.
- The gap between them: content, links and structured data that only exist after JavaScript runs.
Which SEO tools render JavaScript, and what does it cost?
| Tool | Runs | Renders JavaScript | What rendering costs | Source |
|---|---|---|---|---|
| Screaming Frog SEO Spider | Desktop | Yes, paid license | Included in $279/year license | user guide, pricing |
| Sitebulb | Desktop or cloud | Yes, all plans | “No extra cost for JavaScript crawling” | pricing |
| Semrush Site Audit | Cloud | Guru and Business toolkits only | Higher plan | KB: configuring Site Audit |
| Ahrefs Site Audit | Cloud | Yes, “Execute JavaScript” toggle | Credits are per 200 OK HTML page; no extra rendering charge documented | settings help, credits help |
| SE Ranking Website Audit | Cloud | Yes, in the audit wizard or Parser Settings | Not documented; crawls take longer | SE Ranking blog |
| Lumar | Cloud | Yes, “Enable JavaScript rendering” | Quote only | product guide |
| Oncrawl | Cloud | Yes | 3 crawl tokens per URL instead of 1 | help center |
| bseoa | Desktop and CLI | Yes, headless Chrome with --spa |
Included; no page limit | features |
| Google URL Inspection | Web (Search Console) | Live test shows a screenshot, HTML and console output | Free, one URL at a time, daily limits | Google help |
All checked on 31 October 2026. Sitebulb’s pricing page didn’t show plan prices when I fetched it; its rendering terms and URL limits (Lite 10,000 URLs per audit, Pro 500,000) are from that day. Lumar’s rendering guide dates from 2020, and the current interface may differ.
What should a rendering crawler tell you?
Turning rendering on is the easy part. The useful question is what the tool does with two versions of each page.
- Semrush has a JS Impact report that its help center describes as showing your site before and after JavaScript renders, including what content changed.
- Lumar calculates rendering issue metrics only when rendering is on, per its product guide.
- Oncrawl suggests running the crawl with and without JavaScript and comparing the two yourself.
- bseoa, in
--spamode, keeps the server’s HTML and the rendered DOM for each page and reports the gap: text, headings, links or structured data that only exist after JavaScript runs. Those are published as warnings such as Your Links Are Added by JavaScript and Most of Your Page Text Only Exists After JavaScript Runs. Without--spa, it still flags pages that look like an empty app shell from the raw HTML alone.
A tool that only shows you the rendered result tells you what Google eventually sees. A tool that shows the difference tells you what to fix.
How do you run a rendering audit without wasting crawl budget?
- Crawl raw first. It’s fast and cheap on every tool. Note the page count and internal link count.
- Render a sample. Pick one template of each type (home, category, product, article) and test it with Google’s URL Inspection live test. If the screenshot and HTML match what users see, rendering works for Google.
- Render the full site if the sample differs. On Oncrawl that triples the token cost; on Semrush it needs the higher plan. Budget for it before you start.
- Compare counts. If the rendered crawl finds many more pages or links than the raw one, your navigation depends on JavaScript. That’s the finding.
With bseoa the rendered crawl is one flag:
black-seo-analyzer \
--url-to-begin-crawl https://example.com \
--spa \
--output-type json \
--output-file rendered.json
Which rendering tool should you use?
| Situation | Good fit |
|---|---|
| One page, free, as Google sees it | URL Inspection live test |
| Already on Semrush Guru or higher | Semrush, with the JS Impact report |
| Already on Ahrefs | Ahrefs with Execute JavaScript on |
| Large site, log data alongside rendering | Oncrawl or Lumar |
| Desktop crawler, rendering included, annual license | Screaming Frog or Sitebulb |
| Desktop or CLI crawler, rendering included, one-time price, raw vs rendered gap reported | bseoa |
bseoa is the one I build: a desktop GUI and CLI for Windows, macOS and Linux, $279 once, with a 14-day trial that has every feature and no page limit. Its hosted connector for Claude and ChatGPT doesn’t render JavaScript, so run rendered crawls from the desktop app or the CLI.
Further reading
Why your JavaScript crawl is broken, and how to fix it covers the configuration mistakes behind most bad rendered crawls. Prices for every crawler mentioned are on SEO crawler pricing and SEO tool pricing, and rendering is one of the rows on each comparison page, for example bseoa vs Screaming Frog, bseoa vs Semrush and bseoa vs Oncrawl.
-Sethers