How it works

Understand what each comparison represents

Learn when tokenization runs locally, when text is sent to a provider, and how model design can affect token counts across languages.

How token comparison works

TokEvals compares the exact same text across tokenizer and model families. The live ordering puts the smallest displayed token count first, making differences easy to inspect without treating token count as a model-quality score.

The current comparison is kept in session storage for this browser tab so moving between these pages does not reset it. Closing the tab ends that session.

For the exact definitions of counts, estimates, and normalized byte spans, read the methodology.

Local, byte-safe tokenization

Public tokenizer artifacts run in your browser. Where the tokenizer exposes lossless boundaries, each colored piece retains its raw bytes even when a token splits a UTF-8 character.

Exact and estimated API counts

Provider APIs differ. Exact badges identify exposed tokenizer output; estimate badges identify count-only services where raw content is approximated separately from request framing.

Multilingual comparisons

Try Korean, English, Turkish, mixed scripts, emoji, code, or your own domain text. Vocabulary coverage and normalization can make the same meaning occupy very different numbers of tokens.

Visually identical text can use different Unicode byte sequences. If your input is not in NFC (the composed form), the Explorer compares its token count with NFC for one visible local model. "Compose to NFC" changes your input only when you click it. The cost comparison itself makes no extra hosted-provider request.

Supported models and providers

Compare 112 model entries across leading providers. Related models share verified tokenizer work where possible, and any available entry can be added from the model picker above.

  • OpenAI
  • Anthropic
  • Google
  • Meta
  • xAI
  • DeepSeek
  • Mistral AI
  • Cohere
  • Alibaba Qwen
  • Microsoft
  • Moonshot AI
  • Z.ai
  • IBM
  • NVIDIA

Questions about tokenization and efficiency

What is tokenization efficiency?

Tokenization efficiency describes how compactly a tokenizer represents the same text. For an identical input, fewer tokens use less of a model's context window and may reduce token-based input charges, but they do not by themselves prove better model quality or lower end-to-end cost.

Why does the same text produce different token counts?

Each model family can use a different vocabulary, normalization process, pre-tokenizer, and merge strategy. Training-corpus coverage, writing system, spacing, morphology, emoji, and mixed scripts can therefore change how text is divided.

Are all counts and token breakdowns exact?

No. TokEvals labels exact local tokenizer output and exact provider results separately from estimates. Some provider APIs expose only a structured-message count, so TokEvals can estimate the raw content count but cannot truthfully show unavailable token IDs or boundaries.

Does the text leave my browser?

Local tokenizer rows run in the browser from pinned public artifacts. Rows labeled Provider API send the entered text through the TokEvals server to that provider so the provider can count or tokenize it.

Does the lowest token count identify the best model?

No. The ranking compares token count for the current text only. Model quality, output length, latency, pricing, caching, energy use, and task success are separate measurements that should be evaluated independently.

Review the public model catalog and its pinned sources onGitHub. The Explorer application is not open source.

15 characters37 UTF-8 bytes

Drag this handle to reorder, or focus it and use the up and down arrow keys. Home and End move a model to the start or end of the list. Manual reordering changes the Order by selection to manual.

GPT-5

OpenAI
exact

7 tokens

  1. 오늘149830
  2. 도5827
  3. ␠좋은70135
  4. ␠하루141945
  5. ␠보내129466
  6. 세요37436
  7. !0

o200k_base · Local · js-tiktoken@1.0.21

Meta Llama 4

Meta
exact

7 tokens

  1. 오늘115380
  2. 도2762
  3. ␠좋은48191
  4. ␠하루83197
  5. ␠보내105218
  6. 세요28350
  7. !13

llama4/tokenizer.model · Local · meta-llama/llama-models@0e0b8c51

Grok 4.7

xAI
exact

10 tokens

  1. 오늘61081
  2. 도2061
  3. ␠884
  4. 좋은66221
  5. ␠884
  6. 하루66473
  7. ␠884
  8. 보내60967
  9. 세요34787
  10. !885

grok-4.7 · provider API

Claude Opus 5.5

Anthropic

Token breakdown unavailable — Anthropic's API returns counts only.

claude-opus-5-5 · provider API

The displayed number is an approximate raw-content count from differential measurements (observed range 18–18). Anthropic reports 25 tokens for the complete structured input. Actual token IDs and boundaries are unavailable.