5.6 Quality Control and Selection
A One production run, sized from the survival rate rather than from ambition. of 150 frames is not 150 posts. It is a population to select from, and selection is a skill with a method — not a feeling you have while scrolling.
Three stages, in order, each disqualifying rather than ranking. A frame that fails stage one is out regardless of how good the face looks.
Stage one: technical
Fast, binary, and first because it is cheap. Scan for:
- Extra or malformed fingers, extra limbs
- Impossible light or a shadow with no source
- Objects that merge into each other or into the body
- Text in the frame — signs, logos, screens — that is malformed
- Reflections that do not match the scene
- Background figures where the scene should be empty
- Visible generation artifacts: warping, repeated textures, edge halos
The test: would a viewer who is looking for errors find one in under two seconds? If yes, out. This stage takes seconds per frame once you have run it a few hundred times, and it is the reason not to spend identity scoring on frames that will never publish.
Hands get their own line item, because they remain the most reliable tell in the medium (1.4). Check them even when nothing else looks wrong.
Stage two: identity
The four-dimension rubric from 4.6, applied per frame, against the The versioned plate of the persona's face and body that every generation is scored against. — side by side, not from memory.
For batch selection you do not need the full 27-frame battery. You need the two dimensions that disqualify: facial structure and is this the same person. Score 1–5, and apply the same acceptance rule as 4.6's Rule 2: nothing scoring 2 or below survives, regardless of the mean.
Two practical notes for batch work:
Score on the contact sheet, then check survivors individually. A grid of 150 thumbnails reveals the identity outliers quickly; the outliers are what you are looking for, not the average.
Blind where versions compete. If you are comparing two checkpoints' output in one batch (4.5), rename and shuffle. You will otherwise favour the one you trained longer.
Stage three: narrative (the canon test)
The frame passed technical and identity checks. Now: does it contradict the The ten facts a persona cannot break, each specific enough to check in ten seconds.?
From 2.3: the ten facts, plus the The dated record of what the persona has already done or claimed, used to catch contradictions. from 2.4. The specific things this catches:
- A location that should not exist yet
- A prop or an outfit that was retired
- A season that does not match the post's date
- A continuity fact being broken (the sister appearing twice in a month)
- A claim the image makes that the persona cannot support
This is ten seconds per surviving frame, and it is the step that prevents the failure mode 2.4 describes — an audience member quoting a March post against an August one.
The rejection table
Twelve defects, their pipeline cause, and the layer where the fix belongs. The right column is the point: most defects are not fixed in the frame.
| Defect | Cause | Fix belongs in |
|---|---|---|
| Face drift | Reference not wired in, or weak reference | 5.1 |
| Expression echo | Dataset concentration | 4.4 |
| Wardrobe bleeding into new scenes | No outfit reference | 5.3 |
| Same kitchen, different geometry | Location regenerated, not referenced | 5.3 |
| Hands malformed | Generator limitation | 5.5 inpaint, or re-pose |
| Skin plastic | No texture phrases, no detail pass | 5.2, 5.5 |
| Impossible shadows | Two light sources in the prompt | 5.2 |
| Text in frame malformed | Text requested from the generator | 2.5, compose in edit |
| Body proportions wrong | No body reference | 5.1 |
| Over-detailed, crunchy skin | Detail pass pushed too far | 5.5 |
| Composition cluttered | Shot-size rules not applied | 2.5 |
| Cost per post too high | Rejection rate not measured | 5.4 |
Nine of the twelve have their fix somewhere other than the frame you are looking at. That is the chapter's real argument: quality control is mostly a diagnostic instrument for the pipeline, not a gate at the end of it.
Export and compression
Per platform, at the specifications the platform currently requires. [AS OF 2026-10] Requirements change; verify before a campaign.
| Target | Aspect | Practical notes |
|---|---|---|
| Feed still | 4:5 or 1:1 | Highest quality your route allows; the feed is where detail is seen |
| Story / vertical | 9:16 | Safe zones top and bottom for platform UI |
| Reels / TikTok cover | 9:16 | Must survive a thumbnail: single subject, high contrast |
| Ad asset | Per placement | Often deliberately brighter than the feed grade (5.2) |
On compression: export at high quality and let the platform compress. Pre-compressing to save bandwidth damages skin texture first, which is the exact detail you spent the pipeline protecting. File weight matters for your archive, not for the upload.
On color: export in the widest profile the platform accepts, and check one frame on a phone screen before publishing a set. Grading on a calibrated monitor and publishing to a phone is where warm casts and crushed blacks come from.
The publishing queue
Three destinations, decided at QA rather than later:
Publish today. Passed all three stages and fits this week's plan.
Bank. Passed QA, no slot. Keep them, dated and tagged with their reference versions. A bank of twenty frames is what lets you publish during a week when production fails.
Retouch. Passed identity and narrative, failed technical on a fixable local defect. Goes to the edit queue from 5.5, and it does not block today's post.
A fourth destination is legitimate and worth naming: discard. If the batch's rejection rate is high, that is data about the reference layer, not a reason to lower the bar.
Realistic rejection rates
A planning figure, so you can size batches correctly. [UNVERIFIED] Rates vary enormously by model, prompt discipline, and how demanding the use is.
| Context | Survival rate | Frames for one post |
|---|---|---|
| Own-account lifestyle post, established pipeline | ~1 in 3 | ~3 |
| Own-account post with an unusual pose or prop | ~1 in 6 | ~6 |
| Brand asset with a specific brief | ~1 in 10 to 1 in 15 | 10–15 |
| Promotional frame needing product accuracy | worse | plan accordingly |
What this changes in practice: chapter 2.6's twenty-to-thirty variations per week for brand work implies generating 200 to 450 frames a week at brand-quality rejection rates. That is not a discouraging number — it is a batch pipeline number, and it is the honest reason chapter 5.4 exists before this chapter does.
Track your own rate. Three numbers per batch: frames generated, frames passing QA, credits or minutes spent. The first two give you the rate; all three give you Generation spend divided by frames passing QA; the metric that makes tier changes comparable., which is what chapter 7.4 needs and what turns "quality" from an opinion into a parameter.
Where this goes wrong
Ranking before disqualifying. A beautiful frame with six fingers is not a candidate.
Skipping the canon test. Identity-correct frames that break continuity are the most expensive failures, because they publish.
Scoring from memory. Side by side with the sheet, or the score means nothing (4.6).
Fixing frame-level symptoms of pipeline-level problems. The The twelve-defect diagnostic routing nine of twelve fixes back into the pipeline rather than into the frame. exists so you stop doing this.
Pre-compressing exports. You are damaging the detail you paid to create.
No rejection rate. You cannot size a batch, price brand work, or notice a regression.
A lower bar when the batch is thin. The bar is the bar; a thin batch is a production problem.
The gate
- Are your three QA stages in order, with disqualification rather than ranking?
- Do you check hands on every frame, regardless of how it looks overall?
- Is identity scored against the sheet, side by side?
- Is the canon test a step with a fixed place in the flow?
- Do you know your survival rate, and does your batch size follow from it?
- Does every frame end in one of four destinations, decided at QA?
What you leave with
Three ordered QA stages where identity and narrative follow a cheap technical pass, the twelve-defect rejection table that routes nine of twelve fixes back into the pipeline rather than into the frame, platform export guidance with the compression and color traps named, a four-destination publishing queue, realistic survival rates by context with the batch arithmetic they imply, and the two numbers that make quality a parameter: survival rate and cost per usable frame. Part VI adds motion and voice.