Consistent characters
The complete method to keep the same person, pet, product or place in every image and video, with assets, approved pictures, mentions and identity lock.
A consistent character is a person, pet, product or place that looks the same in every image and video of a project. In Nodaro, you define the subject once as an asset, approve its pictures, and connect the asset to every node that shows it. This guide covers the whole method, from the first photo to scenes with several characters and to video.
The method at a glance
Consistency is built in layers. Most projects need the first four. Add the others when a face still drifts.
| Layer | What it does | Where you set it |
|---|---|---|
| An asset | Holds the subject's identity: approved pictures and a canonical description. | The Character, Animal/Creature, Object/Props and Location asset nodes |
| Approved pictures | Give every generation the same starting point: a portrait and its angles. | The asset's studio |
| Connections and mentions | Send the asset to each image and video node, and place it in the prompt. | The Assets input and @ mentions |
| Roles | Say what to take from each picture: the face, the clothes, the background. | The mention pill and the node's Role menu |
| Identity lock | Ask the model to keep the face exactly. | The node, the studio or a ~lock mention |
| Boards and grids | Put every angle of the subject into one reference image. | Generate Image presets, and the studio's Sheet and Board pages |
| The right model | Use models that accept reference images. | Generate Image and Generate Video |
| A trained model | Gives the closest likeness in Generate Image, on Nodaro Cloud. | The studio's LoRA page |
Step 1: Define the subject once
Choose the asset that fits the subject. Each one has its own studio and its own guide.
| Subject | Asset | Guide |
|---|---|---|
| A person | Character Asset | Character Studio |
| An animal, a pet or a fantasy creature | Animal/Creature Asset | Animals and creatures |
| A product, a prop, a vehicle or furniture | Object/Props Asset | Objects and props |
| A place | Location Asset | Locations |
| Only a face, for lip-sync or face swap | Create Face | — |
For a person, build the character in this order:
Start from good photos
On the References page of Character Studio, upload real photos of the person. One sharp, evenly lit, front-facing photo matters more than any setting. A soft, filtered or crowded photo is the most common reason a face drifts.
Approve a portrait
On Profile, generate 2 or 4 portrait candidates and approve the best one. Approving also writes the canonical description, which Nodaro adds to prompts that use the character.
Build the identity anchor set
On Appearance, generate the five head angles: front, 3/4 left, left profile, right profile and 3/4 right. Every picture the studio makes afterwards uses them as references, so expressions and poses keep the same face.
Add the variants your story needs
Generate the expressions, poses and body angles the scenes need. Name them clearly, because you mention them by name, as in @maya:1:smile.
Step 2: Connect the character to every shot
Connect the Character Asset node's Character output to the Assets input of every Generate Image and Generate Video node that shows the character. Nodaro then sends the character's portrait, any variants you mention and the character's description with every run, on every model that accepts references.
Mention the character in the prompt
Type @ in the prompt and choose the character, and a mention such as @maya:1 appears as a pill. A mention places the character exactly where you wrote it in the sentence. It also chooses which picture to send and what to take from it.
| Mention | What the node sends |
|---|---|
@maya:1 | The portrait, described as "the person from reference image A". |
@maya:1:smile | The smile expression instead of the portrait. |
@maya:1:face | The portrait, used only for the face. The clothes and hair come from your prompt. |
@maya:1:walking:clothes | The walking pose, used only for the clothes. |
@maya:1~lock | Forces the identity lock on for this mention. |
@maya:1~nolock | Forces the identity lock off for this mention. |
Click the thumbnail on a mention pill to swap the picture, and click its label to choose the role. The mention name comes from the character's name: "Maya Chen" becomes @maya-chen:1.
You can mention an uploaded picture the same way. Give an Upload Image node a label, such as "Jacket", and write @jacket:1:clothes.
Check what the model receives
The settings panel of an image or video node has an Injected references list. It shows every picture the node will send, with the character or variant each one comes from.
- Order. Pictures from the References input come first, then assets, in the order you connected them. That order gives the letters A, B, C in the prompt. Drag the tiles to reorder them: most models treat the first reference as the most important.
- Remove. Click the cross on a tile to remove it. On a mention, this removes the mention from the prompt. On a character's portrait, it hides the portrait for this node only; mentioned variants still go.
A character you connect but do not mention still sends its portrait. A character's Image output sends only the picture, as a plain reference, without the description or the role.
Step 3: Say what to take from each picture
Every reference has a role that tells the model what to take from it. A character starts as person, the whole subject. The other character roles are face, clothes, hair, pose, expression and style, or any word of your own.
- The node sets the default. The Role menu on the Character Asset node applies to every reference from that character.
- A mention overrides it. A role on one mention wins over the node's default.
- ref-only sends the picture with no phrase. The model sees the picture but is not told what to take from it.
Roles let you combine several references in one prompt. For example, take the face from one picture, the clothes from a second and the background from a third. Read Reference roles for every role of every asset type.
Lock the identity
The identity lock adds a short line to the prompt that asks the model to keep the face. Set it on the node's Identity lock row, in the settings panel, or on the studio's Profile page. The three places change the same setting.
| Level | What it adds |
|---|---|
| Off (default) | No identity line. The role alone guides the model. |
| Soft | A mild line: preserve the overall likeness. |
| Strict | A strong line: match the face exactly. |
Each lock line names its reference image, so scenes with several characters stay clear. To change the lock for one mention only, open the pill's menu and turn on Identity lock, or type ~lock or ~nolock after the mention.
Start with Off and a clear role. Turn on Soft or Strict when the face drifts. For locations, the lock line asks the model to match the architecture, layout and lighting instead.
The settings panel of the Character Asset node also has Inject identity description in downstream prompts. Turn it on to add the canonical description to the prompts of connected image and video nodes.
Step 4: Anchor with a board or a grid
A single image that shows the subject from every side is a strong anchor. Nodaro makes two kinds.
- A consistency grid is a clean grid of standard angles with no text, made for models. Make one from a photo with the Character Reference Grid preset of Generate Image.
- A reference board is an editorial sheet with labels and a palette, made for people.
In Character Studio, the Sheet page composes a turnaround such as Studio · Main. The Board page composes a dense identity board from 2 to 12 of the character's pictures, and the @ menu lists boards first.
Connect a grid or a board to the References input of each image node, or to the Image Refs input of Generate Video. Read Reference boards for every preset and the model that suits it.
Several characters in one scene
- Connect every Character Asset node to the Assets input.
- Mention each character in the prompt, for example
@maya:1 hands a letter to @leo:2. - Give each character a different name, so each mention is clear.
When a character and another asset share a name, the character wins. The order is: characters, then locations, named images, creatures and objects.
For a story with two to four characters, build one Cast Mega Grid. Each character gets a labeled strip in one image. Then refer to the characters by the names on the grid instead of describing them again. The less you describe a face, the less it drifts.
Choose a model that accepts references
A character's pictures only help on a model that accepts reference images. These image models do:
| Model | Maker | Modes | Credits | Details |
|---|---|---|---|---|
| Nano Banana Pro | Text to image, Image to image | from 45 | Top-tier Nano Banana — best for text rendering, diagrams, and complex compositions. | |
| Nano Banana 2 | Text to image, Image to image | from 20 | Newer Nano Banana with native resolution control (1K/2K/4K) and Google Search context. | |
| GPT Image 2.5 Flare | OpenAI | Text to image | from 15 | Fast everyday GPT Image 2.5 - higher quality than GPT Image 2 at about half the latency. The default of the pair: social and creator content, campaign variants, thumbnails, rapid iteration, high-volume work. |
| GPT Image 2.5 Sunburst | OpenAI | Text to image | from 15 | Precision GPT Image 2.5 - trades generation time for tighter control and detail fidelity. Pick it for brand-sensitive and production work: packaging, diagrams, ecommerce retouching, polished campaign creative. |
| GPT Image 2 | OpenAI | Text to image | from 15 | Next-gen GPT Image — broader aspect ratios, resolution-based pricing (1K/2K/4K). |
| Seedream 5 Pro | Bytedance | Text to image | from 18 | Flagship Seedream 5 Pro — strongest instruction following and visual reasoning. Basic = 1K, high = 2K. |
| Flux Kontext Pro | Black Forest Labs | Text to image, Image editing | 13 | Context-aware editing and style transfer. Strong at preserving subject identity through edits. |
- For the same face, use the Nano Banana family. In our tests, Nano Banana Pro and Nano Banana 2 reproduced the same person from a photo.
- GPT Image 2 makes a look-alike. GPT Image 2 follows complex layouts well, but its faces were similar rather than identical.
- Some models take no references. Imagen 4, Ideogram V3 and Z-Image ignore attached pictures. The settings panel warns you and suggests Nano Banana Pro.
- Each model accepts a limited number of references. When you attach more pictures than a model accepts, the settings panel warns you, and only the first ones are sent. Put the most important picture first.
For a comparison of every model, read Choosing a model.
Keep a character consistent in video
In video, the face has to hold across every frame of the clip. Use one of two methods, or both.
Method 1: start from a still
Make the shot as a still with Generate Image, with the character connected. Then connect the still to the Start Frame input of Generate Video. The first frame carries the identity, and the model animates from it.
This method works with every image-to-video model, including VEO 3.1 Quality and the Kling family. It is also the way to bring a trained character into video.
Method 2: give the video model references
Some video models accept reference images and use them as identity references. Connect the Character Asset node to the Assets input of Generate Video, and a grid or board to Image Refs. The references work with or without a start frame.
| Model | References it accepts | Good to know |
|---|---|---|
| Seedance 2, 2 Fast and 2 Mini | 9 images, 3 videos and 3 audio clips | With any reference connected, start and end frames join the references. |
| Seedance 2.5 | 30 images, 10 videos and 10 audio clips | Up to 30 seconds in one clip. |
| MiniMax Hailuo 3 | 9 images, 3 videos and 3 audio clips | Frames join the references when any reference is connected. |
| Wan 3.0 and Wan 3.0 Prime | 10 images, 5 videos and 5 audio clips | Frames join the references when any reference is connected. |
| Gemini Omni and Gemini Omni Flash | 7 images | A start frame takes the first place. References past the limit are dropped, not refused. |
| VEO 3.1 Fast and VEO 3.1 Lite | 3 inputs in total, and a start frame takes one of them | With references, the clip is 8 seconds and the end frame is dropped. |
| Kling 3 Omni | Up to 7 images | Also accepts an end frame. |
| HappyHorse 1.1 Ref2V | 1 to 9 images | Works from references only. |
VEO 3.1 Quality has no reference mode. Use VEO 3.1 Fast or Lite for references, or give Quality a start frame.
Point the video prompt at a reference
On a reference-capable model, bind a phrase to one reference with a token. The @ menu offers these tokens, or you can type them.
| Token | Becomes |
|---|---|
{image:1:person} | "the person from @image_1" |
{image:2:jacket} | "the jacket from @image_2" |
{video:1:clip} | "the clip from @video_1" |
Pictures from Image Refs are numbered first, then the assets. A start or end frame is never numbered: Nodaro adds it at the end and names it as the opening or closing frame. Characters and locations also keep their @maya:1 mentions in video prompts.
More video tips
- Use the Scene Recipes presets. In Generate Video, the Scene Recipes presets are built to read reference boards and cast grids. See Presets.
- Let Auto decide how a frame travels. The Seedance 2 family keeps its look better when the start frame travels as a reference image. Send frames as set to Auto chooses this for you.
- Animate full-body pictures. A character's Motions in the studio are animated from a front body angle, which moves better than a head-and-shoulders portrait.
Trained characters
On Nodaro Cloud, you can train a custom model on a character's pictures. When a Generate Image node uses that one character, it runs the trained model for 20 credits per image. The trained model gives the closest likeness, but only in Generate Image and only with a single character. See Character training.
When the face still drifts
| What you see | What to do |
|---|---|
| The face changes from image to image | Check that the model accepts references. Approve a portrait and build the identity anchor set. |
| A look-alike instead of the same person | Switch to Nano Banana Pro or Nano Banana 2. Set the identity lock to Soft or Strict. |
| The reference's outfit appears when you want a new one | Use the face role, for example @maya:1:face, and describe the new outfit in the prompt. |
| Two characters blend or swap | Mention each one by name, give them distinct names, or build a Cast Mega Grid. |
| The references seem ignored | Read the warning next to the model. The model may take no references, or fewer than you attached. |
| The face drifts in video | Start from a still, or switch to a model from the video references table. |
| A board or grid has a drifted face | Generate it again. A slightly wrong board makes every later image slightly wrong. |
Tips
- Fix the photo first. No setting makes up for a soft, filtered or crowded photo.
- Describe less, reference more. Let the pictures carry the face, and let the prompt carry the action.
- Name everything. Characters, variants and uploaded pictures are easier to mention with short, clear names.
- Keep one style per project. A realistic character next to an anime one breaks the look of a story.
- Regenerate instead of settling. A drifted picture carried forward drifts every picture made from it.
From code and agents
Code can send the same references without the canvas. A POST /v1/generate-image call accepts reference image URLs, such as a character's approved pictures read from the API. It also accepts structured references that carry a role and an identity lock for each picture. See Characters and the MCP tools.
Frequently asked questions
Related
Character Studio
Reference roles
Reference boards and consistency grids
Character training
Generate Video
Last updated on
Guides
Step-by-step Nodaro guides on consistent characters and worlds, choosing models, creative controls, sharing workflows, social publishing and automations.
Character Studio
Build a reusable character in Character Studio. Generate and approve a portrait, add angles, expressions, poses and motion clips, then give it a voice.