Back to Blog
GEO#Pricing#Accuracy#B2B SaaS#AI Crawlers

Pricing Page for AI Search: Stop AI Quoting Wrong Prices

By Liwaa BeainiApril 7, 20268 min read
GEO article cover for “Pricing Page for AI Search: Stop AI Quoting Wrong Prices” — 99Visibility

A pricing page for AI search has one job: give ChatGPT, Perplexity, Claude and Google's AI one unambiguous, crawlable statement of what each plan costs, so they stop quoting old or invented prices. That means every price written in plain HTML, identical everywhere it appears on your site and your listings, on a page the AI crawlers can actually fetch.

Price is a fact buyers check before they decide, and a wrong one costs you directly. Here is why AI gets it wrong, what the research says, and the checklist to fix it.

Why AI gets your pricing wrong

CauseWhat happensFix
The model learned your old priceAnswers given without a web search come from training data frozen at a cutoff: April 30, 2026 for OpenAI's flagship GPT-6 Astra and GPT-6.1 Sol, April 20, 2026 for the Instant model ChatGPT currently uses, June 2026 for current Claude models (as of October 2026). A price you changed after that is unknown to them.Nothing you do reaches this before the next model ships. Fix the web so that model learns the right price.
Your site disagrees with itselfThe pricing table says $49, the FAQ says $59, a 2024 blog post says $39. An AI system that reads more than one has no way to tell which is current.Find and fix every copy in one release.
Prices load with JavaScriptMany AI crawlers do not run JavaScript, so a price injected by a script or a toggle may not exist for them.Put prices in the HTML the server sends.
Listings carry old pricesReview sites, marketplaces and other people's comparison posts still show last year's plans, and AI can retrieve them in place of your page.Update what you own; ask publishers to correct the rest.
Billing period or currency is ambiguous"$41" (annual, per month) and "$49" (monthly) both appear with no label, and the model picks one.Label every number with currency and billing period.
No public price"Contact sales" with no number leaves nothing of yours to repeat, so any answer has to come from somewhere else.Publish a "from" price or the pricing basis.
Crawlers are blocked from /pricingA robots.txt rule or a firewall stops the search crawlers, so live answers fall back to other sources.Allow the search crawlers and test the firewall.

What the research says about price information

One controlled experiment tested price directly. In a 252,000-trial study across six LLMs, researchers at Sprinklr, which sells GEO tooling, put two matched product-review articles in front of each model and recorded which one it cited first (arXiv:2605.25517, May 2026). The articles differed in one factor at a time.

In all six models, the article that stated a price was more likely to be cited first: its odds were roughly 6 to more than 10,000 times higher, depending on the model. The authors call price a "gatekeeper," though their own table puts the effect below the threshold they set for that label in four of the six models. A recent date also beat a 2019 date in every model, but beat no date at all in only two or three.

Read it precisely. The articles were synthetic B2C reviews with fictional brands, each trial had two candidates already in the model's context, and the authors state "We never call a search engine." So once your page sits next to a competitor's in a model's context, the page that states its price is far more likely to be cited first; the study says nothing about getting retrieved in the first place, which is why the access steps below still come first.

The pricing page checklist

ElementDoAvoid
Plan pricesPlain text with currency and period: "$49 per month, billed monthly"Prices in images, sliders or script-only widgets
Monthly vs annualBoth as labeled text: "$49/month billed monthly, or $490/year"A discounted annual-per-month figure with no label
CurrencySay which currency the page shows, using the code (USD, EUR)Silent switching by visitor location with no label on the page
What each plan includesLimits as text: seats, usage, projectsCheckmark icons with no text behind them
Trial and refund termsLength, and whether a card is requiredTerms only in the checkout flow
EnterpriseA "from" price, or the basis: per seat, per usage, per module"Contact sales" as the only information
Date"Prices as of October 2026" next to the tableA page date you change without changing prices
URLOne canonical /pricing page; old pricing URLs redirect to itOld pricing pages still live and indexable
FAQPlain questions and answers that repeat the same numbersFAQPage markup added for a rich result Google retired in May 2026
Structured data (optional)Every price identical to the visible textSchema prices that differ from the page

On FAQ markup: Google stopped showing FAQ rich results on May 7, 2026 (Search Central updates). A pricing FAQ still helps readers; see FAQ page SEO for what changed.

Make sure AI crawlers can fetch your pricing page

Three checks, each a few minutes:

  1. robots.txt. Open yourdomain.com/robots.txt and look for any rule that disallows /pricing, or that blocks OAI-SearchBot, PerplexityBot, Claude-SearchBot or Googlebot. OpenAI says sites that block OAI-SearchBot "will not be shown in ChatGPT search answers," though they can still appear as navigational links (OpenAI crawler docs).
  2. The firewall. OpenAI's ChatGPT search help says to "confirm that the website host or content delivery network allows traffic from OpenAI's published searchbot IP addresses." Request the page as the crawler and read the status code; a 403, 429 or challenge page means something is blocking it.
  3. The HTML. Open the page, press Ctrl+U (Cmd+Option+U on a Mac) and search the source for your price. Vercel found ChatGPT and Claude crawlers fetch JavaScript files but "don't execute them" (Vercel crawler study). If the price is not in the source, ask your developer to render it on the server.
curl -s -o /dev/null -w "%{http_code}" -A "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36; compatible; OAI-SearchBot/1.4; +https://openai.com/searchbot" https://www.example.com/pricing

That command, run in a terminal, requests your pricing page with the user agent OpenAI publishes for OAI-SearchBot and prints the status code. On Windows, type curl.exe and replace /dev/null with NUL; copy the current string from developers.openai.com/api/docs/bots, since the version number changes. A 200 from your own computer is not proof, since your firewall may treat OpenAI's real IP addresses differently, but a 403, 429 or 503 is a clear warning.

Schema on pricing pages: parity, not a lever

Product or SoftwareApplication markup does not make AI quote you correctly. Google says "Structured data isn't required for generative AI search" (AI optimization guide), and an Ahrefs matched test of 1,885 pages found "no major uplift in citations on any platform."

If you use pricing markup for Google's rich results, the rule that matters is parity. Google's policies say structured data "must be a true representation of the page content" (structured data policies), and a schema price left over from last year is one more wrong copy. Our schema generator builds the JSON-LD and checks it against your visible prices.

Fix the copies of your price that live elsewhere

Your pricing page is one copy of your price among many. When you change a price, work through this list the same day:

  • Your own site. Search Google for the old number on your domain, for example site:example.com "$59", and fix blog posts, FAQs, comparison pages, docs and PDFs.
  • Listings you control. G2, Capterra, app marketplaces, Crunchbase and your partner directory entries.
  • Other people's articles. "Best tools" lists and comparison posts that quote your old price. Email the author with the new price, the date it changed and a link.
  • Your structured data and any llms.txt file. Both are easy to forget, and both are copies.

For the review cadence that catches what slips through, see how often to update content for AI. For the wider SaaS picture, see our guide to B2B GEO.

How to check what AI says about your price

Ask each platform the questions a buyer asks: "How much does [brand] cost?", "What does [brand]'s cheapest plan include?", "[brand] vs [competitor] pricing." Record the answer, the date and whether it cited sources. A cited answer came from a live search and should change once the crawler re-reads your fixed page; an uncited one may come from training data.

99Visibility's accuracy check automates the comparison: it checks AI answers against the prices and other brand facts you enter and flags wrong or outdated claims. When a wrong price will not go away, our guide to fixing AI hallucinations about your brand covers each platform's correction route.

Frequently asked questions

Why does ChatGPT show the wrong price for my product?

Usually for one of three reasons: it answered from training data older than your current price, it found an old price on your site or a third-party listing, or it could not read your pricing page at all. Check whether the answer cited sources; if it did, open them, because the wrong number is often sitting there.

How quickly do pricing changes show up in AI answers?

Live-search answers change after the platform's crawler re-fetches the page. For Google's AI features, Google says crawling can take "a few days to a few weeks." Answers from a model's training data change only when a newer model is released.

Should I use Product schema on my pricing page?

Only if you want it for Google's rich results, and only if every price in it matches the visible page. No test has shown that pricing markup improves AI answers, and Google says structured data is not required for its generative AI features.

Should I list competitor pricing on my site?

Only if you date it, link the source and keep it current. A stale competitor price makes your page a source of wrong facts about them, and no evidence shows comparison tables earn AI citations. If you cannot maintain it monthly, describe the pricing model instead of the number.

Write every price in plain HTML with currency and billing period, keep one canonical pricing URL, make every copy of each price identical, publish at least a starting price for custom plans, and make sure the search crawlers and your firewall let AI reach the page. Then check the answers monthly.

Run a free 99Visibility audit to see whether ChatGPT and AI Overviews mention you and how many of your facts, prices included, they get wrong.

Share

Want more of our research in Google Search and AI Mode? Add us as a preferred source.

Add 99Visibility as a preferred source on Google

See what AI says about your brand

Your free audit asks ChatGPT and Google AI Overviews about your brand. Paid plans add Gemini, Perplexity and Claude, and show every answer that contradicts your facts.

Start for Free

Related Articles