Bolt.new SEO

Your Bolt.new App Is Invisible to Google

You just built something incredible with Bolt.new. It looks perfect in the browser. But here is the catch -- Google is not using a browser. When Googlebot visits your site, it gets a blank HTML shell with no content. All the React or Vue code that makes your app work? Search engines do not always execute it, which means your pages might not get indexed at all.

What RndrKit Does

RndrKit intercepts search engine traffic before it reaches your Bolt.new app. When a crawler visits, RndrKit renders the page in a headless browser and serves the fully rendered HTML -- with all your text, images, meta tags, and structured data intact. Human visitors go straight to your Bolt.new app with zero overhead.

Setup

Step 1: Find Your Bolt.new App URL

Bolt.new deploys your app to a URL like:

your-project.bolt.host

You can find this in the Bolt.new editor after deploying. This is your origin URL.

If you are on a Bolt.new paid plan, you may have already set up a custom domain through Bolt. You will need to remove it before connecting through RndrKit (see Step 2).

Step 2: Remove Custom Domain from Bolt (If Applicable)

If you configured a custom domain in Bolt.new's settings, remove it first. RndrKit needs to control DNS for your custom domain. Having it configured in both places will cause conflicts.

Keep the default *.bolt.host URL -- that is your origin.

Step 3: Sign Up for RndrKit

Create your account at rndrkit.io.

Step 4: Add Your Domain

Click Add Domain in the dashboard:

FieldExampleDescription
Custom Domainwww.example.comThe domain your visitors will use
Origin URLyour-project.bolt.hostYour Bolt.new app's default URL

Step 5: Configure DNS

Create a CNAME record at your DNS provider:

TypeNameValueTTL
CNAMEwwwcname.rndrkit.ioAuto

If you are using Cloudflare, set the proxy status to DNS only (gray cloud) during initial setup.

For detailed instructions, see DNS Configuration.

Step 6: Verify

Click Verify in the RndrKit dashboard, then test:

# Bot request -- should return fully rendered HTML
curl -s -A "Googlebot/2.1" "https://www.example.com/" | head -50

# Human request -- should return your SPA shell
curl -s "https://www.example.com/" | head -50

Platform-Specific Notes

Bolt.new robots.txt

Bolt.new origins serve a robots.txt with content signals for search, AI input, and AI training permissions. When you connect through RndrKit, RndrKit serves its own robots.txt for your custom domain, so the origin's file is not exposed to crawlers.

Custom Domains Require a Paid Plan

Bolt.new requires a paid plan to deploy with a custom domain. However, you do not need Bolt.new's custom domain feature -- you only need the default *.bolt.host URL. RndrKit handles the custom domain and SSL for you.

Bolt.new Tech Stack

Bolt.new generates apps using various frameworks (React, Vue, Svelte, etc.) depending on your prompt. Regardless of which framework Bolt chose, if it produces a client-side rendered app, RndrKit will pre-render it correctly.

SEO Quick Wins

Once RndrKit is active, make sure your Bolt.new app includes:

  • Title tags on every page -- unique and descriptive
  • Meta descriptions -- tell search engines what each page is about
  • Open Graph tags -- so shared links show a proper preview
  • Canonical URLs -- point to your custom domain, not bolt.host
  • Structured data (JSON-LD) -- help Google understand your content

If your Bolt.new app uses React, you can add react-helmet-async for per-page meta tags. Ask Bolt's AI to add it for you.

Verify It Works

curl -s -A "Googlebot/2.1" "https://www.example.com/" | head -100

You should see your full page content in the HTML response. If you see an empty shell, check the troubleshooting guide.

Next Steps

  • Analytics -- Monitor bot traffic to your site
  • Cache Warming -- Pre-render key pages for instant bot responses
  • SEO Audit -- Find and fix SEO issues
  • Sitemaps -- Help search engines find all your pages