Top: how the profile grid will look (newest top-left, includes the 2 scheduled text cards). Below: each reel in schedule order with its cover, the frame it came from, and quick swaps (2 other frames + 1 other headline).
Headlines rewritten Oct 21 with the cover-hook rubric (COVER-HOOKS.md): 5 candidates per reel, scored, best one used. Each reel shows why, the runner-up and the old headline.
Reply with swaps like “Oct 25: alt frame 2” or “Oct 27: alt headline”. Nothing is on Metricool yet.

Can't keep your / word? Try 7 days.
Why: Calls out his core pain in his words ('keeping your own word') and the 7 days is the reel's exact ask; drops the banned 'quit your job' framing.
Runner-up: “Can't keep your / own word? Start here.”
Old: “You don't have to / quit your job.” · 5 candidates scored (hook_candidates.json)



Quick swaps (alt headline = runner-up)



Another course / won't fix this
Why: Kept: names the exact thing he's buying again (course) and says it won't work; only reel on the grid that's a flat 'won't fix' contrarian.
Runner-up: “Ready after / one more book?”
Old: “Another course / won't fix this” · 5 candidates scored (hook_candidates.json)



Quick swaps (alt headline = runner-up)



In 12 months, / same man?
Why: His own number (12 months) plus the mirror question he asks in the reel; more specific than 'Monday'.
Runner-up: “Not Monday. / Not January.”
Old: “Still waiting / for Monday?” · 5 candidates scored (hook_candidates.json)



Quick swaps (alt headline = runner-up)



Miserable with a / smile on my face
Why: His exact memo line ('miserable with a smile on my face', LAYER-1 hook bank); the reel says the same thing about showing up to work smiling.
Runner-up: “Smiling at work. / Dying inside.”
Old: “Miserable / for years without / even knowing” · 5 candidates scored (hook_candidates.json)



Quick swaps (alt headline = runner-up)



Off day? / Check your sink.
Why: Pattern-break: a motivation problem answered with the dishes; specific, and the reel pays it off literally.
Runner-up: “Unmotivated? Do / the dishes first.”
Old: “You're not / unmotivated. / You're buried.” · 5 candidates scored (hook_candidates.json)



Quick swaps (alt headline = runner-up)



Settled people want / you to settle too
Why: Kept: strongest us-vs-them line he says word for word; statement form keeps this grid row from being two questions in a row.
Runner-up: “Who told you / to be realistic?”
Old: “Settled people want / you to settle too” · 5 candidates scored (hook_candidates.json)



Quick swaps (alt headline = runner-up)



"I deserve it." / Then 6 months pass.
Why: Quotes the excuse he says in the reel back at the viewer (LAYER-1: the excuse phrase is the strongest copy), then opens the loop.
Runner-up: “6 months later, / in the mirror”
Old: “Nobody decides / to quit.” · 6 candidates scored (hook_candidates.json)



Quick swaps (alt headline = runner-up)



You don't believe / your own plan
Why: Names the feeling he describes (not believing your own plan) in 6 plain words; old version was 7 words on 3 lines.
Runner-up: “"This is my year." / Again?”
Old: “After enough / restarts, this is / what you lose” · 5 candidates scored (hook_candidates.json)



Quick swaps (alt headline = runner-up)



Worst day after / your best one?
Why: Same idea as the old 8-word hook, cut to 6 words and 2 lines; the reel answers it directly.
Runner-up: “The down days / are required”
Old: “Why your best day / is followed / by your worst” · 5 candidates scored (hook_candidates.json)



Quick swaps (alt headline = runner-up)



A photo you hate. / The scale.
Why: Two concrete triggers every viewer has felt; opens the loop the reel closes (don't wait for them). His caption words.
Runner-up: “50 pounds you / didn't notice”
Old: “Stop waiting / for pain to / make you move” · 5 candidates scored (hook_candidates.json)



Quick swaps (alt headline = runner-up)



I quit my job. / It got harder.
Why: Kept: first-person twist nobody expects (more time made it harder). FLAG: uses quitting his job, which is the reel's literal story (his own, not advice).
Runner-up: “"If I just had / more time..."”
Old: “I quit my job. / It got harder.” · 5 candidates scored (hook_candidates.json)
Flag: quit-job wording: his own story and the reel's literal topic; not 'quit your job' advice. Trenton's call.



Quick swaps (alt headline = runner-up)



Some days / 40% is enough
Why: His number (40%) and a contrarian permission most discipline accounts never give; the reel says it word for word.
Runner-up: “"I was killing it / yesterday."”
Old: “Stop asking this / on your bad days” · 5 candidates scored (hook_candidates.json)



Quick swaps (alt headline = runner-up)



Great at starting. / Never learned this.
Why: Kept: identity call-out (great at starting) plus an open loop; reads clean next to 'The plan isn't the problem' on the same grid row.
Runner-up: “Starting was never / my problem”
Old: “Great at starting. / Never learned this.” · 5 candidates scored (hook_candidates.json)



Quick swaps (alt headline = runner-up)



You didn't quit. / You forgot it.
Why: Kept: contrarian reframe of something every restarter has felt; reel pays it off exactly.
Runner-up: “Nobody says / "I quit."”
Old: “You didn't quit. / You forgot it.” · 5 candidates scored (hook_candidates.json)



Quick swaps (alt headline = runner-up)



The plan isn't / the problem.
Why: Contrarian and opens a loop (then what is?); old headline was a near-copy of the Oct 22 6AM cover.
Runner-up: “You already have / a plan that works”
Old: “You don't need / another course” · 5 candidates scored (hook_candidates.json)



Quick swaps (alt headline = runner-up)


