Learn how to keep AI characters consistent across Nano Banana 2, Midjourney v7, and ChatGPT with a reusable workflow. See examples inside.
Keeping one AI character consistent across tools sounds easy until you try it. The face shifts, the age drifts, the styling mutates, and suddenly your "same character" looks like three cousins with a shared haircut.
Character consistency is hard because image models do not store "your character" as a clean object; they rebuild it from text, references, and model priors each time. Research on image generation shows that even neutral wording can trigger different default outputs across systems, while identity-preserving work consistently finds that stronger cross-modal alignment and multi-view guidance improve stability [1][2].
Here's the part most people miss: consistency is not just about repeating the same adjectives. It's about reducing ambiguity. If your prompt says "young woman with short dark hair," you've described a category, not a character.
I've found it more useful to think in layers. Layer one is identity. Layer two is style. Layer three is scene. Most bad prompts blend all three into one paragraph and then wonder why the model improvises.
A better workflow is to create a character bible first, then adapt it per tool.
Write one master description that stays fixed across all tools. Keep it brutally specific. Include face shape, nose, eye shape, hair texture, signature clothing details, age band, body type, color palette, and recurring accessories. Also include what must not change.
Character: Mara Voss
Core identity:
- woman, age 29
- oval face, sharp jawline
- pale olive skin
- short black bob with a blunt cut, tucked behind left ear
- gray-green almond eyes
- narrow nose bridge
- faint scar above right eyebrow
- athletic build, medium height
Signature look:
- dark charcoal trench coat
- silver ear cuff on left ear
- black turtleneck
- muted, cinematic color palette
Non-negotiables:
- scar above right eyebrow must remain visible
- hair length stays jaw-length
- expression stays calm, observant, slightly guarded
That structure mirrors what current research on identity preservation keeps showing: stronger subject consistency comes from explicit alignment between semantic concepts and fine-grained appearance details, not vague style-only prompting [2][3].
Nano Banana 2 works best when you define a fixed character and then ask for controlled variations around that anchor. Supporting coverage suggests it handles subject consistency well across multiple scenes and can preserve up to several characters and objects in one workflow, but it still rewards specificity [4].
Nano Banana 2 seems especially good at "same character, new setting" tasks. That means your prompt should start with identity, then move to the environment, then the shot.
Here's a before-and-after.
| Prompt style | Example |
|---|---|
| Before | "Create a cyberpunk detective in a rainy city. Make her look cool." |
| After | "Use this exact character: Mara Voss, woman age 29, oval face, sharp jawline, pale olive skin, short blunt black bob tucked behind left ear, gray-green almond eyes, faint scar above right eyebrow, athletic build. Keep all facial features and signature styling unchanged. Place her in a rainy neon alley at night, wearing her charcoal trench coat and black turtleneck. Cinematic medium shot, wet pavement reflections, calm guarded expression." |
What I noticed is that Nano Banana 2 responds well to the phrase "use this exact character" plus a short non-negotiables block. It's not magic, but it reduces drift.
If you're editing from an existing image, be even stricter. Tell it what may change and what must not. For example: "Change only the background and camera distance. Do not alter face, hairstyle, scar, coat, or expression."
Midjourney v7 needs a tighter, more compressed prompt because it leans heavily on prompt weighting, aesthetic priors, and reference-driven guidance. The goal is to keep identity tokens stable while changing only scene descriptors.
Midjourney is where many people over-prompt. Don't. Keep the identity block compact, then append scene changes. If you have character reference features available in your workflow, use them. Even without official docs in the source set here, the practical pattern is clear: stable prompt spine first, creative modifiers second.
A reusable Midjourney-style skeleton looks like this:
Mara Voss, 29-year-old woman, oval face, sharp jawline, pale olive skin, short blunt black bob tucked behind left ear, gray-green almond eyes, faint scar above right eyebrow, athletic build, charcoal trench coat, black turtleneck, silver ear cuff, calm guarded expression -- scene: neon alley in rain -- medium shot -- cinematic lighting
The trick is not to rewrite the identity every time. Copy the same spine. Only swap the scene block:
That sounds simple because it is. The hard part is discipline.
If you want a faster way to convert your master character brief into tool-specific prompt syntax, a Mac utility like Rephrase is handy because it can reframe the same raw text for image tools without you manually rewriting every version.
ChatGPT is best used as the control layer for your character system. It can generate the character bible, critique output drift, and rewrite prompts for Nano Banana 2 and Midjourney without changing the identity spec.
This is where ChatGPT becomes more than "another model." Use it as your prompt QA partner. Don't just ask it to generate the image prompt. Ask it to audit consistency.
Here's a workflow I like:
Example control prompt:
You are my character continuity editor.
Keep Mara Voss identical across tools.
Never change core identity traits unless I explicitly approve it.
Task:
1. Summarize her locked identity in 6 bullet points.
2. Write a Nano Banana 2 prompt for a subway scene.
3. Write a Midjourney v7 prompt for the same scene.
4. List any traits most likely to drift.
This approach lines up with a broader pattern from prompting research and practice: models perform better when the task structure is explicit and stable, rather than implied [2][3].
Also, ChatGPT can maintain a running continuity log. That matters because drift often happens gradually, not all at once.
The best cross-tool workflow is: define once, adapt per tool, compare outputs, then update the master spec only when you see repeated drift. You are basically running lightweight version control for a fictional person.
Here's the workflow I'd actually use:
Create the character bible. Keep it under 150 words. Add non-negotiables.
Use one tool to create the strongest "base look." For many users, that will be Nano Banana 2 because supporting examples suggest strong storyboarding and subject consistency [4].
Use ChatGPT to rewrite the same identity for each target model. For more prompt patterns, the Rephrase blog is a good place to keep browsing workflows like this.
After every generation, check four things: face shape, hair, accessories, signature clothing. If two of those drift, revise the prompt spine before continuing.
Change one major variable per generation: scene, pose, or camera. Not all three at once. Research on identity preservation keeps pointing in the same direction: the more structural cues you preserve, the less appearance drift you get [2][3].
The bigger lesson here is that consistent AI characters are not really a one-prompt trick. They're a system. Once you treat them that way, the results get much better.
And if you're constantly bouncing between tools, shortcuts matter. A prompt refiner like Rephrase won't solve identity drift on its own, but it does remove the annoying part: rewriting the same character brief for every app by hand.
Documentation & Research
Community Examples
Use a character bible with fixed identity traits, then translate it into each tool's native controls. The key is to lock identity first and vary only scene, pose, and camera.
Include stable facial features, hair, age range, body build, wardrobe anchors, color palette, and non-negotiable details. Then separate those from variables like setting, action, and shot type.