LivePositively

How to Keep a Character Consistent Across AI Images and Video

Sp

SpicyAPI Team


6 minutes

Man in a long coat on a rooftop at blue hour

A character sheet and references keep the look consistent.

You generate a red-haired courier in a yellow raincoat. The next prompt gives you a different woman: the hair is auburn, the coat has turned mustard, and the cargo bike has lost a wheel basket. If you are making a comic, a short film, a product mascot or a social series, this drift is the main obstacle between a pile of nice pictures and a story.

Consistency can be managed, though never perfectly. This guide covers the techniques that work, in the order we would apply them, using one original adult character: a courier who rides a cargo bike through a rainy city.

Why consistency breaks

Understanding the cause tells you where to put your effort.

Every generation starts from fresh noise. An image or video model does not remember your last output. Each request samples a new result from everything that matches your words, so the same prompt gives you siblings, not copies.

Prompts are ambiguous. "Red hair" covers copper, ginger and burgundy, and the model picks a different one each time.

Small wording changes shift a lot. Swapping "raincoat" for "rain jacket" can change the length, the collar and the fit.

This is how the models work, so the fix is to give them less room to guess.

Write a character sheet and reuse it word for word

The cheapest technique is also the most effective. Before generating anything, write a short character sheet as plain text and paste it into every prompt without rewording.

For the courier it might read:

> Adult woman, about 30, oval face, strong eyebrows, light freckles across the nose, shoulder-length wavy copper-red hair tucked behind one ear, olive-green eyes. Bright yellow hooded raincoat with a navy zip and a reflective stripe on the left sleeve, dark grey trousers, white sneakers. Small brass compass pendant on a leather cord.

A few habits make a sheet work:

  • Be specific about colors. "Copper-red" beats "red".

  • State the age range as an adult. It keeps the model from guessing and keeps your series appropriate.

  • Include one distinctive accessory. A pendant, a scarf pin or an unusual bag gives viewers an instant identity cue, and gives you something to check in each shot.

  • Keep the order fixed. Change only the part that describes action and setting.

  • Version it. If the character needs a new detail, save the sheet as v2.

Use reference images as anchors

Words only go so far. Once you have one image you are happy with, treat it as the canonical reference and feed it back in.

For images, many models accept a reference input: you provide the picture and describe the change ("same woman, now standing in a doorway, holding a paper map").

For video, image-to-video is the strongest anchor. Instead of describing the courier from scratch in a text-to-video prompt, start from a still of her. The first frame is then fixed, and the model only has to animate it. Approve your stills first, then build every shot from one.

Two cautions: a reference anchors the look but not the pose, so describe the pose; and editing an edited image erodes likeness, so always return to the original reference.

Seeds help a little

Many tools let you reuse a seed, the number that starts the random sampling. With an identical prompt it gives a similar result, which helps when testing a tiny change such as lighting. But change the prompt, resolution or model version and the seed no longer holds the picture, and not every model honors it. Treat it as a convenience, not a system.

A LoRA for a recurring original character

If the character will appear dozens of times, consider a LoRA: a small add-on file trained on a set of images of your character (or your style) that nudges a base model toward it. It is the strongest option for long series, but it is one technique among several, and it asks more of you.

Three things matter:

  1. The base model must match. A LoRA trained for one model family does nothing useful on another. The usual failure is silent: the generation runs, you pay for it, and the result looks as though no LoRA was applied. Check the base model named on the LoRA's page before you use it.

  2. Train on your own material. Use images of your original character, or of people who consented. Check the license of any LoRA you download.

  3. Hosted use is possible without a GPU. At the time of writing (October 2026), SpicyAPI's LoRA-capable models accept a pasted Hugging Face or Civitai link or an uploaded .safetensors file (its LoRA model hub lists them), and you pay the normal per-image or per-second price of the model you run it on. FLUX.1 Dev LoRA, for example, is $0.018 per image.

Keep lighting and lens consistent too

If shot one is lit by soft overcast light and shot two by hard neon, the courier looks like a different person even when her face is identical.

Add a "scene sheet" with fixed language for light and camera: "overcast daylight, wet streets, shallow depth of field, 35mm lens, eye-level framing". Change it deliberately, not by accident.

Run continuity checks between shots

Before approving a shot, put it next to the previous one and check a short list:

  • Hands. Finger count, ring or no ring, which hand holds the map.

  • Accessories. Is the pendant still there, on the same side? Is the bike basket present?

  • Outfit details. Zip color, reflective stripe on the correct sleeve, shoe color.

  • Hair. Length, parting, whether it is tucked behind the same ear.

For video, scrub frame by frame near the start and end of each clip, where drift tends to show up.

Regenerate or fix in editing?

Not every flaw deserves another generation. A rough rule we use:

  • Regenerate when the face, body proportions or overall outfit are wrong, or when the motion is broken. These cannot be repaired afterward.

  • Fix in editing when the problem is small and local: a slightly off color, a stray object at the frame edge, or a pacing issue.

  • Change the shot when a detail fails three times. Reframe so the troublesome hand or accessory is out of view.

Organize your assets

Consistency is also an organizational habit. Keep one folder per character with a predictable structure:

  • character-sheet-v1.txt, v2.txt and so on

  • refs/ containing the approved reference stills, named by angle and expression (courier_front_neutral.png, courier_three-quarter_smile.png)

  • shots/ named by scene and take (s03_t02_rain-corner.mp4)

  • notes.txt recording the model, prompt and settings behind each approved shot

Save the strongest frames as new references. If a clip contains a frame where the face is perfect, export it and start the next shot from it. Download results promptly; hosted services keep outputs only for a limited time (SpicyAPI stores them for up to 14 days).

A note on whose face you are using

A recurring character is a creative asset only when it belongs to you. Build characters from scratch, or use real people only with their clear, informed consent. Do not imitate a real person's likeness, whether a public figure or someone you know, without permission. That applies to prompts, references and LoRA training sets alike.

Conclusion

Consistency does not come from one clever trick. It comes from stacking small constraints: a written character sheet, approved reference stills, a fixed scene sheet, a LoRA when the series is long enough to justify one, and a short continuity check before every shot is approved. Start with the sheet and one approved reference, make three shots, see what drifts, and reach for the next tool on the list.


Read This Next