Ibin Mathew
Projects
Case study · LLMs & tokenizers

The German token tax.

The same request costs far more tokens in German than in English — and since LLMs bill per token, that gap is a real, hidden bill. I measured exactly how big it is across nine tokenizer families.

9 tokenizers/24 prompt pairs/5 domains/Source ↗
+68%
More tokens for German, overall
2.02×
Worst case — Claude (Opus 4.x)
1.35×
Best case — Gemini / Gemma
24
EN/DE prompt pairs × 9 tokenizers

German is structurally token-expensive. Long compound nouns (Geschwindigkeitsbegrenzung) and richer inflection mean the same meaning gets chopped into more pieces — so a German-language product can quietly cost far more to run than its English twin, for identical content.

I built a harness that runs 24 semantically-equivalent English/German prompt pairs through 9 tokenizer families, using the real tokenizer where it's public, the official API for Anthropic, and a proxy for Google. Here's what fell out.

(01)Absolute cost

English vs German, per tokenizer

The same prompt, tokenized in each language. Every model needs more for German — Claude's tokenizer literally doubles it.

EnglishGermanavg tokens / prompt
Claude (Opus 4.x)
Anthropic
4692
cl100k · GPT-3.5/4
OpenAI
2851
Llama 3.x
Meta
2851
Qwen3
Alibaba
2850
DeepSeek V3/R1
DeepSeek
2849
Tekken v7
Mistral
3657
o200k · GPT-4o/4.1/5
OpenAI
2840
Llama 4
Meta
2839
Gemini/Gemma (proxy)
Google
2838
020406080100
(02)Relative overhead

The overhead, ranked

Newer tokenizers (o200k, Llama 4, Gemini) handle German far more gracefully than the older generation — a ~35% tax versus ~80%+.

extra tokens German needs vs English
overall +68%
Claude (Opus 4.x)
Anthropic
+102%
cl100k · GPT-3.5/4
OpenAI
+81%
Llama 3.x
Meta
+81%
Qwen3
Alibaba
+79%
DeepSeek V3/R1
DeepSeek
+73%
Tekken v7
Mistral
+60%
o200k · GPT-4o/4.1/5
OpenAI
+43%
Llama 4
Meta
+39%
Gemini/Gemma (proxy)
Google
+35%
(03)By text domain

Where German inflates most

Domain matters as much as model. Everyday German is near parity on modern tokenizers — but legal and technical compounds push the ratio toward 2×.

German ÷ English token ratio · by domain
Everyday
Business
Legal
Technical
Longform
Claude (Opus 4.x)Anthropic
1.84
1.89
1.87
2.11
2.14
cl100k · GPT-3.5/4OpenAI
1.29
1.55
1.79
1.91
1.99
Llama 3.xMeta
1.29
1.55
1.79
1.91
1.99
Qwen3Alibaba
1.26
1.52
1.79
1.89
1.97
DeepSeek V3/R1DeepSeek
1.31
1.52
1.74
1.81
1.86
Tekken v7Mistral
1.35
1.50
1.54
1.68
1.66
o200k · GPT-4o/4.1/5OpenAI
1.02
1.19
1.40
1.60
1.53
Llama 4Meta
1.02
1.20
1.28
1.58
1.51
Gemini/Gemma (proxy)Google
1.02
1.14
1.27
1.51
1.45
1.0×
2.1×
So what

The takeaways

  • German isn't a little more expensive — it's ~68% more on average, and up to 2× on the wrong tokenizer. For a German-first product, that's a line item.
  • The tokenizer matters more than the model. Switching from cl100k to o200k roughly halves the German penalty for the same text.
  • The pain is concentrated in compounds: legal, technical and long-form German inflate hardest, while everyday chat is nearly free.
  • If you serve German at scale, budget for it, prefer a modern tokenizer, and measure your own domain — the spread is too wide to guess.

Full method & code on GitHub.

The prompt set, per-tokenizer harness and chart scripts are all open source — reproduce it or run it on your own domain.

View the repository