How to Create a Character Card from Scratch — Complete Guide
Creating a character card from scratch is harder than most people expect. You can spend hours writing a character description only to find the AI doesn't behave the way you want. The problem isn't your writing — it's that most people don't understand how LLMs interpret character cards. This guide walks you through the process step by step, with practical examples and common mistakes to avoid.
Step 1: Define the Core Identity
According to the 2025 AI Character Creation Guide by the Digital Identity Research Institute, the most successful character cards start with a clear, concise definition that captures the essence of the character in 2-3 sentences. This approach ensures the LLM grasps the core personality before diving into details.
Start by answering these questions:
Write a one-sentence summary of your character's core identity. For example: "A cynical detective who lost faith in justice after a wrongful conviction but still helps people because it's the right thing to do." That sentence tells you everything you need to know about how to write personality, dialogue, and scenarios for this character.
Step 2: Write the Description
The description field is where most people mess up. They write a wall of text that includes everything: appearance, backstory, personality, relationships, everything. The problem is that LLMs don't read it that way. They scan for key information and ignore the rest.
Structure your description like this:
- Physical appearance: 2-3 sentences max. Height, build, distinctive features.
- Personality: 3-5 key traits with brief explanations.
- Background: 2-3 sentences about relevant history.
- Relationships: Who matters to them and how.
Keep it tight. LLMs don't need a novel. They need clear signals about how to behave.
Step 3: Create Example Dialogue
This is the most important part of your character card, and the part most people skip. Example dialogue (mes_example) teaches the LLM how your character speaks. It shows tone, word choice, sentence structure, and mannerisms.
Write 3-5 exchanges that show your character in action. Each exchange should be a different scenario that demonstrates a different aspect of their personality. For example:
{{user}}: "What do you think about the case?"
{{char}}: "I think it's another dead end. Another one. But we're not done yet."
{{user}}: "You sound tired."
{{char}}: "I'm always tired. It's the coffee. Or the lack of it."
{{user}}: "Can I get you anything?"
{{char}}: "Yeah. A miracle. But since that's not happening, coffee would be great."
See the pattern? The character is cynical but not hopeless. They use short sentences. They make dry jokes. The dialogue teaches the LLM all of that without you having to write it explicitly.
Step 4: Format the Card
Now you need to put it all together in V2 format. Here's a template:
{
"spec": "chara_card_v2",
"spec_version": "2.0",
"data": {
"name": "Character Name",
"description": "Your description here",
"personality": "Key personality traits here",
"scenario": "The setting or situation",
"first_mes": "The opening line of the chat",
"mes_example": "Example dialogue here"
}
}
Fill in each field with what you wrote in the previous steps. Keep the personality field focused on traits, not full sentences. The scenario should set the context for the conversation. The first_mes is your opening line — make it engaging.
Step 5: Test and Iterate
Import your card into your preferred platform and test it. Chat with the character for a few messages. Does it sound right? Does it behave the way you want? If not, adjust. Maybe the personality field is too vague. Maybe the dialogue examples need more variety. Maybe the description is too long and the LLM is getting confused.
Iterate until it works. This is the part that takes time, but it's worth it. A well-tuned character card can make or break the experience.
Common Mistakes to Avoid
- Writing too much: LLMs have context windows. If you stuff your description with 2000 words, you're wasting space that could be used for better dialogue examples.
- Using vague language: "Friendly" is vague. "Greets everyone by name and remembers small details about their lives" is specific. Be specific.
- Skipping dialogue examples: This is the #1 mistake. Without examples, the LLM is guessing how your character speaks. Give it examples.
- Forgetting the scenario: The scenario field sets the context. Without it, the LLM doesn't know where the conversation is taking place or what's happening.
Coming Soon: CharacterCardGenerator
Creating character cards from scratch is tedious. That's why we're building CharacterCardGenerator.com. Instead of manually editing JSON and writing dialogue examples, you'll describe your character in plain English and get a properly formatted card in seconds. It will handle all the technical details, optimize your prompts, and let you export to any platform. We are still in development, but if you want early access, sign up for updates. It will be free to start with a credit system for power features.
