Verbamor Start 7 days free
All posts Free debrief sheet

How FSRS schedules your reviews (under the hood)

FSRS schedules each review by tracking three numbers per card (difficulty, stability and retrievability), updating them after every grade, and bringing the card back when your predicted recall has sagged to about 90%. Its 21 parameters start from crowd defaults and re-fit to your own reviews. SM-2, the 1987 scheduler Anki still uses by default, multiplies your last interval by one number per card instead.

You tap Good on el bosque and the card vanishes for 12 days. Why 12? Why not 10, or 15? Why does your friend's identical card wait 8?

Somebody decided, and that somebody is an algorithm with a published paper, an open-source repo, and strong opinions about your memory.

The algorithm is called FSRS, the Free Spaced Repetition Scheduler. Jarrett Ye and collaborators created it, and it's been tested in the open on hundreds of millions of real reviews. Verbamor runs it under the hood.

Here's the actual machinery, no math degree required, because a tool that decides your daily 20 minutes deserves to be inspectable.

A card is three numbers, and only one of them moves by itself

FSRS models every card as three quantities, the DSR model:

  • Difficulty (D): how stubborn this particular card is for you. Hola is a 1; the subjunctive trigger phrase your tutor keeps sighing about is a 9. Difficult cards grow their intervals more slowly.
  • Stability (S): how long the memory lasts. Formally: the days until your recall odds sag to 90%. Stability is the number your reviews are trying to grow, from hours at first to, eventually, years.
  • Retrievability (R): the odds you'd recall the card right now. This one falls on its own, every day, along a forgetting curve. It's the live, per-card version of what Ebbinghaus drew in 1885.
Each successful review makes the next slide down slower Retrievability is your odds of recalling the card right now, and it falls on its own. A review at the 90% line pulls it back to full and raises stability, so the gap before the next review stretches without anyone widening it by hand. 90% target review 1 review 2 review 3 time → 100% Schematic of the FSRS DSR model, not measured data. The shape (expanding gaps after each success) is what the model produces; your own intervals depend on the card and your grades.

Two details separate FSRS from older models. The forgetting curve FSRS fits is a power curve. It matches large-scale review data better than the exponential everyone drew for a century: fast early decay, then a longer, flatter tail.

And stability, difficulty, and your review history all interact. The model was fitted to how memory actually behaves in the wild, where older ones used a formula someone liked in the 80s.

What does each grade button actually do?

Each grade pushes the card's stability up or down, because every grade is a tiny experiment and your tap is the result coming back. Roughly:

  • Good: the model was right to schedule you now. Stability jumps (the biggest jumps come from succeeding when R had sagged, the desirable difficulty payout, formalized). Next interval: longer.
  • Hard: you made it, barely. Stability grows a little, difficulty ticks up, the next interval stretches cautiously.
  • Easy: the model undershot. Big stability jump, difficulty ticks down.
  • Again: the memory wasn't where the model thought. Stability takes a real haircut (it doesn't reset to zero; relearning is faster than learning, as Ebbinghaus's savings showed). Difficulty rises, and the card comes back soon.

The model learning from your taps is why honest grading is a mechanical requirement. The model is running a regression on your taps, fitting its numbers to them. Polluted data, polluted schedule.

Six weeks, six reviews, one honest failure priced in

Follow el bosque through its first month and a half, with illustrative numbers:

  • Day 0. You learn it. Stability starts small, call it 2 days. The card is due day 2.
  • Day 2. R has sagged to ~90%. You produce it after a beat: Good. Stability jumps to ~6 days.
  • Day 8. Good again, a cleaner recall this time. Stability ~18 days. The gaps are compounding.
  • Day 26. You blank, then recognize it on the flip: Again, if you're honest. Stability takes a haircut to ~8 days, difficulty ticks up, and it comes back tomorrow for a quick relearn.
  • Day 27, then day 36. Two solid Goods. Stability climbs past 3 weeks, now on a slightly more cautious track because the model learned this word runs stubborn for you.

Six weeks, 6 reviews, maybe 50 seconds of total screen time. The card has gone from hours-fragile to weeks-stable, with one honest failure priced in along the way.

Multiply by 600 cards, each on its own track, and you can see why no one schedules this by hand.

The 90% target is why reviews never feel easy

Here's the design decision I find most elegant: FSRS doesn't actually schedule "when you'll forget." It schedules to a desired retention target, and the default is around 90%: each card comes back when your predicted recall has sagged to 9-in-10.

A 99% target would cost too much. Retention and workload trade off brutally.

Holding 99% means reviewing everything constantly for a sliver of extra recall. Dropping to 90% cuts the daily pile enormously while keeping most of the memory.

And the occasional miss still earns something: a failed retrieval plus correction is itself a potent learning event. The dial is set where the math and the memory research agree the value is.

The 90% dial also explains a feeling every spaced-repetition user knows: reviews are never comfortable. Of course they aren't.

The system is deliberately showing you each card at the moment your recall has decayed to its shakiest acceptable point. If your reviews felt easy, the scheduler would be wasting your time, showing you things too early.

The 10% you miss is the operating point.

The scheduler's promise is precise: every card, surfaced at the moment its odds hit 90%. What it costs you is arithmetic.

How is FSRS different from SM-2? One multiplier against three numbers

SM-2 multiplies your last interval by a single number per card, and FSRS predicts the day your recall will fall to a level you chose. Everything else follows from that.

SM-2 is short enough to read in a coffee break. Piotr Wozniak wrote the first program running it in December 1987, and his description is still online.

Every card carries one number, the E-Factor, which starts at 2.5. The first interval is 1 day and the second is 6. After that, each interval is the last one multiplied by the E-Factor.

So a card at 6 days with an E-Factor of 2.5 comes back at 15 days, then about 37, then about 94. You grade each review from 0 to 5. A fixed formula then nudges the E-Factor: a 5 lifts it a little, a 4 leaves it alone, a 3 drags it down.

Wozniak set a floor of 1.3, because cards below it "were repeated annoyingly often." A grade under 3 restarts the card at 1 day and leaves the E-Factor where it was.

That's the whole algorithm. It holds no estimate of how likely you are to remember the card tomorrow, and no setting for how much forgetting you'll accept.

Hard cards sink to the floor and stay there

The floor is where SM-2 hurts. Take a card you keep half-remembering and give it a bare pass eight or nine times, and its E-Factor sits at 1.3.

Now its interval barely grows: 10 days becomes 13, 13 becomes 17. Only a run of perfect grades lifts it back out, and you're not going to give a stubborn card perfect grades. Anki users call this "ease hell."

The opposite case is the long jump. Pass a new card cleanly five times and its next gap is past 3 months, because 2.5 keeps multiplying. SM-2 has no view on your memory of that word, so it learns the gap was too long only when you fail.

FSRS moves difficulty and stability separately, so a hard card still gains stability slowly instead of freezing. And because you set desired retention, a long interval is the answer to a question you asked.

The benchmark measures prediction, and the payoff to you is unmeasured

The open benchmark that tests these schedulers now runs on about 727 million reviews from 10,000 Anki users. It scores each one on log loss, a measure of how far its recall predictions sat from what happened, where lower is better.

FSRS-6 scores 0.3460. A baseline called AVG, which predicts your lifetime average for every card, scores 0.3945. Duolingo's published scheduler, half-life regression, scores 0.4694.

Two honest footnotes. SM-2 doesn't output a recall probability at all, so the current table has no SM-2 row. And a zero-parameter moving average scores 0.3369, better than FSRS-6 and level with the newer FSRS-7 with recency weighting (0.3370).

I know of no trial where one group studies under SM-2 and another under FSRS for a year and then sits the same exam. Anyone promising a percentage cut in your study time is quoting the people who wrote it.

So the defensible claim is narrower. FSRS models your memory, gives you a retention dial SM-2 lacks, and has no ease hell. Those are facts about the code.

The claim is tested in public, on 727 million real reviews The scheduler's claim is narrow and testable: predict recall more accurately than the alternatives. The benchmark that tests it is open, and so is the code that runs it.
727M
Anki reviews in the public benchmark it's tested on
10,000
Anki users' review histories in that benchmark
21
parameters in FSRS-6, re-fitted to your personal review history
Source: Open Spaced Repetition, SRS benchmark README, read 13 October 2026. Figures from its table without same-day reviews. Maintained in the open; anyone can rerun it.

I've put the apps I know about side by side in the spaced repetition roundup, compared on the scheduler instead of the marketing.

The 21 parameters bend toward whoever you turn out to be

The current generation, FSRS-6, has 21 fittable parameters: how fast difficulty drifts, how much a Hard differs from a Good, the shape of your personal forgetting curve, and so on. They ship with defaults learned from the crowd, which already work well.

Then, as your reviews pile up, Verbamor re-fits the 21 parameters to you. Maybe you're a fast forgetter with a great Again-recovery. Maybe images do unusual work for you.

A few thousand reviews in, the parameters have quietly bent toward whoever you turn out to be. The 12-day interval on el bosque really is your 12 days.

So FSRS is the whole machine: three numbers per card, a grade-driven update, one honest dial, and a benchmark anyone can audit.

You never have to think about any of it again, which was always the point. But now when a card disappears for 12 days, you know exactly who decided, and on what evidence.

And if you're the type who wants to audit FSRS yourself: everything above is public. The algorithm spec, the benchmark code, the parameter definitions, all of it sits on GitHub under the Open Spaced Repetition project.

It's argued over in the open by people who care an unreasonable amount about your flashcards. Memory science with a changelog.

Anki still ships SM-2, so check your toggle in two minutes

Anki doesn't run FSRS unless you switch it on. Its manual calls FSRS "an alternative to Anki's legacy SuperMemo 2 (SM-2) algorithm," and plenty of articles wrongly say it became the default. If you're weighing a switch to another app for a better scheduler, what leaving Anki actually costs is a different story.

Open any deck, click the gear, choose Options, and scroll to the FSRS section at the bottom. If the toggle is off, every interval you've seen came from the E-Factor arithmetic above.

If you switch it on, four pieces of the manual's advice are worth following:

  • Optimize after a few hundred reviews. The manual lists "less than a few hundred" reviews as a reason FSRS may fit you badly, and says optimizing once a month is enough.
  • Leave desired retention at 90% at first. Above 90% "the workload increases very quickly," and above 97% it "can be overwhelming."
  • Skip "Reschedule cards on change" on the first switch. It rewrites every due date at once, and the manual marks it "not recommended" when you first leave SM-2.
  • Press Again when you forget. FSRS reads Hard as a pass, so a Hard on a blank pushes every later interval too far out.

Verbamor runs FSRS with no toggle to find, but it gives you none of those controls: no retention slider, no parameter editor, no add-ons. If you want to tune a scheduler yourself, Anki is the better tool, and it isn't close.


Sources

The forgetting curve foundation

The FSRS algorithm

Benchmarked on real reviews

  • Open Spaced Repetition (ongoing). SRS benchmark. About 727 million reviews from 10,000 Anki users. Log loss without same-day reviews: FSRS-6 0.3460, MOVING-AVG 0.3369, AVG 0.3945, HLR 0.4694. Read 13 October 2026.

Research-grade scheduling, zero spreadsheets.

Verbamor runs FSRS on every card, fits its 21 parameters to your real reviews, and hands you the one number that matters: today's 20 minutes.

Start 7 days free

The 7-day free trial is on the yearly plan.

Verbamor screenshot titled ‘The lesson ends. The words stay.’ Before: a learner sits alone at her laptop after a lesson. Three Spanish cards saved from it, la cuenta, el mesero and la propina, lead to the after: she laughs and chats with a waiter at a café table.