The fastest way to build an app — and the fastest way to be invisible
Bolt.new is remarkable. Describe what you want, and it generates a working full-stack application in minutes. Authentication, database, UI components, deployment — all handled.
But here's what Bolt doesn't mention: the apps it generates are invisible to most search engines, every AI crawler, and every social media bot.
This isn't a bug. It's a consequence of the architecture Bolt uses — and it affects every app built on the platform.
What Bolt.new actually builds
Bolt generates React applications using Vite. This is a modern, popular stack — the same one used by millions of developers. The output is a single-page application (SPA) where:
- The server sends a minimal HTML file with an empty
<div id="root"></div> - A JavaScript bundle downloads and executes in the browser
- The browser renders all the actual page content
For users with a web browser, this works flawlessly. The problem starts when something other than a browser visits your site.
What bots see when they visit your Bolt app
Open your terminal and run this against your Bolt-generated site:
curl -s https://your-bolt-app.com | head -30
You'll see something like:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>My App</title>
</head>
<body>
<div id="root"></div>
<script type="module" src="/assets/index-Dk4f8x.js"></script>
</body>
</html>
That's what GPTBot sees. That's what ClaudeBot sees. That's what PerplexityBot sees. That's what every social media bot sees when someone shares your link on LinkedIn, X, or Slack.
An empty page with zero content.
Meanwhile, your actual site has hundreds or thousands of words of content — product descriptions, feature lists, pricing, testimonials, documentation. All of it rendered by JavaScript, all of it invisible to bots.
Why this matters more in 2026 than ever before
This has always been a problem for SPAs, but the stakes have changed dramatically:
| Trend | Impact |
|---|---|
| GPTBot traffic grew +305% YoY | More AI crawlers visiting your site (and seeing nothing) |
| PerplexityBot grew +157,490% YoY | AI search is exploding |
| 31.5% of web traffic is now AI bots | Nearly a third of your "visitors" can't see your content |
| ChatGPT referral traffic up +52% YoY | People are finding products through AI — unless those products are invisible |
| Gartner: 25% of search shifts to AI by end of 2026 | This isn't a niche concern anymore |
When someone asks ChatGPT "What's the best tool for [your category]?" and your Bolt-built app is invisible to GPTBot — you won't be in that answer.
The Bolt.new SEO gap in practice
Here's what typically happens to a founder who builds with Bolt:
Week 1: Ship the MVP. Everything works. Users love it.
Week 3: Start content marketing. Write blog posts, share on social. Notice that LinkedIn and X link previews are blank — no title, no image, no description.
Month 2: Check Google Search Console. The site is partially indexed but with thin content warnings. Core pages show minimal word count.
Month 3: Realize that Googling the product name returns nothing useful. Ask ChatGPT about the product — it has no idea what it is.
Month 4: Start researching "React SEO" and discover the client-side rendering problem. Consider migrating to Next.js. Get quotes: $40K–$80K and 3 months of work. Put it on the backlog.
This cycle repeats for thousands of Bolt-built apps right now.
What you can do about it
Step 1: Confirm the problem
Run a CrawlReady audit on your site. In 15 seconds, you'll see:
- Exactly how many words crawlers can see vs. how many exist after rendering
- Your visibility gap percentage
- Which AI crawlers are affected
- What issues need fixing
Step 2: Understand your options
| Approach | Time | Cost | Code changes |
|---|---|---|---|
| Migrate to Next.js | 2–4 months | $30K–$80K | Complete rewrite |
| Add SSR to Vite | 2–4 weeks | $5K–$15K | Significant refactor |
| Pre-rendering middleware | Under 1 hour | $9–$29/mo | Zero |
| Do nothing | N/A | Free | N/A (stay invisible) |
Step 3: Deploy pre-rendering
The fastest path is pre-rendering middleware like CrawlReady. It works by intercepting crawler requests at the edge and serving them a fully rendered version of your page — while human visitors continue to get the normal React SPA experience.
No code changes. No framework migration. No risk to your existing application.
After deployment, every crawler — Googlebot, GPTBot, ClaudeBot, PerplexityBot, and all social bots — receives your complete HTML with all content, meta tags, headings, and structured data intact.
What Bolt should tell you (but doesn't)
Every AI builder — Bolt, Lovable, Base44 — should include a post-generation checklist that says:
"Your app uses client-side rendering. Search engines and AI crawlers cannot see your content without additional configuration. Here are your options..."
Until they do, the responsibility falls on founders to discover and fix this gap themselves.
The good news: it's a known, solved problem. The fix takes less than an hour and costs less than a coffee subscription.
Next steps
- Run a free audit to see what crawlers actually see on your Bolt app
- Read our guide on what crawlers actually see on JavaScript sites for the technical deep-dive
- Check our AI builder SEO checklist for 15 things to fix after your AI builder generates your site
This guide applies to Bolt.new apps as of March 2026. If Bolt adds server-side rendering or pre-rendering in the future, the core problem may change — but any existing Bolt-generated SPA will still have this issue.
Is your site invisible to AI search?
Run a free audit and see exactly what Google, ChatGPT, Perplexity, and 20+ crawlers see on your site. Results in 15 seconds.
Run Free Audit