Signals
Should you publish your pricing? What hiding it costs you in AI answers
By Arnav Mukherjee, founder of TofuBofu · August 3, 2026
For our regional research we asked four AI engines an open buying question in 15 markets: who are the best managed IT service providers here. I went back into the stored answers last week looking for something unrelated, and got stuck on a detail I had read past the first time.
The engines do not return a list of companies. They return a list of companies with a short justification attached to each one, and the justifications are specific enough to feel written by someone who knows the market. One answer described a firm as "known for their transparent pricing, high-touch customer service, and strong focus on strategic IT roadmapping rather than just fixing broken computers." Another led with "flat-rate IT support" and a fast response time. A third summarised a Florida provider as "proactive IT support for small businesses, flat-rate plans."
Those clauses are doing the work a good salesperson does, telling a buyer why this name and not the one below it. Which raised a question I could answer with the data already sitting on disk: when an engine reaches for a reason to attach to your firm, what does it find, and what happens when the most commercially loaded dimension is the one you have deliberately left blank?
A search result lists you. An AI answer describes you.
This is the structural difference that makes the question urgent. Ten blue links pass no judgement on the businesses behind them. Position aside, every result gets the same treatment: a title you wrote and a snippet pulled from your own page. A buyer who wants to know whether you are affordable, specialised or the right size has to click through and find out.
An AI answer collapses that step. It names four or five firms and characterises each one in a sentence, assembled from whatever the engine can find and state with reasonable confidence. The buyer forms an impression of all five before visiting any website, and often before knowing that four of the five existed.
G2's 2026 research found 51 percent of B2B buyers now begin vendor research on an AI chatbot, up from 29 percent, and that 69 percent had switched their vendor choice based on what AI told them. The clause attached to your name is doing considerably more work than a meta description ever did.
What engines actually say about the vendors they name
Since we had 64 real answers to the same class of buying question, I categorised the descriptive language in all of them. The ranking below is what turned up, and it doubles as a checklist of the dimensions on which buyers are being told about you whether or not you have supplied the material.
A note on method, because the number would be easy to overstate. I counted the presence of category language in the answer text, which tells you what dimensions the engines describe vendors along. It does not open up the model's reasoning, and a few categories run generous: any mention of a rating or a certification lands in the first row, which is part of why it sits at 95 percent. Read the table as a map of what a buyer is told about you, and the ordering as a rough sense of which dimensions come up most.
Even read conservatively, nine of the ten rows describe things a firm can state about itself in a sentence. Geography, vertical focus, compliance posture, ideal customer size, tenure, stack, support model. Most services firms have this material scattered across a homepage, a proposal deck and a founder's head, and have never written it down in one retrievable place.
Pricing is the row you are withholding on purpose
Pricing sits at the bottom of that table, in 38 percent of answers, and it is the only row on the list that most B2B services firms omit deliberately. The others are missing through neglect. This one is a policy.
The distribution across engines is uneven enough to be worth knowing. Gemini used price or budget language in 10 of its 16 answers, Claude and Perplexity in 5 each, and ChatGPT in 4 of 16. Those counts are too small to settle anything, and engine behaviour changes with model updates, so I would treat the ordering as a hint rather than a plan. The durable point is that a widely used engine described more than half the vendors it recommended in commercial terms, and did it without asking anyone's permission.
Worth noticing too: almost none of that language was a number. The engines quoted the shape of the commercial relationship rather than a figure. Flat-rate, transparent, predictable, suited to a small budget. That distinction is the whole opening for firms that cannot publish a rate card.
What "contact us for pricing" looks like from the model's side
A page that states a policy about pricing contains no facts about pricing, so a model retrieving it for a comparison finds nothing usable. Two things follow, and they fail in different directions.
The first is quiet. Your entry in the comparison comes out thinner than the firm beside you, described in general terms while a competitor gets a concrete commercial clause. No buyer notices this as an absence. They notice one firm sounding more knowable than another and move on.
The second is louder. Engines fill gaps, and pricing is a gap buyers ask about directly, so a model with nothing of yours to retrieve may generalise from your category, borrow the shape of a competitor's published model, or reach for a stale listing. The buyer receives that guess in the same confident register as everything else in the answer. Withholding your pricing does not keep a number out of circulation. It hands the drafting to someone else.
The clause an engine can build about each firm
The objection, taken seriously
I am not going to pretend the case for hiding pricing is weak. Services engagements are custom in ways that resist a published figure, and a number on a page anchors every conversation that follows it, including the ones where the scope turns out to be triple what the buyer assumed. Competitors read your site and price against you. For firms selling on outcomes, leading with a rate invites exactly the hourly comparison they have spent years escaping.
Those arguments hold. What shifted underneath them is where the comparison happens. It used to happen after a buyer contacted three firms and gave each a chance to frame the number, which is a setting you can control. It increasingly happens inside an answer generated before anyone has been contacted, where the only inputs are what each firm has already published.
See how AI currently describes you
Run a free scan across six AI engines and read the clause each one attaches to your name, next to the clauses it gives your competitors.
Get your free auditPublish the posture, not the rate card
Since the engines quoted models rather than figures, you can satisfy the dimension without publishing a price for work you have not scoped. Five things, in order of how much they change the clause.
State the model you already use
Per user, per device, fixed-fee project, monthly retainer, value-based. One plain sentence on your pricing or services page. This is the single element engines quoted most in our sample, and almost every firm already knows the answer without having written it anywhere a crawler can reach.
Give a floor rather than a ceiling
A minimum engagement or a starting-from figure lets a buyer self-qualify while leaving your scoped work unanchored. It also converts your page from a policy into a fact, which is the difference between being described vaguely and being described concretely.
Name the two or three things that move the number
Headcount, number of sites, compliance scope, response-time commitments, integration count. Buyers find this more useful than a price, it stays true across every deal you sign, and it pre-empts the anchoring problem by explaining the variance instead of hiding it.
Separate what is included from what is billed extra
Onboarding, after-hours support, hardware, licences, project work outside the retainer. In my experience the most common complaint buyers voice about services pricing is not the level, it is discovering three months in what the number did not cover.
Write it as prose first, then mark it up
Engines quote sentences, so write the way you would explain it on a call, then add Offer or Service schema carrying the same facts. SE Ranking found structured data on 71 percent of the pages ChatGPT cites. Markup on a page that still says contact us for pricing has nothing true to describe.
We do this ourselves, which is easier for a software product than for a consultancy and worth disclosing as such. Our plans and their prices sit on a public pricing page with the FAQs marked up, on the reasoning that an engine quoting our numbers beats an engine estimating them.
While you are in there, fix the other nine rows
Pricing is the interesting case because the omission is deliberate. The other nine categories in that table are usually missing by accident, and they are cheaper to fix. Each one is a sentence a firm can write in an afternoon and most have never written down anywhere retrievable.
Geography appeared in 88 percent of answers, so state the cities and regions you serve rather than implying them through a contact address. Vertical focus appeared in 72 percent, so name the three industries you actually do best, including the ones you turn away. Company-size fit appeared in 62 percent, so publish the range you serve well, since a firm that says it works with 20 to 200 seat businesses is easier to place than one that says it works with businesses.
Compliance posture at 73 percent, support and response commitments at 44 percent, technology partnerships at 52 percent: same pattern, all of it known internally, most of it undocumented publicly. A firm that closes six of these rows becomes markedly easier to describe than the competitor who closed none, and being easy to describe is most of what being recommended requires.
How to check what clause you have today
Ask three or four engines the buying question your customers ask, then read the sentence attached to every firm in the answer including yours. Ignore the ordering and study the descriptions. Compare each rival's clause against yours row by row against the ten categories above, and the gaps tend to be obvious within a minute. Do it again after you publish, because a description that changed is the only evidence that any of this worked.
Frequently asked questions
Does hiding your pricing hurt AI visibility?
It costs you a descriptive clause rather than the mention itself. AI answers name a vendor and then attach a short justification, and across the 64 engine answers we analysed, price or budget language appeared in 24 of them, or 38 percent. Firms that publish nothing about how they charge give the engine no material for that part of the description, so it either omits the dimension or fills it from elsewhere. The effect is subtler than disappearing, and in a side-by-side comparison it reads as being less concrete than the firm beside you.
Do I have to publish exact prices to get cited?
No, and the data suggests numbers are rarely what gets quoted anyway. In the answers we read, the price language was almost entirely about the model: flat-rate support, transparent pricing, predictable billing, suitable for a small business budget. Publishing how you charge, what moves the number, and what is included gives an engine something specific and accurate to say without putting a rate card in a competitor's hands.
What do AI engines actually say about a vendor they recommend?
We counted the categories across 64 real answers. Awards, rankings or review language appeared in 95 percent, geography in 88 percent, security and compliance in 73 percent, vertical or industry focus in 72 percent, company-size fit in 62 percent, tenure or scale in 56 percent, cloud and infrastructure in 55 percent, named technology partners in 52 percent, support and response commitments in 44 percent, and pricing posture in 38 percent. Every one of those maps to something you can state plainly on your own site.
Why do B2B services firms hide pricing in the first place?
For defensible reasons. Engagements are genuinely custom, a published figure anchors a negotiation before you have scoped anything, and competitors read your site. Those arguments have not weakened. The context around them changed, because a buyer now often runs a comparison through an AI engine before contacting any vendor, which moves the moment of comparison to a place where your silence has a cost you never used to pay.
What should a services firm publish instead of a rate card?
Four things, in plain sentences. The pricing model you use, such as per user, per device, fixed-fee project or monthly retainer. A floor, meaning a starting-from figure or a minimum engagement, so buyers can self-select. The two or three factors that move the number, such as headcount, site count, compliance scope or response-time commitments. And what is included against what gets billed separately. That answers the buyer's real question, which is whether they are in the right range, without committing you to a figure for unscoped work.
Will AI invent a price for my company if I do not publish one?
It can, and that is the sharper risk of the two. Engines fill gaps, and pricing is a gap buyers probe directly. With nothing of yours to retrieve, a model may generalise from your category, from a competitor's published page, or from an outdated listing, and the buyer receives that with the same confidence as a fact. Publishing your own pricing posture is partly a way of ensuring the version in circulation came from you.
Which AI engines care most about pricing?
In our sample, Gemini leaned on price language hardest, using it in 10 of its 16 answers. Claude and Perplexity used it in 5 answers each, and ChatGPT in 4 of 16. Sample sizes that small will not settle the question, and engine behaviour shifts with model updates, so treat the ordering as a hint rather than a target. The safer reading is that at least one widely used engine describes a meaningful share of vendors in commercial terms, so the dimension is worth covering.
Does pricing schema help AI find my pricing?
Structured data helps, though the visible prose matters more for what gets quoted back. SE Ranking found structured data on 71 percent of the pages ChatGPT cites, so marking up an Offer or Service with your pricing model, currency and coverage is worthwhile. The failure mode to avoid is marking up a page whose visible text still says contact us for pricing. Schema describes what the page says, so a page that says nothing gives the markup nothing true to carry.
Sources and further reading
- TofuBofu Research: MSP visibility by region: the 15-region, four-engine dataset behind the 64 answers analysed here, with the raw per-engine text.
- G2 2026 B2B buyer research: 51 percent begin on an AI chatbot, up from 29 percent, and 69 percent switched vendor based on AI.
- SE Ranking 2026: structured data appears on 71 percent of ChatGPT-cited pages.
- schema.org Offer: the markup type for a published price or pricing model.
- When AI gets your company wrong: the gap-filling behaviour described above, and how to close it.