83 of 519 AI tools keep their price on the home page and nowhere else
We already knew roughly two thirds of the tools we list publish a price. This time we recorded where it was. 432 put it at /pricing, 83 keep it on the home page only, and 108 of the 519 were invisible to a plain fetch until a browser ran their scripts.
Whether you publish a price is a decision. Where you put it is usually not one, and that is the problem.
We already measured the first part: across the 701 tools listed here, roughly 65% publish a price and 35% do not. That article is here, including the corrections it needed.
This is the other half. On 15 August 2026 we ran the census again and recorded not just whether we found a price, but which URL it was on. The answer matters because <tool> pricing is the highest-volume question anyone asks about a tool, at 66,140 searches a month across our 45 most-voted listings, and a growing share of that traffic now arrives through something that reads your page instead of a person who scrolls it.
Where the price actually is
Of the 519 listings where we found a figure:
| Where we found it | Listings |
|---|---|
/pricing | 432 |
| the home page, and nowhere else | 83 |
/plans or /price | 4 |
The census looked at /pricing, /plans, /pricing/, /price, and then the home page, in that order. It stopped at the first page carrying a currency figure.
So 432 of 519 do the obvious thing, and the obvious thing is right. /pricing is where a person guesses, where a link points, and where anything reading your site looks first.
The 83
Eighty-three tools publish their price only on their home page. Some of these are deliberate: a single-product tool with three tiers in a band halfway down the page has a real argument for not spinning that into a separate route.
The cost is that /pricing is the URL that gets linked, cited and remembered. A price living in the middle of a long home page is one that a link cannot point at, that a summary has to find among your feature copy, and that competes for attention with everything else on that page. If you keep it there, at minimum make /pricing an anchor or a redirect so the guess resolves.
The 108 that a fetch could not see
This is the sharper finding. 108 of the 519 published a price that a plain fetch did not receive. We only found it by running a real browser and waiting for the network to go quiet.
Recraft is the clean example. Fetched, its pricing page reads as a contact-sales page. Rendered, the same URL carries a set of prices that includes $0, $18 and $192. Nothing is hidden; the figures simply had not arrived when the fetch finished.
To anything that does not run your scripts, that page says nothing about price. That includes our first pass, and it includes a long tail of scrapers, link previews, feed readers and summarisers. If you are wondering why a tool that clearly publishes prices gets described as "contact for pricing" somewhere, this is usually why.
Server-rendering the numbers is the fix, and it is worth saying that the page does not have to stop being interactive to do it. The figures just have to be in the HTML that arrives.
The 103 with no pricing page at all
A hundred and three listings had no pricing page at any of the paths we tried, and no figure on the home page either. Split by the pricing model we have recorded for them:
| Our label | Listings |
|---|---|
| free | 49 |
| contact | 25 |
| freemium | 20 |
| subscription | 5 |
| paid | 4 |
Forty-nine of those are free tools, where there is genuinely nothing to price and no page to write. That leaves 54 listings that charge for something and have not written the page.
That group is the one giving away the most. <tool> pricing is the query furthest down the funnel that exists for a product: the person typing it has already decided to evaluate you and wants the number. If there is no page, they read whatever a third party wrote instead, and a third party writing about your price without your page is a third party guessing.
Ten tools whose price we could read and our own tool could not
One finding turned out to be about us rather than about them. Ten listings write their prices with the currency symbol after the number, and our pattern required it before. Four of those write it that way because that is how a price is written where they are. The other six write it the ordinary way, and the symbol lands after the number only because it sits in a separate element, so reading the page as text puts a line break between the figure and its currency.
Our census called all ten of them "no price". That was our bug, and it is fixed, but the general shape of it is worth knowing if you build pricing pages: a number and its currency in separate elements are two strings to anything reading the text, not one price.
What we would do with this
If you make a tool and want the answer to "what does it cost" to come from you:
- Put it at
/pricing. Not because it ranks better by itself, but because it is the URL everything guesses first. - Make sure the figures are in the HTML, not only in what renders after your scripts run.
- Keep the number and its currency symbol in the same element.
- If you have decided not to publish a price, that is a legitimate decision, and saying so plainly on a
/pricingpage beats having no page. "We price per seat, talk to us" is an answer. Silence is not.
Method, and what this cannot tell you
Two passes over all 701 listings on 15 August 2026. The first fetched each candidate path directly. The second re-visited every listing that came back without a price, in headless Chromium, waiting for the network to settle.
What it cannot tell you: eight sites blocked us completely, and we say nothing about their prices. Every pass used the same headless browser, so a site that blocks headless browsers specifically looks exactly like a site with no prices. And finding a currency figure is not the same as finding what a plan costs. We have measured that difference before: reading pages by hand, about one figure in ten was something else, a funding round or a benchmark table or an example query. This article counts pages, not prices, and everything above should be read that way.
If you want the check run against your own site, our submission flow does it as part of the readiness audit, and it will tell you which of these four situations you are in before you list.