AI Visibility Tracking ToolFree checker

How can a B2B SaaS company get cited more often in ChatGPT and Perplexity?

99Visibility Research · Updated October 21, 2026 · 6 min read

Short answer

Start by removing what blocks AI crawlers. The usual culprits are pricing and docs that only appear after JavaScript runs, robots.txt rules that block OAI-SearchBot or PerplexityBot, and CDN bot management that turns crawlers away. Then state specific facts plainly, and get named on the third-party comparison pages engines already cite. Nobody can guarantee a citation. These steps remove the reasons you can't be cited.

Key takeaways

  • Access comes first: a crawler that can't fetch or read your page cannot cite it.
  • Vercel's crawler study found ChatGPT and Claude crawlers fetch JavaScript but don't execute it, so client-rendered pricing may be invisible to them.
  • robots.txt is per bot: GPTBot controls training, OAI-SearchBot controls ChatGPT search, and PerplexityBot controls Perplexity's index.
  • A firewall or CDN can block a crawler that robots.txt allows, and nothing in your dashboards will tell you.
  • Being named on third-party comparison pages is associated with appearing in answers, but no outcome is promised.

The short answer: fix access, then state facts, then earn mentions

A citation in ChatGPT or Perplexity passes through four stages:

  • Parametric: what the model learned in training, frozen at a cutoff. Nothing you do this quarter changes it.
  • Access: whether a crawler may fetch and read your page.
  • Retrieval: whether the engine pulls your page into its context for a given query.
  • Generation: whether the model cites what it retrieved.

You control access almost entirely. You influence retrieval only partly, and you don't control generation. So the work runs in this order:

  1. Put the facts buyers ask about (pricing, plans, integrations, security) in the HTML before JavaScript runs.
  2. Let the search crawlers in, bot by bot, in robots.txt.
  3. Confirm your CDN or firewall doesn't turn those crawlers away.
  4. State specific facts in plain sentences an engine can quote.
  5. Get named on the third-party pages engines already cite for your category.

Steps 1 to 3 remove blocks. Steps 4 and 5 give the engine material to work with. None of them promises a citation. ChatGPT decides per query whether to search at all, and OpenAI says it rewrites the user's prompt into its own targeted queries. For the prompts SaaS buyers actually ask, see AI visibility for SaaS.

JavaScript-rendered pricing and docs

Many SaaS sites build pricing pages, docs and changelogs as client-rendered apps. Vercel's crawler study looked at ChatGPT and Claude crawlers. It found they fetch JavaScript files (11.50% and 23.84% of requests) but don't execute them, so they can't read client-side rendered content. Independent re-testing reported in June 2026 found the same for OAI-SearchBot and PerplexityBot. Googlebot is the exception, because it renders JavaScript.

This has a practical consequence. A pricing table that loads from an API after hydration may not exist for the crawler at all. The engine then answers from older training data or from someone else's page about you.

The next move

  • Fetch your pricing, plans and top docs pages with JavaScript disabled. Compare the text with what a browser shows.
  • List every price, plan name and limit that appears only after hydration.
  • Server-render or prerender those pages. Tabs, accordions and "load more" blocks that fetch content on click have the same problem.

Blanket AI blocks in robots.txt

A common SaaS mistake is a blanket "block AI bots" rule, often added by security or legal. robots.txt rules are per bot, and OpenAI says each setting is independent of the others:

  • GPTBot governs training use only.
  • OAI-SearchBot governs ChatGPT search. OpenAI states that sites opted out of it will not be shown in ChatGPT search answers, though they can still appear as navigational links.
  • PerplexityBot indexes pages for Perplexity search.
  • Perplexity-User fetches pages for a user's request. Perplexity says it generally ignores robots.txt.

You can block training and still allow search:

User-agent: OAI-SearchBot
Allow: /

User-agent: PerplexityBot
Allow: /

User-agent: GPTBot
Disallow: /

Blocking GPTBot does not remove you from ChatGPT search. Allowing it does not get you cited either. Add Claude-SearchBot if Claude matters to your buyers. Platform detail for each engine lives in getting cited by ChatGPT and getting cited by Perplexity.

Bot management on the CDN

robots.txt is only half the gate. OpenAI's help centre sets out two conditions for eligibility. You must allow OAI-SearchBot, and your host or CDN must allow traffic from OpenAI's published searchbot IP addresses. Bot-management rules, JavaScript challenges and rate limits can return a 403 or a CAPTCHA to a crawler that robots.txt allows. Your analytics won't flag it.

Defaults can also change without anyone on your team editing anything. On September 15, 2026, Cloudflare set Training and Agent crawlers to blocked by default on ad-displaying pages. The change covered new domains and existing free-tier customers.

The next move

  • Request a pricing page and a docs page as each AI crawler user agent. Record the status code.
  • Check that /robots.txt itself is reachable to those crawlers.
  • Ask security to allow verified search bots by user agent and verified-bot programmes, not by IP lists alone.

The AI Crawler Checker requests a page as each AI crawler and shows which ones the firewall turns away.

Third-party comparison pages and quotable facts

For "best tool for X" prompts, engines often cite review sites, comparison articles and community threads instead of vendor pages. Being named on those pages is associated with appearing in the answer. It is an association, not a promised effect, and brand size explains a lot of it. Keep your listings on the comparison and review pages that already show up for your category current and correct, including real pricing. More in third-party mentions and AI answers.

On your own site, state specific facts in single sentences. Say your Team plan costs $20 per seat per month (a hypothetical figure). Write exactly that on a page crawlers can fetch. It gives the engine a sentence it can quote. The 252,000-trial factorial found that explicit price information and a recent timestamp helped consistently. That study tested pages already in the model's context, so it shows effects on use, not on discovery.

What doesn't move citations, and what to do next

Much GEO advice has no evidence behind it. Ahrefs tracked 1,885 pages that added schema and found no major uplift in citations on any platform, with AI Overviews citations falling 4.6%. C-SEO Bench found most content-rewriting methods largely ineffective and often harmful. Google says Search ignores llms.txt, and no other engine documents reading it. Treat these as non-levers. That doesn't mean you should rip out markup you already have.

Measure each engine separately. ChatGPT and Perplexity use different crawlers, indexes and citation formats, so one blended number hides which gate is broken. The free checker on this site shows whether AI engines name you for up to three buyer questions, as a one-time snapshot. To decide between monitoring and fixing, read tracking tools vs fixing tools. To set a re-check rhythm, read what changes between checks.

Frequently asked questions

What should a GEO audit tool for a B2B SaaS company check?

It should diff your raw HTML against the rendered page, so you can see which prices and docs vanish without JavaScript. It should parse robots.txt per bot and request pages as each AI crawler, catching CDN blocks. It should flag stray noindex, nosnippet or data-nosnippet tags. It should show what each engine gets wrong about your pricing and features. Be wary of tools that sell schema scores, E-E-A-T scores or an AI rank. None of those has a ground truth.

Does blocking GPTBot hide us from ChatGPT search?

No. OpenAI documents GPTBot as the training crawler, and its settings are independent of OAI-SearchBot, which controls ChatGPT search. You can disallow GPTBot to keep content out of training and still allow OAI-SearchBot to stay eligible for search answers. The reverse also holds: allowing GPTBot does not make ChatGPT search more likely to cite you.

Should we publish an llms.txt file or add FAQ schema?

Neither has evidence behind it as a route to citations. Google says Search ignores llms.txt, and no other engine documents reading it. Google says structured data isn't required for generative AI search. Ahrefs' matched test found schema produced no major citation uplift. FAQ rich results were deprecated in May 2026. Existing markup does no harm, so leave it. Spend the effort on rendering and crawler access instead.

How long until fixes show up in ChatGPT or Perplexity answers?

Nobody has published a measurement of this. Answers that use live search can reflect a fixed page once it is recrawled, but each engine decides per query whether to search. Answers without search come from training data frozen at a cutoff. OpenAI lists February 16, 2026 for its GPT-5.6 models. Re-check per engine after each fix, and expect results to vary between runs.

Sources

  1. The rise of the AI crawler - Vercel
  2. Overview of OpenAI Crawlers
  3. Searching the web with ChatGPT
  4. Perplexity Crawlers - Perplexity
  5. We Tracked 1,885 Pages Adding Schema. AI Citations Barely Moved.
  6. [2506.11097] C-SEO Bench: Does Conversational SEO Work?

This page is AI-assisted. It was written from a verified evidence base and checked against our editorial policy. Engine behaviour changes often; facts are as of October 21, 2026.

Keep reading