← Back to blog

How to Keep Characters Consistent Across a Campaign

How to hold one character across dozens of generated assets: the reference set, what drifts first, the shot rules that reduce drift, and when to give up and cast.

Hold a character across a campaign by locking a reference set once and generating everything from it, never from the last output. Drift is cumulative: generating asset three from asset two, and asset four from asset three, compounds small differences until the person in the last frame is visibly not the person in the first. Every asset should trace back to the same originals.

Build the reference set first

Before generating any campaign asset, produce and freeze a reference set of the character:

Three angles. Front, three-quarter, profile. Neutral expression, even light.

One full-body. For proportion and wardrobe.

Two expressions. Whatever range the campaign needs.

One in campaign lighting. The look the campaign actually uses, which is what the model conditions against.

Save these as the canonical set, name them clearly, and store them with the asset structure so nobody six weeks later generates from a screenshot of an ad.

On 8frame, reference-to-video and reference-conditioned image generation both take multiple references, so the set is used directly rather than described. Gemini Omni Flash takes one to seven references, which is exactly the shape of this set.

What drifts first

Knowing the order helps you catch it early.

Face structure under expression. A smiling version of the character is where identity slips most.

Age. Characters drift younger across generations, consistently.

Hair detail. Length, parting, and texture wander before anything else in the silhouette.

Wardrobe specifics. Buttons, seams, and logo placement change while the general garment stays.

Skin tone under different light. Warm and cool setups can produce what reads as two different people, which is both a quality problem and a representation problem worth being deliberate about.

The shot rules that reduce drift

Generate from the reference set every time. The single most important rule.

Keep framing consistent where you can. Wide shots hold identity worse than mediums, because the face has fewer pixels to be right in.

Do not ask for extreme expressions. Big smiles and shouting break identity fastest.

Keep lighting families consistent. Changing from warm interior to overcast exterior in the same campaign invites drift; if the campaign needs both, generate a reference in each and treat them as two reference sets for one character.

Regenerate rather than iterate. If asset seven is wrong, go back to the reference set, not to asset six.

The review pass that catches it

Put every character asset side by side at the end, at the same size, and look at them as a set rather than individually. Drift is nearly invisible one asset at a time and obvious in a grid. This is the check that catches the campaign where the person in week four is subtly a different person from week one.

Anything that fails the grid gets regenerated from the reference set, not corrected.

When to give up and cast a person

Honest limits, because this fails in specific ways.

When the character speaks at length. Lip sync plus identity plus performance across a long take is where generation still shows.

When the campaign runs for months. Drift compounds across time and across whoever picks up the work next.

When the character is the brand. A recurring spokesperson the audience will come to know deserves a person, and audiences notice when they are watching something that never quite resolves.

When representation matters specifically. If the character exists to represent a real community, generating them is a decision with implications beyond production convenience.

Where generation works well: short-form, campaign-length, non-speaking or lightly speaking, with a reference set and a grid check.

FAQ

How many reference images do I need? Six or seven: three angles, one full body, two expressions, one in campaign light. More helps, and the marginal gain drops off quickly after about seven.

Can I keep a character consistent across both stills and video? Yes, if both are generated from the same reference set. Generating video from a still that was itself generated from the set introduces one extra generation of drift.

What if the character has to speak? Consider a real performer, or accept short lines and check every one. See best AI video generator for consistent characters 2026 for the model comparison and AI character consistency workflow for the step-by-step.


Freeze the reference set, generate everything from it, and review the campaign as a grid rather than as assets. The 8frame canvas is free and unlimited, and generation is paid from $19/month.

Related articles

use caseHow to Brief a Creative Teamuse caseHow to Caption Video for Silent Viewinguse caseHow to Choose a Color Palette for a Campaign

Make it
move.

Stay in the loop

Be the first to hear about our launch and get product updates