Brand & Positioning · 9 min read · September 24, 2026 · Hafsa Tariq, gaash.ai
Why isn't my SaaS showing up in ChatGPT? What the assistant can read
Your SaaS is missing from ChatGPT's answers because the assistant builds a shortlist from what is published about the category and the product, and what it reads is the HTML a fetch returns. A product that states its category, use cases, pricing or pricing model, integrations and who it is for gets matched to the buyer's question. One that keeps all of that behind "book a demo" gives it nothing to quote.
How does an assistant build a shortlist for a software question?
A buyer types "what's a good tool for scheduling shifts at a 30-person restaurant". The assistant does not consult a ranking of scheduling tools. With web search on, it runs searches of its own, often several, in words the buyer never typed, which Google's documentation calls query fan-out; it fetches the pages those searches return, category roundups, review sites, comparison articles, vendors' own pages; and it writes three to five names into a paragraph with a reason attached to each. Anthropic documents this fetch-then-write loop for Claude's web search tool, and the other assistants describe crawlers and fetchers that do the same job.
Every reason in that paragraph is a fact some page stated. "Built for restaurants", "has a free tier for under ten staff", "connects to the common payroll systems": each was read somewhere and repeated. We cannot see how any assistant weighs one page against another, and we do not claim to. What we can see, and what you can control, is which facts about your product exist in a form a fetch returns.
That reframes the question. "Why isn't my SaaS showing up" becomes "which of the facts an assistant would need to name us are published in HTML, on our site or anyone else's". Answering that honestly, fact by fact, is the first piece of work.
What does a SaaS site have to state in HTML?
The facts a buyer's question turns on, in the buyer's words, as text on a page a fetcher can reach without logging in or running a script. The table is the list we check first.
| What to state | Why it matters | Where it usually hides |
|---|---|---|
| The category, in the buyer's noun | The question is asked in that noun ("shift scheduling software") and the match is made on words | Behind a coined phrase on the homepage that no buyer would type |
| Use cases, one per page | "For a 30-person restaurant" is a condition, and only a page that states it gives an answer something to repeat about it | In a sales deck, or in a case study behind a form |
| Pricing, or at least the pricing model | A buyer asks what it costs; an assistant that cannot read your price quotes the competitor whose price it can read | Behind "contact sales", even for the entry tier |
| Integrations, by name, as text | "Works with our payroll" is a yes-or-no fact per product, and a list is read as a list | In a wall of logos with no words |
| Who it is for, and who it is not | The assistant narrows by company size, industry and role, and a stated exclusion is a fact it can use | Nowhere, because turning a segment away feels like lost revenue |
| Security and compliance facts | Buyers in regulated trades ask, and a checkable statement is worth more than a badge | In a PDF sent after an NDA |
| Public documentation and a changelog | Docs are pages that state what the product does, feature by feature, in the words a user types | Behind a login |
Each row is a page or a paragraph, not a campaign. The category belongs in the h1 and the first sentence of the homepage. The use cases are one page each with the segment in the heading. The pricing model is a sentence even where the number depends on volume. None of it asks you to give away anything a competitor could not learn from a trial.
What does a demo gate hide?
Everything in the table. The pattern is a homepage of verbs ("Transform how your team works"), a button that says "Book a demo", pricing that says "Talk to sales", documentation behind a login and a customer page of logos. A person who books the demo learns the category, the use cases, the price and the integrations in thirty minutes. An assistant fetching the site learns none of them, so when a buyer asks it the question the demo would have answered, it names the products whose pages answered it in text.
The assistant does not fill the gap with charity. Where a fact is missing it either says nothing about you or, worse, states something it read about you elsewhere, in an old review or a competitor's comparison page, and you have published nothing that contradicts it. A product page that states the facts is also the page that corrects the record.
The fix is not removing the demo. Sales teams need it, and a buyer who wants one will book one. The fix is stating the facts beside the button: the category in a sentence, the price or the model, the three segments you serve, the systems you connect to. Gate the conversation, not the description.
Which page formats match the questions buyers ask?
Two shapes of question dominate once a buyer has a shortlist, and both have a page format that answers them. "X vs Y" is answered by a comparison article: the two products set against the same named criteria, with a verdict per criterion. "Alternatives to X" is answered by a page that names the situations in which a buyer leaves X and says which alternative fits each. Both are ordinary buyer questions, and a vendor with no page of either shape is absent from the pages the assistant fetches for them.
A comparison written by one of the two vendors is read as one, so it has to survive that reading. The criteria are the ones a buyer would pick, not the ones you win. The rows where the other product is better say so. The claims about the other product are checkable against its own public pages. A comparison that fails that test is marketing with a table in it, and an assistant that has also fetched the other vendor's page has what it needs to notice.
The same logic favors the specific over the general. A use-case page that names the segment, a pricing page that states the model in a sentence, docs that describe a feature in the words a user searches for. The paper that named the field, Aggarwal and colleagues at KDD 2024, found that adding statistics, quotations and citations to a source raised its visibility in generated answers by up to about 40% on their benchmark, which is a measurement of the same thing: checkable specifics get lifted, adjectives do not.
Why third-party presence matters, and why you cannot write it
A brand mention is your product's name in text you did not write: a review on a software review site, a thread where someone asked what to use and got an answer, an integration partner's page that lists you, a customer's own blog. An assistant fetching pages for "best shift scheduling software for restaurants" reaches those pages before it reaches yours, because those are the pages that answer that question directly. What they say about you is part of the answer, and you did not get to draft it.
You cannot write those pages, and attempting to, with planted reviews or seeded threads, is the kind of thing that reads as what it is. What you can do is give them something to say. Ask customers who are happy to review you on the sites their peers read, and answer questions where they are asked, under your own name, without the pitch. Publish things other people have a reason to cite: a public changelog, honest documentation, a dataset or a benchmark of your own that a writer would link to.
Then make sure your own site agrees with what the third parties say. A review site that lists you under an old product name, a partner page that describes a feature you retired, a category you have since left: each is a fact the assistant may read before it reads you, and the correction has to be on your site in text, where a fetch will find it.
How to measure whether any of it changed
Write a fixed panel of the questions your buyers ask, in their words: the category question ("best shift scheduling software for restaurants"), the comparison ("[you] vs [competitor]"), the alternatives question ("alternatives to [competitor] for a small restaurant group"), and the one that names you ("is [you] good for a 30-person restaurant"). Put each to ChatGPT, Claude, Gemini and Perplexity three times, because a single answer varies from run to run, and record whether you were named, whether you were recommended, whether you were first, and who else was. Repeat monthly with the same questions. The procedure we run for a paying client is a smaller one: twelve questions, asked of Claude alone at the baseline, again once the fixes are live and every month with monitoring.
Measure across assistants rather than in one, because they fetch different pages and name different products, and a reading from one is a reading of that one. What the numbers will show is whether the facts you published are now being read: which questions started naming you, which still name only others, and what those others' pages state that yours did not. Your AI visibility is that record over months, and no one outside the assistants can promise what it will say.
Common questions
Does ChatGPT have to be trained on my product to name it?
No. An assistant answering a current question fetches pages at answer time and writes from them, so a product launched after a model's training cutoff can be named once its pages have been fetched. OpenAI documents that OAI-SearchBot indexes pages for ChatGPT search and that GPTBot, the training crawler, is a separate token; disallowing GPTBot does not remove a site from search answers. Our article on robots.txt for AI crawlers covers which token does what.
Should we publish prices when we sell by quote?
Publish the model even when the number depends on volume: per seat or per location, monthly or annual, what the entry tier includes, whether there is a free tier, and what moves the price. That is a paragraph an assistant can quote and a buyer can plan around. "Contact sales" can stay for the enterprise tier. A pricing page with no facts on it sends the buyer's cost question to whichever competitor answered it.
Will an "alternatives to" page about a competitor look unfair?
It will be read as vendor-written, so write it to survive that reading. Name the situations in which a buyer leaves the other product, say which alternative fits each, including cases where the answer is not you, and keep every claim about the competitor checkable against its own public pages. Buyers ask assistants that exact question in those words; the page either exists in an honest form or the assistant assembles the answer from other people's versions.
How long until the assistants pick up a change to our site?
We cannot say, and anyone who names a number is guessing. Each assistant's index re-fetches on its own schedule, and a page has to be reachable first: no bot challenge, no login, the words in HTML rather than written by a script. Publish the facts, confirm a crawler can fetch the page, then measure monthly on a fixed panel. The month the answers change is the only honest answer to the question.
Sources
This page quotes no statistics of its own; the 40% figure is the one stated in the paper's abstract and describes its benchmark. What the crawlers and fetchers do comes from the operators' documentation linked where used.
Sources: Aggarwal et al., GEO: Generative Engine Optimization, KDD 2024 · Anthropic, web search tool · OpenAI, crawler documentation · how we measure a client: the question panel, the assistant and the score
Read on