Character Consistency Is Not Face Consistency

8 min read
Diagram contrasting face-only checking with the eight attributes a viewer actually reads

You get the face right and the set still looks wrong. Same eyes, same nose, same jaw — and frame three is somehow a different woman. This is the most under-diagnosed problem in AI character work, because everyone checks the face and then stops. Recognition does not run on faces alone: it runs on age, build, marks, eye colour, hairstyle, visual language and emotional register, and any one of them can break a set on its own.

Why the face gets all the attention

Because human vision is built for it, and because it is the only attribute with an obvious failure mode. A warped face is instantly, viscerally wrong, so it dominates your attention while the other seven attributes drift quietly underneath.

There is a second reason: the face is the attribute a reference image pins most strongly. So the moment you start working reference-first, the face becomes your best-behaved attribute — and the remaining drift moves somewhere you are not looking.

Diagram contrasting face-only checking with the eight attributes a viewer readsFace consistency is one item on a list of eight.

The seven other carriers of identity

Apparent age

The most disorienting when it moves, and almost never stated in a prompt. A five-year shift in apparent age reads as a sibling rather than the same person, and lighting alone can cause it: soft frontal light smooths a face younger, hard side light adds a decade.

Height and build

The attribute most likely to break, because two other things push on it constantly — the outfit, which implies a frame, and the pose, which implies proportion. Nobody writes "medium build, 170cm" in a prompt, so the model re-decides it every run from context.

Distinguishing marks

Scars, moles, freckles, tattoos, a chipped tooth. These are pure recognition signal and pure liability: they are small, so the model drops them easily, and viewers who noticed them once will notice them missing. If a mark is part of the character, it belongs in every prompt, not just the first.

Eye colour

Cheap to specify and easy to lose to a palette shift. Eyes pick up the dominant colour of an outfit or a light source more readily than any other feature, which is why a green-eyed character wearing amber tends to come back hazel.

Hairstyle, not hair colour

Colour usually survives because it is a word in your prompt. Length, parting, fringe shape and how the hair falls over the shoulders usually are not, and they change silhouette — which is the second thing a viewer reads after the face.

Visual language

Line weight, shading model, contrast, colour grade. Two frames of the same character in genuinely different visual languages are two illustrations of one character, not two frames of one story. This is the attribute people mistake for a "style setting" when it is actually part of whether the set holds together.

Emotional register

Underrated and very real. A character who reads as guarded in every frame and then beams at the camera reads as someone else, because we identify people partly by their default expression. Consistency of mood is part of consistency of character.

Evidence: one face, three attempted edits

To see which attributes are actually load-bearing, I took one anchored character and tried to move three identity attributes one at a time — same seed, same outfit wording, same backdrop, same pose. Only the free text changed.

Four frames of one character: baseline, an age edit, a build edit and a hair and eye colour edit
Same anchor, same seed. Two of the three requested identity edits never happened.

The result was more interesting than the one I expected:

  • The age edit was ignored. "A mature woman in her forties, subtle laugh lines" produced a face indistinguishable from the baseline. The anchor simply outvoted it.
  • The hair and eye edit was ignored too. "Short blonde bob, bright green eyes, no hat" came back as the same long brown hair, the same red eyes and the same hat.
  • The build edit landed. "Tall athletic build, broad shoulders, muscular arms" visibly changed the body — and dragged the outfit with it, swapping long sleeves for a sleeveless cut so the arms it had been asked for could be seen.
The frame where the build edit applied: broader shoulders, muscular arms, sleeveless outfit
The one edit that landed. Identical face, different body — and the outfit changed itself to show the arms.

Two conclusions follow, and they point in opposite directions. First, the face is not where your risk is — it was the most stable thing in the run, exactly as reference-first workflows promise. Second, a strong anchor is also a constraint: identity-level attributes are held so firmly that free-text adjectives cannot move them. If you genuinely want an older version of a character, or a different eye colour, you need a different reference, not more words. Consistency tooling that holds identity against your accidental edits also holds it against your deliberate ones.

And note which attribute did get through. Build was the one that slipped, which is the same attribute this article predicts will slip — it is the one nobody pins and everything pushes on.

The identity checklist

Run this before you publish a set, not after. It takes a minute and catches the failures that a face-only check misses.

Identity checklist — compare every frame against your baseline frame
AttributeWhat to look forCommon cause when it slips
Apparent ageSame apparent decade across framesLighting change; softer or harsher key light
Height and buildSame shoulder width and proportionNew outfit implying a different frame
MarksScars, moles, tattoos still presentNot restated in the prompt after frame one
Eye colourSame colour under different lightPalette pull from clothing or lighting
HairstyleSame length, parting and fringeHoods, collars and scarves forcing a redraw
Visual languageSame line weight and colour gradeStyle setting changed between frames
Emotional registerSame default expressionPose wording implying a different mood
FaceSame geometry, not just same featuresSilhouette change; extreme angles

The fastest version of this check needs no checklist at all: shrink both frames until the face is a smudge. At thumbnail size you are reading build, palette, hair silhouette and posture — precisely the attributes a face-first review ignores. If two thumbnails read as two people, you have your answer before you have zoomed in.

Build a set that holds together

Anchor the face, then watch the other seven attributes.

Open the generator

What this changes in practice

Three workflow consequences:

  • Write down the attributes your prompt never mentions. Build, marks and default expression are the three that go unstated most often. A one-line character sheet you paste into every prompt fixes most of it.
  • Judge frames against a baseline frame, not against memory. Your mental image of the character drifts too, and it drifts toward whatever you generated last.
  • Two attributes have their own guides. Build is the one you can actually steer — see holding a body type. Hair colour is the one you cannot, and lighting decides whether it reads at all — see lighting by hair colour.
  • Diagnose at the right layer. If the face holds and the set still fails, more prompt-wrangling on the face is wasted effort. Use the 6-scene consistency test to find which attribute is actually moving, and the guide on identity drift for why an outfit change is usually the trigger.

Frequently asked questions

What makes an AI character consistent?

Eight attributes holding together across frames: face geometry, apparent age, height and build, distinguishing marks, eye colour, hairstyle, visual language and emotional register. A matching face alone is not enough.

Why does my AI character have the same face but look different?

Because identity is carried by more than the face. Build, hairstyle, palette and apparent age all shift recognition, and they change without being mentioned in your prompt.

How do I check character consistency quickly?

Shrink two frames to thumbnail size, where the face is unreadable. What remains — build, hair silhouette, palette, posture — is what a viewer reads first. If the thumbnails look like two people, identity is not holding.

Which identity attribute breaks most often?

Height and build. It is pushed on by both the outfit and the pose, and almost nobody specifies it in a prompt, so it gets re-decided on every run.

Can I change a character's age or eye colour with a prompt?

Often not. When identity is anchored to a reference, free-text adjectives may be ignored entirely — in our test both an age edit and a hair-and-eye-colour edit had no effect. Identity-level changes usually need a different reference.

Does emotional expression really affect character identity?

Yes. People are recognised partly by their default expression, so a character who is guarded in most frames and beaming in one reads as a different person in that frame.

Check all eight, not just the face

One anchor, one baseline frame, one checklist.

Start generating