Why your vibe-coded app doesn't show up in ChatGPT
You ask ChatGPT for the best tool for exactly the thing you built, and it names three competitors and not you. Usually it's one of five reasons, most of them fixable in an afternoon, and one of them isn't about your site at all.
How an assistant finds anything
An AI assistant knows about a product in one of two ways. Either it was in the training data, which was gathered months or years ago and won't include an app you launched last spring. Or the assistant searches the web while it answers, reads a handful of pages, and quotes them. ChatGPT, Claude and Perplexity all do the second when a question needs current facts, and it's the only one you can do anything about.
So the question isn't "does ChatGPT know me". It's "when ChatGPT searches for my category, does it find a page of mine it can read, and does that page say plainly that I'm the answer".
1. Your page is empty to them
Most AI builders (Lovable, Bolt, v0 on some settings) make an app that
draws itself with JavaScript after it loads. The page your server sends is an
empty <div>. Google runs the JavaScript eventually; the
fetchers behind AI search mostly don't. They read a blank page and move on.
Is my Lovable app invisible to
Google? shows how to check in ten seconds and how to fix it without
rebuilding the app.
2. You've told them to go away
A Disallow line in robots.txt for OAI-SearchBot,
Claude-SearchBot or PerplexityBot keeps you out of
those assistants' search answers. Often nobody wrote it on purpose: a
template, a plugin, or a host setting did. Cloudflare, for one, has a switch
that blocks AI crawlers at the edge, and your robots.txt never gets a say.
Blocking the training crawlers is a different matter and costs you
much less; Should I block GPTBot and
ClaudeBot? sorts out which is which.
3. The page doesn't say what it is
People ask assistants the way they'd ask a friend: "booking software for dog groomers in the UK", "a cheaper alternative to Calendly". The assistant searches, reads, and picks the pages that answer in those words. A home page that says "Reimagine your workflow" answers nothing. Say what it is, who it's for and what it costs, in the title, the main heading and the first paragraph, in the words your customers use.
4. Everything lives on one URL
If your pricing, features and FAQ are sections of the home page reached by
#pricing and #faq, you have one page, and one page can
only be the answer to one kind of question. A search for "Groomly pricing"
wants a page about pricing. Give the things people ask about their own real
URLs, each with its own title and description.
5. Nobody else mentions you
This is the one that isn't about your site. Search answers lean on pages that rank for the question, and a new site with no links from anywhere else rarely ranks. Assistants also like to quote comparison pages, directories and forum threads, because those are where people compare things. If you aren't on any of them, you aren't in the comparison. A listing on the directories for your category, a Product Hunt page, an honest answer in the right subreddit: none of it is glamorous and all of it counts.
What to fix first
- The raw HTML of your home page contains your headline and description (view source, not inspect)
- robots.txt and your host's bot settings let the search crawlers in
- The title and H1 say what it is and who it's for, in plain words
- Pricing, features and the FAQ each have their own URL
- A llms.txt and structured data state the facts an assistant should get right
- You're listed in at least the two or three directories people in your category actually use
Then ask again, and expect a different answer each time: these tools vary run to run, and one mention, or one absence, proves little. What you're after is being a page they can read and quote whenever they look.
Check yours
The visibility check covers the first four in one go: whether your page
is readable without JavaScript, what robots.txt allows, how your titles and
headings read, and which sections hide behind a #.