Guides
Render Modes
When to use none, basic, or full rendering
renderMode controls how Thunderbit fetches the page before processing. It's the lever between latency, cost, and the ability to handle dynamic content.
none (default)
Plain HTTP fetch. No browser, no JavaScript execution.
- Use for: server-rendered pages, RSS, JSON endpoints, classic blogs
- Latency: lowest
- Limit: returns empty / shell HTML on SPAs and JS-hydrated content
basic
Headless browser with JS execution, but no full hydration wait.
- Use for: pages that need JS to render but settle quickly
- Latency: ~1–2×
none - Limit: late-arriving content (lazy-loaded, async fetch) may be missed
full
Headless browser with full hydration + configurable waitFor.
- Use for: SPAs, infinite scroll, content that hydrates from APIs
- Latency: highest
- Tip: pair with
waitFor(ms) only when you need it — extra wait costs you latency on every request
How to pick
- Start with
none. If you get empty content (SCRAPE_EMPTY_CONTENT), upgrade. - Try
basicnext. - Fall back to
fullfor known SPAs.
Don't default to full "just in case" — you'll pay 5–10× the latency for no gain on most pages.
This page is being expanded with per-mode benchmarks — check back soon.