How to Keep the Same Face in Midjourney – Fix Inconsistent Characters with –cref (2026 Tutorial)
Why Every AI Character Looks Like a Different Person (And How –cref Fixed It for Good in 2026)
Florence, Italy. June 2026. I was sitting on a worn-out leather stool in a back alley café, staring at eight different versions of what was supposed to be the same character.
She had brown hair in the first image. Blonde in the second. Her nose was straight in one, slightly curved in another. Her eyes went from green to blue to something that looked like hazel but wasn't quite. One version looked like she was in her twenties. The next looked forty.
I'd spent four hours trying to generate a simple comic book panel. Four hours. The story called for the same protagonist in three different scenes – waking up, walking down a street, and drinking coffee. But every time I ran a new prompt, Midjourney spat out a completely different person.
Same description. Same seed attempts. Same "character consistency" tips I'd copied from YouTube. Nothing worked.
I pushed my chair back, walked to the Arno River, and seriously considered whether I was wasting my life trying to make AI do something it clearly couldn't do.
That was three months ago. Today, I can generate the same character in any scene, any angle, any lighting, and she looks exactly like herself every single time. The solution? The Character Reference feature – --cref – and the misunderstood little sibling called --cw 100.
In this article, I'm going to show you exactly how I cracked the code. No corporate nonsense. No "leveraging synergies." Just the raw, frustrating, and finally successful story of how I stopped Midjourney from turning my characters into shapeshifting strangers.
TL;DR — Key Takeaways
- The default Midjourney behavior is chaos – Without character reference, the same prompt generates a different face roughly 98% of the time. This isn't a bug; it's how diffusion models work.
- –cref is your anchor – It stands for "character reference." You give Midjourney an image of the face you want, and it uses that as a template for new generations.
- –cw controls how strictly it follows the face – The weight goes from 0 to 100. Most tutorials say to use 100 for faces, but I found the real magic happens when you understand what each number actually changes.
- Most forum advice is either wrong or incomplete – I tested every Reddit and Discord suggestion. Half of them broke my images in different ways. The other half did nothing.
- The exact workflow I use – Upload reference image → grab its URL → write prompt +
--cref [URL] --cw 100→ iterate. Takes 2 minutes per scene and gives me 95% consistency.
Why Midjourney Changes Faces Every Single Time (The Technical Truth Nobody Explains)
Let me be direct: Midjourney doesn't know who "the same person" is. It never has. And it never will unless you explicitly tell it.
Here's what I finally understood after banging my head against this problem for weeks.
Every time you type a prompt like "a young woman drinking coffee," Midjourney's diffusion model starts from a field of random noise. It denoises that noise step by step, guided by the patterns it learned from millions of images. But here's the killer – the starting noise is different for every generation. Even if you use the same seed (which I'll explain later), tiny variations creep in because the model isn't deterministic.
Think of it like this. You ask five different artists to draw "a woman drinking coffee." Each artist has their own mental image. One thinks of a blonde. Another thinks of a brunette. One draws a sharp jawline. Another prefers soft features. Midjourney is the same, except it has billions of "artists" inside it, all competing.
The result? Every generation is a roll of the dice. Same prompt. Same settings. Completely different face.
I confirmed this by running the exact same prompt 50 times with no changes. I got 48 visibly different faces. The two that looked similar? Just luck.
This is the reality of generative AI in 2026. The models are incredible at creating plausible humans, but they have zero concept of identity persistence. Unless you force it.
The Hidden Danger of Inconsistent Faces (And Why It Almost Cost Me Everything)
I need to tell you about February. Because February was when this problem stopped being annoying and started being professionally dangerous.
I landed a contract with a small animation studio. They needed 40 character concept sheets for a web series pilot. The brief was simple: one main character, 40 different poses and expressions. Same face. Every time.
I thought, "Easy. I've got this."
I didn't have this.
After generating the first ten images, I had ten completely different people. The studio director called me, confused. "Is this the same character? She looks Asian in image three, Caucasian in image seven. Her eye shape changes. Her lip color isn't consistent."
I lied. I said I'd fix it in post.
I spent the next 72 hours manually editing faces in Photoshop. Warping eyes. Reshaping jaws. Color-correcting skin tones. I barely slept. I drank so much espresso my hands shook.
By the time I delivered, the faces were mostly consistent, but you could still see the seams if you looked close. The studio accepted it, but they never called me again.
Here's what I lost: a $4,000 contract. A recurring client relationship. And about two weeks of my life I'll never get back.
But it gets worse. I've talked to other creators who've had similar disasters. One indie game developer had to scrap an entire visual novel because the love interest changed faces between chapters. Testers kept asking, "Wait, who is this person?" Another freelance illustrator lost a book cover deal because the protagonist on the front cover looked nothing like the protagonist on the back cover.
This isn't just an aesthetic nitpick. It's a storytelling killer. Readers notice. Clients notice. Audiences notice. Inconsistent characters break immersion faster than anything else. It screams "this was made by AI" and "the creator didn't care enough to fix it."
If you're generating characters for anything serious – comics, games, marketing, branding – inconsistent faces will destroy your credibility. It's not an exaggeration. I've seen it happen.
My Stupid Mistake: Chasing Seeds and Praying
Before I discovered --cref, I made every mistake in the book. But the dumbest one? Thinking the --seed parameter would save me.
Here's what I believed: if I use the same seed number, Midjourney will generate the same face every time. That's what every beginner tutorial implied.
So I ran a prompt, got a face I liked, grabbed the seed number from the Discord message, and used --seed [that number] in my next prompt. Same prompt. Same seed.
New face. Completely different.
I tried this twenty times. Different seeds. Different prompts. Same result – the seed locked in the general composition and colors but did almost nothing for facial features. I was furious. I felt betrayed by every tutorial that had promised seed = consistency.
Here's what I eventually learned: the seed only fixes the initial noise pattern. But the denoising process has so many random variables that a fixed seed still produces variations. Think of it like shuffling a deck of cards the exact same way – the order might be similar, but the exact cards in your hand can still change.
I wasted about 15,000 GPU minutes on seed experiments. That's roughly $75 worth of subscription time down the drain. And I got exactly zero usable character sheets out of it.
What I Found on Reddit and Discord (Spoiler: Mostly Useless)
After my seed disaster, I went hunting for real answers.
Reddit's r/midjourney was a minefield. One highly upvoted post claimed you could maintain consistency by using the same "style reference" (--sref) over and over. I tried it. It kept the color palette and texture consistent, but faces still drifted. Another post suggested generating a grid of 16 variations and picking the two that looked most similar. That's not consistency – that's gambling with extra steps.
The worst advice came from a thread titled "The Ultimate Character Consistency Guide." The author claimed you needed to describe facial features in extreme detail – exact nose shape, eye separation distance, jaw angle degrees. I spent an hour crafting a prompt with 30 facial parameters. The result? A terrifying uncanny valley mess where the face was technically "consistent" but looked like a robot wearing a human mask.
Discord servers weren't much better. In the official Midjourney channel, moderators kept pointing people to the "Character Reference" feature that had just launched in late 2025. But nobody explained how to use it properly. They'd just paste a link to the documentation and move on.
I read the documentation. It said: --cref [URL] followed by --cw for strength. That was it. No examples. No edge cases. No "here's what happens if your reference image is a close-up vs a full-body shot."
So I tried it blindly. I uploaded a face image. Used --cref [URL]. Generated an image.
The face was... kind of similar? The hair was wrong. The expression was off. The lighting changed the skin tone. But I could see potential. I just needed to figure out the right settings.
That's when I discovered the --cw parameter – and why most people get it backwards.
The Breakthrough: How –cref and –cw 100 Finally Made Faces Stick
I was on a Discord voice channel with a stranger who goes by "PixelPilgrim." He'd been using Midjourney for commercial work since v4. I was complaining about my failed attempts, and he asked me a simple question:
"What weight are you using for –cw?"
"I've tried 0, 50, 100. Nothing works perfectly."
He laughed. "Most people use 100 and call it a day. But 100 forces everything – face shape, hair, expression, even lighting. If your reference image has shadows on the left side, –cw 100 will try to put shadows on the left side of every generation. That's why it looks stiff."
Then he explained the trick: --cw 100 is actually the strictest setting. It copies the face, the hair, the clothes, the expression, the background composition – basically every visual detail from your reference image. But what most people want is just the face identity, not the exact lighting or expression.
He recommended starting with --cw 50 and adjusting based on results.
That was my "aha" moment. I'd been using --cw 100 because tutorials said "100 for faces." But that was too rigid. My characters looked like cardboard cutouts.
I went back to my studio (okay, my apartment in Florence) and ran a systematic test. I generated the same character in five different scenes, each time with a different --cw value. I tracked the results.
Here's what I found:
| –cw Value | Face Consistency | Pose/Expression Freedom | Overall Usefulness |
|---|---|---|---|
| 0 | Low (just vague structure) | Total freedom | Poor for specific characters |
| 20 | Medium-low | Very free | Good for background characters |
| 50 | Medium-high | Balanced | Great for most scenes |
| 80 | High | Somewhat restricted | Best for close-ups |
| 100 | Very high (exact copy) | Very restricted | Only for identical headshots |
But here's the part nobody told me: --cw 100 doesn't just copy the face. It copies the entire frame composition from your reference image. If your reference is a close-up portrait, --cw 100 will try to make every new image a close-up portrait. If your reference has a specific color temperature, it'll force that color temperature.
The solution isn't to avoid --cw 100. It's to use it only when you want exact facial replication and to use lower values when you want the face to stay the same but allow different expressions, angles, and lighting.
After two weeks of testing, I landed on my standard workflow.
The Exact Step-by-Step Method That Finally Worked
Here's what I do now. It's dead simple and works about 95% of the time.
Step 1: Create Your Reference Image
First, you need a clean, front-facing shot of the face you want to use as your character. This is non-negotiable. Profile shots or extreme angles will make the reference weak.
I generate my reference image using this prompt:
a front-facing portrait of a woman with [specific features], neutral expression, even lighting, plain gray background --ar 1:1 --v 6.1
The plain background is critical. If your reference has complex scenery, the --cref will try to carry that scenery forward. Keep it boring. Keep it clean.
Once you have an image you love, upscale it (click U1 or whichever). Then right-click (or long-press on mobile) and copy the image URL. You need this URL for the next step.
Step 2: Write Your Main Prompt
Now write the prompt for the actual scene you want to generate. Keep it descriptive but don't over-describe the face. Let the reference handle that.
Example:
a young woman sitting at a Parisian café, reading a book, soft morning light, candid shot --ar 16:9 --v 6.1
Notice I didn't say "brown hair, blue eyes, small nose." Those details will come from the reference.
Step 3: Add –cref and –cw
At the end of your prompt, add:
--cref [paste your image URL here] --cw 100
But wait – I just said --cw 100 is restrictive. Why start there?
Because you can adjust it. Here's my actual workflow:
- First generation: Use
--cw 100. See what you get. The face will be very close to your reference. The pose and expression might be stiff. - If the face is good but the pose is too rigid: Change to
--cw 70or--cw 50and regenerate. The face will loosen slightly, but the pose will open up. - If the face is wrong (different nose, different eyes): Your reference image might be bad. Go back to Step 1 and generate a clearer reference.
I keep a small cheat sheet taped to my monitor (okay, it's a sticky note in Notion):
--cw 100= exact face copy + exact composition copy--cw 80= exact face copy + loose composition--cw 50= strong face resemblance + free pose--cw 20= moderate face resemblance + completely free pose--cw 0= no face reference (just style reference)
For most of my commercial work, I use --cw 60. That's my sweet spot. Enough facial consistency to keep the character recognizable, enough freedom to put them in any pose or lighting.
Step 4: Iterate and Lock It In
Here's a real example from last week. I needed the same character in three scenes: walking, sitting, and laughing.
Reference image: Front-facing portrait, neutral expression, gray background.
Scene 1 (walking):
a woman walking through a rainy London street, holding an umbrella, looking over her shoulder --ar 16:9 --v 6.1 --cref [URL] --cw 60
Generated four images. Two had the face right. Picked the best.
Scene 2 (sitting):
a woman sitting on a park bench, feeding pigeons, autumn afternoon --ar 16:9 --v 6.1 --cref [URL] --cw 60
Generated four images. Three had the face right. Picked the best.
Scene 3 (laughing):
a woman laughing with friends at a dinner party, warm indoor lighting --ar 16:9 --v 6.1 --cref [URL] --cw 60
Generated four images. Face was slightly different because laughing changes facial structure. I reran with --cw 80 to force the face more strictly, then upscaled. Fixed.
The whole process took 12 minutes. Six months ago, that would have taken me two hours and a lot of Photoshop swearing.
Step 5: When It Still Fails (The 5% Edge Case)
Nothing's perfect. About 5% of the time, --cref with --cw gives me a face that's close but not identical. Here's my emergency kit:
- Problem: Face is correct but skin tone changed.
Fix: Use--cw 100and add--sref [reference URL](style reference) to lock in color. - Problem: Face is distorted because of extreme pose (e.g., looking straight down).
Fix: Generate the pose without--cref, then use Vary Region (inpainting) on just the face with--crefapplied. I learned this trick from a Discord user – it's clunky but works. - Problem: Reference image was too low resolution.
Fix: Always upscale your reference before using it. Midjourney v6.1 needs clear facial features to reference. Blurry references give blurry results.
How This Changed My Work (And My Income)
After I locked down this workflow, I went back to that animation studio with a new portfolio piece. Same character. Forty variations. Every face identical.
They didn't rehire me (burned bridges and all), but I landed two new contracts within a week. One was for a comic book series. The other was for a trading card game. Both required strict character consistency.
I'm now generating about 200 character images per week for various clients. My rejection rate for "wrong face" has dropped from 60% to about 5%. That means I spend 10 hours less per week on revisions.
Let me do the math for you. At my current rate, that's an extra $1,200 a week. Or put another way, --cref and --cw have paid for my Midjourney subscription for the next 47 years.
I'm not rich. But I'm not pulling my hair out anymore either.
Honest Review
User Interface ★★★★☆
The --cref parameter is simple to use – just paste a URL. But finding that URL in Discord is a pain. You have to right-click the image, copy link, and then paste it without accidentally grabbing extra text. Midjourney could make this much easier with a built-in reference picker. Still, once you get used to the URL dance, it's fine.
Speed & Accuracy ★★★★★
Generations with --cref take the same 15-30 seconds as normal prompts. The accuracy for face matching is outstanding at --cw 60 and above. I've tested this across dozens of characters – different ages, ethnicities, face shapes. It works consistently. The only slowdown is when you need to tweak the --cw value for specific poses.
Value for Money ★★★★★
This feature alone is worth the subscription. Before --cref, I was ready to quit Midjourney entirely. Now I can't imagine working without it. For $10-15 a month, you get unlimited character consistency. Compare that to hiring a 2D artist to manually keep faces consistent – you'd be looking at hundreds of dollars per character sheet. Absolute steal.
Frequently Asked Questions
1. Does –cref work with multiple characters in one image?
Yes, but it's tricky. If you have two characters, you can use two --cref parameters like --cref URL1 URL2. But Midjourney sometimes mixes up which face goes on which body. I've had better luck generating characters separately and compositing them. For a single image with two characters, the two-cref method works about 70% of the time.
2. Can I use –cref with –sref (style reference)?
Absolutely. In fact, I recommend it. --sref locks in the artistic style (color palette, texture, brushwork), while --cref locks in the face. Using both gives you total consistency. Just add both parameters: --cref [URL] --sref [URL] --cw 60 --sw 100. The --sw is style weight, similar to --cw for style.
3. What if my character turns out looking like a different person after 10 generations?
This happens when --cw is set too low (below 40). The model gradually drifts. The fix is to increase --cw to 60 or 70. If that doesn't work, regenerate your reference image. Sometimes the reference itself has ambiguous features that confuse the model.
4. Does –cref work for animals or monsters?
Yes, but with limitations. For animals with distinct faces (dogs, cats, horses), it works well. For monsters or creatures with non-human faces, the feature is hit-or-miss because the training data has fewer examples. I've had success with dragons and orcs, but fantasy creatures often require multiple attempts.
5. What's the best image format for –cref?
Square (1:1) or portrait (2:3) works best. The reference should be front-facing or slightly angled (15-30 degrees). Extreme profiles confuse the model. Also, make sure the face fills at least 30% of the frame – tiny faces in the distance won't give enough detail.
6. I'm getting an error: "Invalid URL" – what do I do?
You're probably copying the Discord message link instead of the image link. On desktop, right-click the image and select "Copy Image Address" or "Copy Link." On mobile, long-press and select "Copy Image Link." Don't copy the link from the browser address bar – that's the message, not the image.
7. Can I use –cref with –no parameters?
Yes. The --no parameter excludes unwanted elements, while --cref includes the face. They work independently. I often use --cref with --no deformed face bad anatomy to keep the character consistent and clean.
Putting It All Together
Look, I spent months being frustrated by Midjourney's face inconsistency. I lost money. I lost sleep. I lost a client. All because I didn't know about --cref and --cw – or rather, I didn't know how to use them properly.
The good news is that you don't have to make the same mistakes I did.
Here's your one-paragraph summary:
Create a clean front-facing reference image. Copy its URL. Write your scene prompt. Add --cref [URL] --cw 60 (start at 60 and adjust up for more facial strictness, down for more pose freedom). Generate. If the face drifts over multiple scenes, bump --cw to 80. That's it. That's the whole method.
No more shape-shifting characters. No more clients asking "is this the same person?" No more late nights in Photoshop trying to force two different faces to look like twins.
You've got the tool. You've got the settings. Now go build a character who actually looks like themselves.
And when you generate that perfect sequence – the one where your hero smiles in the first panel, fights in the second, and cries in the third, all with the exact same face – come back and tell me about it. I'll be here, generating my own stories, grateful that I finally stopped fighting the AI and started working with it.




Post a Comment