Replit and AI search: what crawlers meet, and what to change
What AI crawlers meet on Replit
Since June 2026 a new Agent app ships a robots.txt (User-agent: *, Allow: /) and a sitemap, so crawlers are allowed in. Most Agent apps are Vite single-page apps, though, and Replit does no pre-rendering: the first response is the empty page below, and a crawler that does not run JavaScript reads nothing. The same app answers any path that has no file — /llms.txt and /sitemap.xml included — with its own HTML and a 200, so a check that only looks for a 200 is fooled. Replit's SEO Agent can recommend server rendering or static generation for the app.
index.html
<!doctype html>
<html lang="en">
<head>
<title>…</title>
<script type="module" src="/assets/index.js"></script>
</head>
<body>
<div id="root"></div>
</body>
</html>What you can change, and where
The changes a report asks for on the site itself, and llms.txt, which it does not.
Page titles & meta descriptions
Possible: YesWho: You, with stepsWhere: Your framework's head; Agent writes meta tags by default. In a single-page app they are set in the browser, after a crawler has gone.See what is live: Website metadata checker
JSON-LD schema
Possible: YesWho: You, with stepsWhere: A script tag the server renders.See what is live: Schema markup validator
robots.txt
Possible: YesWho: You, with stepsWhere: A static file or a route; new Agent apps ship one.See what is live: robots.txt validator
A plain-text file like /llms.txt
Possible: YesWho: You, with stepsWhere: A static file or a route served as text. Without one, the app answers the address with its own HTML.See what is live: llms.txt validator
New pages (FAQ, comparison, use case)
Possible: YesWho: We write; whoever runs the site puts it upWhere: The normal page editor.A new section on an existing page
Possible: YesWho: We write; whoever runs the site puts it upWhere: The page it goes on, in the normal editor, beside the section it follows.
Getting a Replit site ready to be cited
- 01
Custom domain first
Everything downstream — citations, listings, Proof — keys off the domain.
- 02
Render on the server
curl the page and read what comes back. If the copy is not in that response, the engines that do not run JavaScript never saw it.
- 03
Check that files are files
Request /llms.txt and /sitemap.xml and look at the content type: the app's HTML with a 200 means the file is not there.
- 04
Publish publicly, and keep it published
Access has to be Public, and on the free Starter plan a published app expires after 30 days.
Check it yourself
Free, no account. Each reads what your site serves today, the way the crawlers do.
Why we don’t publish to Replit
You have shell access, and editing the file is faster than any connection would be. An approved page comes as Markdown or HTML to commit; once it is deployed and you give us its address, we look for it on the site.
Passcite on Replit
The reportLive
It reads public pages, so it works the same on Replit as anywhere.
Pages for your approvalLive
Written from the site's own words for the prompts it loses.
Publishing into ReplitCopied in
Rich text, HTML or Markdown, looked for on the site once it is up.
ProofLive
A week after a page goes live, its prompts are asked again.
Questions
- Why can't AI crawlers read my Replit app?
- Most Agent apps are single-page apps: the server sends an empty page and a script, and most AI crawlers do not run the script. Replit does not pre-render; the fix is server rendering or static generation.
- Does Replit add robots.txt and a sitemap?
- New Agent apps since June 2026 ship both. On a single-page app a missing file is not a 404 — it is the app's HTML with a 200 — so check the content type.
- Do I need to give Passcite access to my Replit site?
- No. The report reads public pages, the same as any visitor, and nothing we do connects to your Replit account.
- What does Passcite cost?
- The first report is free on a free account: one brand, 10 prompts, three engines, no card. Plans start at $49 a month for 150 credits — a prompt asked on three engines is one, an article 10.
- LovableNew apps render on the server; older ones are pre-rendered only for the crawlers Lovable verifies.
- GitHub PagesStatic files and nothing in the way. The catch is where robots.txt has to live.
- GoHighLevelServer-rendered funnels and a per-domain llms.txt. Schema put in tracking code never reaches a crawler.
- WordPressThe platform we publish into. An SEO plugin serves most of what AI crawlers read; the page itself is the gap.
See what the engines say about your Replit site
The prompts it loses, who was named instead, and what the site never answers.