Why does each AI count a different number of tokens for the same text?

Each AI company counts tokens its own way. On one mostly Korean document, most companies landed near OpenAI's count, but Anthropic counted 1.55 times as many, so the same price can mean a bigger bill.

AI & Society · 2026-08-27

We sent the same document to AI models from seven companies. When the bills came back, the number of input tokens was different for every company. We had not changed a single character. It was the same document every time.

A token is the unit an AI uses to break text into pieces as it reads, and it is also the unit you are charged by. Grammar does not decide where those breaks fall. The breaks come from the huge amount of text the model was trained on, where certain chunks of characters kept appearing together. A token is roughly a word or a piece of a word.

Every AI company measures tokens with its own ruler

The catch is that every company draws up its own list of chunks, and with it its own tokenizer, the tool that counts tokens. A single company may also write a new list when it releases a new generation of models. Paste one sample sentence into OpenAI's public token counter and the newest generation counts 53 tokens, a model one or two generations older counts 57, and an even older one counts 64. If the count moves that much inside one company, the gap between companies is no surprise.

Length has the meter and weight has the gram, shared units everyone agrees on. Tokens have nothing like that. Each company is measuring the same text with a different ruler.

Even within OpenAI, each generation counts tokens differently · Tokens counted for one sample sentence in OpenAI's public token counter · Newest generation · One or two generations older · Even older model · 53 · 57 · 64 · Counted on one sample sentence. A different text gives different counts.
Tokens counted for one sample sentence in OpenAI's public token counter

The price per token stayed the same, but the bill went up

We first noticed the problem in a talk at a FinOps event. FinOps is the practice of tracking and managing cloud and AI spending. The speaker explained why it is so hard to estimate what AI will cost, and pointed out that because companies count tokens differently, the same price list can lead to very different amounts actually paid.

There is a real case of this. In April, Anthropic released a new model and changed the way it counts tokens. The listed price per token was the same as for the previous model, yet the same text now produced up to 35% more tokens. Not a cent was added to the price, and still the bill grew.

We counted the tokens in one Korean document across sixteen models from seven companies

So we measured it ourselves at Polora. We attached the same report, written mostly in Korean, to the same question and sent it several times to sixteen models from seven companies. Then we collected the token counts each company returned as the basis for its charge.

Taking OpenAI's count as 1.00, Google came to 1.05, Mistral to 1.06, DeepSeek to 1.09, xAI to 1.15 and Moonshot to 1.19, all fairly close to one another. Anthropic alone stood far apart, at 1.55.

These figures are not chance variation from one request to the next. We sent the same input 121 times to two models of the same generation from the same company, and the token count did not change once.

Only Anthropic counted the same Korean document at 1.55x · Input tokens each company billed for the same mostly Korean report (OpenAI = 1.00) · OpenAI · Google · Mistral · DeepSeek · xAI · Moonshot · Anthropic · 1.00 · 1.05 · 1.06 · 1.09 · 1.15 · 1.19 · 1.55 · Polora measured this across sixteen mod
Input tokens each company billed for the same mostly Korean report (OpenAI = 1.00)

To see what an AI really costs, multiply the price by the token count

A difference in token counts is a difference in money because AI price lists are written per token. If two companies both list $2 per million tokens, but one counts the same text as 1.55 times as many tokens, you pay 1.55 times as much. It is like comparing price tags from two countries with different currencies while ignoring the exchange rate.

None of this says anything directly about quality. Splitting text into smaller pieces can help a model perform better, and companies may have set their prices with that in mind. The point is that putting prices side by side is not enough. You only see what you will actually pay once you multiply by how many tokens each company counts for your own documents. Keep in mind that this measurement used a document written mostly in Korean, so a different mix of languages will give different ratios.

When you compare quotes, you check that both sides count quantities the same way before you compare unit prices. In our measurement, the companies counted the same Korean document differently. AI pricing may one day need a shared unit, the way length has the meter.

In the next piece, we measure how far the bill drifts apart when the same question is asked in English and in Korean. For people who write in Korean, the numbers look a little unfair.

Why does each AI count a different number of tokens for the same text?Why do AIs bill different token counts for the same Korean text?Each AI company counts tokens its own way · The same document gets a different token bill from each company · ※ Token : the unit an AI breaks text into as it readsOpenAI · Google · Mistral · DeepSeek · xAI · Moonshot · Anthropic · 1.00 · 1.05 · 1.06 · 1.09 · 1.15 · 1.19 · 1.55 · Only Anthropic counted the same Korean document at 1.55x · Input tokens each company billed for the same mostly Korean report (OpenAI = 1.00) · Polora measured this across sixteen mod121 runs, and the token count never changed · Same input, 121 times, to two same-generation models from one companySame price per token, up to 35% more tokens for the same text · That was April, when Anthropic's new model changed how tokens are countedAn AI's real price is the price per token times the token count · At the same price, more tokens for the same text means a bigger billRead the full story at · polora.ai