The portrait looks great until you scroll to the hands and find six fingers, a thumb on the wrong side, or two hands fused into one mass. Even on flagship 2025-2026 models (Midjourney v7, SDXL + ADetailer, Flux Pro, Imagen 3), hands remain the hardest anatomy in image generation. The root cause is usually not the prompt — it is that hands are small in the frame, complex in pose, or generated in a low-quality tier. Fix it with the right framing, a targeted second pass, and a model swap when needed.
Common causes
1. Hands are too small to render coherently
If the hand occupies less than ~64x64 pixels in the output, the model literally does not have enough pixels to draw five fingers correctly. This is the cause in 60-70% of “extra finger” reports.
How to spot it: Zoom into the hand region. If the entire hand is fewer than ~5% of the image’s longest side, it is undersized.
2. Pose has overlapping or interlaced fingers
“Hands clasped,” “hands on chin,” “praying gesture,” “holding small object” all force the model to disambiguate which finger belongs to which hand. It usually fails.
How to spot it: Read your prompt for any phrase that puts two hands together or wraps fingers around something thin (pen, microphone, phone edge).
3. No negative prompt for hand artifacts
SDXL, Flux, and similar checkpoints will happily produce six fingers if you don’t explicitly suppress it. Midjourney v7 ignores negatives, so this only applies to SD-family workflows and ComfyUI / A1111.
4. Subject angle hides the wrist
When the wrist is occluded, the model has no anchor for hand size or rotation. Extreme upward or downward angles make this worse.
How to spot it: Trace from each finger back toward the body. Can you find the wrist? If not, the anchor is missing.
5. Multi-character scenes
With two or more people in frame, the model often grafts a third person’s hand onto one of the subjects.
How to spot it: Count visible hands. They should equal 2 × people in frame. If you have 3 people and only 5 hands, or 7 hands, that is the case.
6. Cheap / fast preset
Midjourney --draft, SDXL with too few steps (<20), Flux Schnell, or Imagen at “fast” quality all skip the iterations that would have cleaned up hands.
How to spot it: Check the tier or step count of the failing render. Compare against the platform’s premium tier — if you are on the cheap, that is part of the problem.
Before you change anything
- Save the seed and full prompt of the image that has the broken hands — you will need it for the targeted regeneration step.
- Note which tool, model version, and quality preset produced it.
- Confirm the issue is not a one-off; regenerate 4 candidates with the same prompt and see if all of them show hand problems.
- Decide whether you need the hand at all — for many portraits, cropping the hand out is the fastest fix.
- Commit or back up the current prompt template before changing it.
Information to collect
- The full prompt, negative prompt, model, seed, sampler, and step count.
- A screenshot of the broken hand cropped to ~512x512.
- The intended use case (thumbnail, hero image, print) — this changes how aggressive the fix needs to be.
- Whether other anatomy (face, feet) is also breaking; if yes, the root cause is undersizing, not hands specifically.
- The aspect ratio and final output resolution.
Shortest path to fix
Step 1: Tighten framing so hands get more pixels
Add explicit framing keywords to push the model toward a closer shot:
medium close-up, hands visible in frame, hands well-defined
For full-body where this is impossible, switch to --ar 2:3 or --ar 4:5 in Midjourney, or render SDXL at 1024x1280 instead of 1024x1024. More vertical pixels means the upper body — and the hands — get more detail.
Step 2: Strengthen the negative prompt (SD / Flux family only)
For SDXL, ComfyUI, or A1111:
Negative: extra fingers, six fingers, mutated hands, deformed hands,
malformed hands, fused fingers, missing fingers, extra hand,
disfigured, ugly hands, poorly drawn hands
For Midjourney v7, skip this — use --no extra fingers instead, which has limited effect; depth lives in step 3.
Step 3: Use a hand-specific second pass
This is the highest-ROI step.
- SDXL / A1111: Enable ADetailer with the
hand_yolov8n.ptmodel. It auto-detects hands, masks them, and inpaints at higher resolution. Default settings work for 80% of cases. - ComfyUI: Use the
Hand Refinernode orMeshGraphormercontrolnet for explicit hand pose. - Midjourney: Click Vary (Region), brush over each broken hand, and add the prompt
well-defined hand, five fingers, natural pose. - Flux: Use the Flux Fill model with a hand mask in ComfyUI; native inpaint paths are still limited.
Step 4: Switch pose if the model keeps failing
If the prompt insists on “hands clasped” or “holding a microphone” and three regen passes haven’t fixed it, change the pose. “Hands in pockets,” “one hand at side, one behind back,” or “hand on hip” reduce finger ambiguity dramatically.
Step 5: Last resort — post-edit
For commercial deliverables you cannot ship with broken hands, accept that AI hand generation is not yet 100% solved. Edit in Photoshop / Affinity with the Generative Fill or Healing Brush, or stock-replace the hand from a real reference photo.
How to confirm the fix
- Zoom to 100% on each hand and count the fingers; should be five per hand, with a thumb opposing the other four.
- Check that wrists connect cleanly to forearms — broken wrists are the second-most-common artifact.
- Look at finger joints — three knuckle bends per finger, not two or four.
- Verify nails are reasonably proportioned and not “growing out of the wrong knuckle.”
- Get a second pair of eyes; people are blind to their own model’s failures.
If it still fails
- Drop the resolution constraint and render at 1024x1536 or 1536x1024 to give the upper body even more pixels.
- Try a hand-focused LoRA (Civitai has several “perfect hands” LoRAs for SDXL).
- Change the base model — Flux Pro and Imagen 3 currently produce cleaner hands than Midjourney v7 on tight poses.
- For commercial deliverables, accept that hand-perfect AI generation is not 100% reliable in 2025-2026. Build a hand-correction step into your workflow rather than treating it as exceptional.
- Package the broken render, full prompt, and model version before posting to r/StableDiffusion or a Discord help channel.
Prevention
- Avoid poses that put hands at the smallest scale or overlapping each other.
- Keep a “negative prompt block” snippet you paste into every SD / Flux generation.
- For hero images, generate at the largest aspect ratio you can afford and crop down.
- Always run a hand-specific inpaint pass on portraits with visible hands; build it into your workflow, do not treat it as a fix.
- Maintain a personal blacklist of pose words that historically break hands in your favorite model, and use safer substitutes.
Quick reference: pose risk levels
| Pose | Risk |
|---|---|
| Hands in pockets | Low |
| Hands at sides, relaxed | Low |
| One hand on hip, one at side | Low-medium |
| Crossed arms | Medium |
| Holding a phone or microphone | High |
| Hands clasped or praying | Very high |
| Sign-language gestures | Very high |
| Hands wrapped around small object | Very high |
Pick a pose lower on the risk table whenever the use case allows.
Related reading
- AI image distorted faces
- AI image never matches the prompt
- AI image weak composition
- AI poor realism
- Refactor prompts
- AI Image Inpaint Bleeds Pixels Outside the Mask
- AI Image Negative Prompt Ignored by Model
- AI Image Reference Image Mostly Ignored
- AI Image Seed Not Reproducible Across Runs
- AI Music Tempo Drifts Mid-Track Without Edit
- AI Video Camera Motion Goes Wrong Direction
- Voice Clone Has Unnatural Breathing and Pauses