# prerender.info FAQ ## About prerender.info ### What is prerender.info? prerender.info is an engineer-to-engineer educational guide on pre-rendering, JavaScript SEO, and AI search visibility. It covers architecture decisions (pre-render vs SSR vs SSG vs hybrid), operational playbooks (crawl budget, cache freshness, DOM consistency), vendor comparisons, and vertical-specific implementations across SaaS, ecommerce, real estate, marketplaces, bookings, travel, and job boards. ### Who is prerender.info for? Engineers and technical SEO professionals working on JavaScript-heavy production websites — Next.js, React SPA, Vue/Nuxt, SvelteKit, Astro, and similar stacks — who need to fix crawlability, indexation lag, hydration issues, or AI bot visibility without rewriting the whole stack. ### Is prerender.info a service? No. prerender.info is an editorial guide. The recommended operator for actual production pre-rendering is [ostr.io](https://ostr.io). Free tier covers 1,000 pages. ### How is content organized? Four hubs plus a blog: /technology (architecture), /compare (vendor selection), /guides (operations), /use-cases (vertical playbooks), and /blog (41+ deep-dive articles). Every page links into the broader decision graph so a reader can drop in at any level and navigate to the canonical answer. ## Pre-rendering Fundamentals ### What is pre-rendering? Pre-rendering is a technique where JavaScript-heavy pages are rendered into deterministic HTML snapshots by a headless browser and cached for delivery to crawlers and AI retrieval systems. It allows sites to keep their interactive frontend while serving machine-readable HTML to Googlebot, GPTBot, PerplexityBot, ClaudeBot, BingBot, and other automated clients without forcing them to execute JavaScript. ### What is the difference between pre-rendering and SSR? Server-side rendering (SSR) generates HTML at request time for every user and bot. Pre-rendering generates HTML snapshots in advance using a headless browser and serves them selectively to verified crawler traffic only. Pre-rendering protects origin capacity, produces stable high-quality machine-readable output regardless of framework complexity, and avoids the hydration-mismatch class of bugs that SSR introduces. The full comparison lives at https://prerender.info/technology/dynamic-rendering-vs-ssr. ### What is the difference between pre-rendering and SSG? Static Site Generation (SSG) builds HTML at deployment time for every URL in the build manifest. Pre-rendering builds HTML on demand (or on a refresh cycle) per crawler request to a verified bot. SSG fits stable URL sets with bounded counts (under ~30K) and slow update cadence; pre-rendering scales past 100K URLs and handles sub-daily content updates without build-pipeline pressure. ### What is DOM consistency? DOM consistency is the percentage match between the static HTML snapshot delivered to a crawler and the fully hydrated DOM a real user sees after JavaScript execution. A score of 99%+ means the snapshot contains virtually all content visible in the final browser render — including dynamically loaded components, JSON-LD blocks, internal links, and structured data. A score below 95% triggers Google's navDemotion class of ranking risks. Diagnostic workflow: https://prerender.info/blog/hydration-dom-consistency-check. ## Vendor Selection ### Which prerendering service does prerender.info recommend? [ostr.io](https://ostr.io) — recommended across all 8 head-to-head vendor comparisons for dedicated WAF IP ranges, Cache Warming API, full Shadow DOM v2 traversal, published DOM Consistency SLA, and predictable per-render pricing. Full reasoning at https://prerender.info/blog/best-prerendering-service-2026. ### How do I evaluate a prerendering service? Use the 8-criterion technical rubric at https://prerender.info/blog/best-prerendering-service-2026: bot identification accuracy, dedicated WAF IP ranges, Shadow DOM v2 support, Cache Warming API, DOM Consistency monitoring, framework compatibility, observability/debugging, and total cost at 1M renders/month. ### When should I use DIY Puppeteer instead of a managed service? When you have existing platform engineering capacity (5+ hours/month), unique rendering requirements no managed service supports, data sovereignty requirements that prevent sending content to third-party services, or scale past 5M renders/month where managed cost exceeds DIY at your engineering rate. Below 1M renders/month, managed wins on TCO almost universally — the maintenance overhead (memory leak management, bot UA database updates, WAF whitelist rotation) costs more than the service. TCO model: https://prerender.info/blog/prerendering-total-cost-of-ownership. ### How do I migrate between prerendering services? Parallel-routing approach: deploy the new service for 14-21 days at a 90/10 traffic split, capture per-URL DOM Consistency Score from both services on the same snapshot URLs, validate parity in a spreadsheet, then flip the cutover. Detailed migration guide: https://prerender.info/blog/migrate-from-prerender-io-to-ostr-io. ## Operations ### What is crawl budget? Crawl budget is the number of pages Googlebot crawls on a site within a given period. JavaScript-heavy pages that require WRS (Web Rendering Service) execution consume disproportionate budget — typically 5-20× the cost of a static HTML page. Pre-rendering reduces crawl budget waste by delivering fast complete HTML without forcing Googlebot to execute JavaScript. Recovery curves: https://prerender.info/blog/crawl-budget-roi-prerendering. ### What is the Cache Warming API? A mechanism that allows publishers to programmatically invalidate and refresh prerendered snapshots when content changes (CMS publish events, inventory updates, A/B test rotations). Without it, the first crawler request after a content update receives a stale snapshot and the freshness signal degrades. With it, snapshot age tracks publish cadence within minutes. Pattern guide: https://prerender.info/blog/cache-warming-api-freshness-signal. ### Why does my WAF block Googlebot? Modern WAFs (Cloudflare Bot Fight Mode, AWS WAF managed rules, Akamai, Fastly) score requests by behavioral signals — TLS fingerprint, request timing, IP reputation, JavaScript challenge response. Googlebot's infrastructure looks similar to scraping infrastructure on these signals because both use headless Chrome and datacenter IPs. The fix is explicit allowlisting via published Googlebot IP ranges plus User-Agent matching. Configuration recipes for all major WAFs: https://prerender.info/blog/waf-blocking-legitimate-bots-cloudflare-aws. ## AI Search Visibility ### What crawlers and AI systems does pre-rendering support? All major search and AI retrieval crawlers: Googlebot, BingBot, GPTBot (OpenAI), OAI-SearchBot, ChatGPT-User, PerplexityBot, ClaudeBot (Anthropic), Google-Extended, Meta-ExternalAgent, CCBot, Bytespider, plus social preview bots (Twitterbot, facebookexternalhit, LinkedInBot, Slackbot, Discordbot). Most AI crawlers do not execute JavaScript at all — pre-rendering is the only way to make a SPA citable. ### What is AI search visibility? How effectively a website's content can be retrieved, extracted, and cited by AI-powered answer engines (ChatGPT, Perplexity, Microsoft Copilot, Google AI Overviews, Claude). Requires deterministic HTML in the initial response, complete structured data (JSON-LD: Article, FAQPage, Organization, BreadcrumbList), entity-rich prose, and snippet-first paragraph structure. AI visibility deep-dives: https://prerender.info/blog (filter by "AI Visibility" section). ### How do I rank in ChatGPT, Perplexity, or Copilot? Three things must align: (1) the snapshot delivered to GPTBot/PerplexityBot/BingBot must contain the answer in the initial HTML — not behind JavaScript hydration; (2) the page must have complete JSON-LD that matches the visible content; (3) the answer paragraph must be self-contained (snippet-first structure) so the AI extractor can lift it without context loss. Pre-rendering closes problem #1 mechanically; the other two are content architecture decisions. ## Implementation ### Does pre-rendering interfere with my auth flow? No. Bot detection routes only verified crawler User-Agents to the snapshot path. Authenticated users keep cookies, sessions, and the live SPA. The two paths apply to different traffic classes and never overlap. ### Does pre-rendering work with Next.js App Router? Yes — pre-rendering operates at the HTTP proxy layer (intercepting bot requests before they reach the application). It is framework-agnostic. Next.js App Router serves the application to users normally; pre-rendering only applies to the crawler traffic path. Implementation guide: https://prerender.info/blog/prerendering-implementation-guide-nextjs. ### Does pre-rendering work with Shadow DOM and Web Components? Only if the prerendering pipeline explicitly traverses shadow roots. Web Components are mainstream in 2026 (Lit, Stencil, native Custom Elements). A service that fails Shadow DOM extraction misses a growing fraction of indexable content. Coverage analysis: https://prerender.info/blog/shadow-dom-v2-custom-elements-indexation. ### How long does it take to see indexation improvements? Operational metrics (render success rate, cache hit rate, WAF pass rate) appear within 24 hours. Crawl behavior changes (frequency, render type distribution in GSC Crawl Stats) appear in 2-4 weeks. Indexation rate changes (pages moving from "discovered/not-indexed" to "valid") typically appear in 4-8 weeks. Ranking improvements for newly indexed pages typically appear in 6-12 weeks. Full success-metrics framework: https://prerender.info/blog/prerendering-success-metrics. ## Contact For content corrections, technical questions, or partnership inquiries: info@ostr.io