YanMate

How many tokens is your character card?

Not every field on a character card costs the same. The persona, personality and scenario are sent to the model on every single message, so their token cost is permanent — every token there is one fewer available for the actual conversation. The first message is sent once. Example dialogue and lorebook entries are conditional: most frontends drop examples as the chat grows, and lorebook entries are injected only when one of their keys appears. A total token count that lumps all of these together tells you very little. Drop a card below and this page breaks the count down by field and by when each field is actually sent. It reads the file in your browser and never uploads it.

Count a card

Permanent tokens vs. the rest

Three groups, and knowing which group a field is in matters more than knowing its size. Every token spent on the first group is a token that can never hold anything you said.

Sent on every message

The persona (which most cards split across description and personality), the scenario, the system prompt and the post-history instructions. These go to the model with every turn you take, for the whole life of the conversation, so their cost is paid again and again.

This is the number worth optimising. Six hundred tokens of persona is six hundred tokens of context that can never hold anything you actually said, on message one and on message four hundred alike.

Sent once

The first message, and whichever alternate greeting you picked. It occupies room in the conversation like any other message, and it scrolls out of the window eventually the same way, but it is not re-sent as an instruction every turn.

A card with ten alternate greetings does not cost ten greetings. Only the one you open with is ever sent, which is why this page lists them separately and adds none of them to the permanent total.

Sent sometimes

Example dialogue and lorebook entries. Most frontends include examples early and drop them as real conversation accumulates, and a lorebook entry is injected only on the turns where one of its keys appears in the text.

Counting these as permanent is the most common way a token estimate misleads. A twenty-entry lorebook can look enormous in a total and cost almost nothing in practice, because the entries are alternatives to each other rather than a block.

How long should each field be?

There is no universal answer — it depends on your context window and how much history you want kept. These are the budgets YanMate holds its own cast to, enforced by the lint that gates a character before it is listed. They are an editorial standard rather than a rule of the format, and they are worth what that makes them worth.

FieldBudgetWhy there
Persona≤ 900 tokensRoughly 3,600 characters. Past it, a persona is usually two characters in a trench coat — a second personality bolted on rather than one written deeper.
Each greeting≤ 300 tokensRoughly 1,200 characters. A greeting is a scene, not a chapter: it sets a moment and hands the conversation over.
Scenario≤ 300 tokensScenario is context, not a second persona. When it grows past this it is usually holding character description that belongs in the persona.

If you want to see what a card written to these budgets reads like, the cast is written to them — every character on this site passes the same lint.

Why this number is an estimate

This page counts about four characters per token, which is the usual rule of thumb for English prose. A real tokenizer will differ — typically by 10 to 20 percent, in either direction, depending on how ordinary your vocabulary is and how much punctuation you use.

For anything that is not English written in the Latin alphabet, the rule breaks down badly. Japanese, Chinese, Korean, Cyrillic and emoji all tokenize much denser — often two or three times denser — so a count over that text is a floor rather than an estimate. This page says so explicitly when it sees enough non-Latin characters to matter.

No tokenizer is bundled here deliberately. The smallest of them ships a vocabulary file of several hundred kilobytes onto a page you may have opened to read one number, and character-chat frontends run dozens of different models with different tokenizers — so "accurate" would still mean "accurate for one model you may not be using". If you need an exact figure, count it where the model runs. If you want to know whether your persona is a rounding error or a third of your window, this is enough.

To see every field a card carries, including the ones this page does not count, the character card viewer reads the same formats and shows what is inside them. To write one rather than measure one, you can build a card from a form.

Questions

What are "permanent tokens" on a character card?
The fields a character-chat frontend re-sends to the model on every single message: the persona (description and personality), the scenario, the system prompt and any post-history instructions. Their cost is not paid once — it is paid on turn one and on turn four hundred, which is why a long persona shortens every conversation you will ever have with that character. The greeting, the example dialogue and the lorebook are not permanent in this sense, and totalling them together is what makes most token counts unhelpful.
How many tokens should a character description be?
There is no universal answer, because it depends on the context window you are running and how much history you want kept. As a working number, YanMate holds its own cast to 900 tokens of persona, 300 per greeting and 300 of scenario — roughly 3,600 and 1,200 characters. Those are this product's editorial budgets rather than a standard, and they are set where they are because a persona past 900 tokens is usually two characters in a trench coat rather than one written in more depth.
Does the first message count against my context every turn?
No. The first message is sent once, as a message in the conversation. It takes up room the same way any message does and it scrolls out of the window eventually, but it is not re-injected as an instruction on every turn the way the persona is. That distinction is why this page separates them: trimming a greeting saves you a few tokens once, and trimming a persona saves you those tokens on every message for as long as the character exists.
Do lorebook entries use tokens all the time?
No, and this is the most common misconception a total token count creates. A lorebook entry is injected only on the turns where one of its keys appears in the conversation. A twenty-entry lorebook that looks enormous in a total may cost nothing at all on a given message, because the entries are alternatives to each other rather than a block that is always present. This page counts them under "sometimes" and deliberately keeps them out of the permanent subtotal.
How accurate is this count?
It is an estimate, and the word is next to the number for that reason. It counts about four characters to a token, which is the usual rule of thumb for English text — a real tokenizer will differ, typically by 10 to 20 percent, and by far more for anything else. Japanese, Chinese, Korean, Cyrillic, heavy punctuation and emoji all tokenize much denser than four characters per token, so for text like that this page warns you outright that the number is a floor rather than a measurement. If you need an exact figure for a specific model, count it in a tool that runs that model's own tokenizer.
Is my card uploaded anywhere?
No. The file is read by JavaScript running in your browser, using the same parser this site uses server-side for imports. Dropping a card here produces no network request at all — you can confirm that in your browser's network tab. The paste tab does not even load the parser: it counts characters in text you typed and never leaves the page.

Other free tools

An AI character on YanMate.