LonelyTavern

How to write an AI character card that works, field by field

Last updated September 17, 2026 · Any app that imports character cards · By the developer of LonelyTavern

The short answer

What each field does

The fields come from the Character Card V2 and V3 specs, so a card made for one app opens in another. What matters is when each field reaches the model.

Two placeholders work in every field: {{char}} becomes the character's name and {{user}} becomes yours. Use them instead of names, so the card survives a rename and a change of persona.

The first message sets the style

The model treats the first message as the example of a good turn. A 600-word opener produces 600-word replies. An opener in the character's voice, in the present tense, with one concrete thing happening, produces replies like that.

Example dialogue

Two or three short exchanges show register better than any adjective: sentence length, slang, how much the character says versus does. Start each exchange with <START> and prefix lines with {{char}}: and {{user}}:. Three ways it goes wrong:

Your token budget

A token is about four characters of English, so 1,000 tokens is roughly 750 words. The hosted apps cap cards at 1,000 to 1,500 tokens because their models hold only 8,000 or so. With your own key the window is rarely the limit, but the card still costs money on every message and dilutes what the model attends to. Keep the permanent fields under 2,000 tokens, and cut in this order:

  1. Instructions to the model. "Never speak for {{user}}", "stay in character", "respond in detail". These fill most long cards and belong in a system prompt, if anywhere.
  2. Adjective lists. "Kind, witty, brave, loyal" gives the model nothing to act on. One habit beats five adjectives: "answers questions with a question of her own".
  3. Backstory the character would not mention in the first hour. Move it to a lorebook entry keyed to the words that should trigger it. It then costs nothing until it matters.

Fix: the character speaks and acts for you

The model writes your lines because the card showed it your lines. Cut every action or speech by {{user}} from the first message and the examples, then shorten the first message; a long opener invites the model to fill the space with both sides. If it persists, describe the character rather than lecture the model: "she waits for {{user}} to answer" does more than a paragraph of rules.

Fix: the character agrees with everything

Chat models are trained to be agreeable assistants. A card that gives the character nothing to want produces an assistant in costume. What gives a character a spine:

Fix: the character contradicts itself

Usually the description, scenario, and first message were written at different times and disagree about age, setting, or relationship, and the model picks one per reply. Read the three in a row before saving. The other version is escalation: a description that is mostly appearance and "seductive" adjectives drifts to romance in three messages whatever the scenario says. Describe what they do all day, and pace the relationship in the scenario and the first message.

Format, and letting an AI draft it

Current models read plain prose best, and it costs the fewest tokens. Compact list formats such as PList still work. W++ and bracket-heavy pseudo-JSON spend tokens on punctuation; the community stopped recommending them. Whatever you choose, use one format for the whole card. An AI can write the first draft, but its drafts are long, even, and adjective-rich, and users who compare report that a 500-token hand-written card beats a 10,000-token generated one. Cut a generated draft by half, replace each adjective list with one habit, and write the first message yourself.

Diagnosing a card you downloaded

Most people import a card rather than write one, and then it behaves badly. Open it and read the description. If half of it is rules for the model, the card was built for a hosted platform with no system-prompt field, where creators stuff everything into the description; delete the rules and keep the character. If the description is three thousand words of history, cut it to what matters today and move the rest to a lorebook. If the first message is huge, trim it; the replies shrink with it. Only then blame the model.

Before you save

Where to put the card

LonelyTavern is a bring-your-own-key character chat app for iPhone and Android. It imports V1, V2, and V3 cards as PNG or JSON, keeps a lorebook embedded in the card, and its editor has every field above, with the overrides under Advanced. Characters and chats stay on the device. Free, no account, no ads, 18+.

Download on the App Store Get it on Google Play

Related guides: Which API key you need for AI roleplay · all guides.

Sources

SillyTavern, JanitorAI, SpicyChat, Character.AI, and Google are independent products of their respective owners. LonelyTavern is not affiliated with or endorsed by any of them. Limits and advice were read from their pages on September 17, 2026 and may have changed since.