Replit SEO
Your Replit App Is Invisible to Google
You used Replit (maybe even Replit AI Agent) to build a slick web app. It runs perfectly in the browser. But when Googlebot comes knocking, it gets served a blank HTML shell -- just a <div id="root"></div> and a wall of JavaScript. Google does not reliably execute client-side JavaScript, so your content might never get indexed.
Your app is invisible to search engines. That is a problem if you want organic traffic.
What RndrKit Does
RndrKit detects search engine bots visiting your domain and renders the page in a headless browser before serving the result. Googlebot gets fully rendered HTML with all your content, meta tags, and structured data. Human visitors are proxied directly to your Replit app -- no delay, no changes.
Setup
Step 1: Find Your Replit Deployment URL
When you deploy a Replit app, you get a deployment URL like:
your-project.replit.app
Important: Use your deployment URL, not your development URL. The development URL (which includes your Replit username) is only active while the Repl is running. The deployment URL stays live 24/7.
You can find the deployment URL in your Replit project under the Deploy tab.
Step 2: Sign Up for RndrKit
Create your account at rndrkit.io.
Step 3: Add Your Domain
Click Add Domain in the dashboard:
| Field | Example | Description |
|---|---|---|
| Custom Domain | www.example.com | The domain your visitors will use |
| Origin URL | your-project.replit.app | Your Replit deployment URL |
Step 4: Remove Custom Domain from Replit (If Set)
If you already configured a custom domain in Replit's deployment settings, remove it. RndrKit needs to control DNS for your custom domain. Having it set in both Replit and RndrKit will cause routing conflicts.
Step 5: Configure DNS
Create a CNAME record at your DNS provider:
| Type | Name | Value | TTL |
|---|---|---|---|
| CNAME | www | cname.rndrkit.io | Auto |
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
Replit AI Agent Apps
If you built your app with Replit AI Agent, the result is typically a React or Next.js SPA. As long as it is client-side rendered (which most Replit AI Agent outputs are), RndrKit will pre-render it for search engines without any changes to your code.
Development URL vs. Deployment URL
Replit gives you two URLs:
- Development URL:
your-username.repl.coor similar -- only active while the Repl is running - Deployment URL:
your-project.replit.app-- always on after you deploy
Always use the deployment URL as your origin in RndrKit. The development URL will go offline when the Repl sleeps.
Replit Deployments and Always-On
Replit deployments stay live without needing the Repl to be running. RndrKit proxies traffic to the deployment URL, so your site will be available 24/7 as long as you have an active Replit deployment.
Server-Side Replit Apps
If your Replit app runs a backend server (Express, Flask, etc.) that serves fully rendered HTML, you may not need RndrKit. Test by running:
curl -s "https://your-project.replit.app/" | head -50
If you see full HTML content, your server is already rendering pages. If you see an empty shell, you need RndrKit.
SEO Quick Wins
Once RndrKit is active, make sure your app includes:
- Title tags on every page -- unique and under 60 characters
- Meta descriptions -- summarize what each page is about
- Open Graph tags -- so links preview properly when shared
- Canonical URLs -- pointing to your custom domain, not
replit.app - Structured data (JSON-LD) -- helps Google understand your content
If Replit AI Agent built your app with React, ask it to add react-helmet-async for per-page meta tags.
Verify It Works
curl -s -A "Googlebot/2.1" "https://www.example.com/" | head -100
You should see fully rendered HTML with your content. If you see an empty shell or errors, check the troubleshooting guide.
Next Steps
- Analytics -- See which bots are crawling your site
- Cache Warming -- Pre-render important pages for fast bot responses
- SEO Audit -- Check your pages for common SEO issues
- Sitemaps -- Help search engines discover all your pages