Chapter 4 · Scripting & Retention · Lesson 11

Keep them watching

Why this lesson: a great hook only buys you a second. If the middle sags, they leave — and the feed reads that as "not worth showing." This lesson is about the second signal: making people stay. Same bug, same fix — but scripted so nobody scrolls off before the payoff.

First, recall From Lesson 2: the three signals were Stop → Stay → React. What did the Stay signal measure, and which blocks fed it? (It's retention / average view duration — fed by your Value + Payoff.) This whole lesson is about winning that middle signal.

Retention is a leak you plug

Average view duration isn't one number you "improve" — it's a curve that drops every time a viewer gets bored, confused, or feels the video stall. Keeping people watching is mostly removing the reasons they leave. The biggest one on short-form is the intro: "hey guys, in this video…" is dead air, and dead air is a scroll [MrBeast production memo — AVD].

Open loops and the story spine

Two tools keep a viewer leaning in. An open loop is a question you raise now and answer later — "the fix was one line, but I looked in the wrong place for an hour." They stay to close the loop. The second is the but/therefore spine: link your beats with "but" and "therefore," never "and then… and then." "The API returned stale data, therefore I checked the DB — but the DB was fine…" That tension is what a story is; "and then" is a list, and lists are boring [Ali Abdaal — scripting systems].

Worked example · fixing a rambling Reel into a tight one

Before (leaks): "Hey guys! So today I want to show you a caching thing. Um, so I was working on my Node API the other day, and I deploy a lot, and anyway I noticed some weird behavior, and I looked around for a while…" — 12 seconds and no value yet. Viewers gone.

After (tight):

Hook: "This one line cost me 3 hours in production."

Loop + but/therefore: "My API kept serving stale data — therefore I blamed the database, but the database was fine."

Payoff (loop closes): "The real culprit — a missing Cache-Control header. One line fixed it."

Same bug from Lesson 10. The intro is gone, the open loop pulls them past the middle, and the promise lands in seconds. That's a rising retention curve.

Quick self-check

No clues in the formatting — pick from memory, then click.

1. The Stay signal (retention / AVD) is improved mainly by…

Retention is a leak you plug. Cut the intro, cut dead air, deliver the promise fast — every removed stall is a viewer who stays a little longer.

2. An open loop keeps someone watching because it…

You promise a payoff — "I looked in the wrong place for an hour" — and they stay to close the loop. The answer arriving is the release.

3. The "but / therefore" spine beats "and then… and then" because it…

"And then" is a list, and lists are boring. "But" and "therefore" link beats with cause and conflict — that tension is what a story actually is.

Your turn · do this now Take the five-line script you wrote last lesson. Delete the greeting, and rewrite the middle so its beats are joined by "but" and "therefore." Add one open loop in the hook or context. Paste the before and after to me and I'll point to where the retention was leaking.
Primary source · study this The clearest case for retention is the annotated MrBeast production memo — obsess over average view duration and the first 60 seconds. Read it for the mental model of holding attention; skip the hustle-culture bits.
💬 Your teacher is here. Not sure where your Reel sags, or how to turn a linear bug story into but/therefore? Paste the script — spotting the leak together is exactly what this lesson is for.
← Lesson 10 Script template Lesson 12 →