FSRS vs SM-2: Which Anki Scheduler Should You Use?
Where SM-2 came from
SM-2 was published by Piotr Woźniak for SuperMemo in 1987, and classic Anki's scheduler descends from it. The core is simple: every card carries an "ease factor" (starting around 2.5). Answer well and the next interval is the previous one times ease; answer "Hard" or fail and ease drops.
It works — decades of Anki users are proof. But the mechanics have known failure modes:
- Ease hell. Every lapse pushes ease down, and it recovers slowly. Cards you struggled with once get stuck on short intervals forever, flooding your daily queue with reviews you don't need.
- One-size-fits-all. The formula's constants were hand-tuned in 1987 and are the same for every person and every card type. Your actual forgetting curve never enters the picture.
- No retention dial. You can't tell SM-2 "I want to remember 90% of this deck." You tune indirect knobs (interval modifier, ease rewards) and hope.
What FSRS does differently
FSRS — Free Spaced Repetition Scheduler, an open-source project by Jarrett Ye and collaborators — replaces the fixed formula with a model of memory. Each card is tracked with three quantities (the DSR model):
- Difficulty — how hard this card is for you,
- Stability — how long the memory currently lasts,
- Retrievability — the probability you'd recall it right now.
The parameters aren't hand-tuned constants: the optimizer fits them to your own review history. And instead of indirect knobs, you set the thing you actually care about — desired retention (say 0.90) — and FSRS schedules each card for the moment its recall probability is about to drop below that.
Two practical consequences:
- Fewer wasted reviews. Cards you know well get pushed out further than SM-2 would dare; genuinely hard cards come back sooner. In the open srs-benchmark project, run on hundreds of millions of real Anki reviews, FSRS variants consistently predict recall more accurately than SM-2 — that prediction accuracy is exactly what turns into saved reviews.
- No ease hell. A lapse updates stability and difficulty sensibly instead of permanently punishing the card.
The honest caveats
- FSRS is only as good as the history it fits. With very few reviews it starts from population-level defaults (still fine — they were fit on massive data).
- If you constantly override intervals by hand or use "Hard" as "fail," the model learns from noisy signals. Grade honestly.
- SM-2 isn't broken. If you have a stable routine and your workload feels fine, switching is an optimization, not a rescue.
Switching without losing progress
On desktop Anki (23.10 or later): Deck Options → enable FSRS, set desired retention (0.85–0.95 is the sensible range; higher = more reviews), and click "Optimize" to fit parameters to your history. Your cards, history, and media are untouched — only future scheduling changes.
On iPhone: Guru uses FSRS natively — imported decks (.apkg with scheduling intact) continue from their existing state, and new AI-generated decks (straight from your PDFs) are FSRS-scheduled from card one. There's no toggle to find.
Picking a desired retention
- 0.90 — the default recommendation; balanced workload.
- 0.95 — exam within weeks, failure expensive. Expect a visibly larger daily queue.
- 0.85 — long-horizon accumulation (languages, general knowledge) where volume matters more than any single card.
The point of FSRS is that this trade-off is finally explicit: you choose the retention, the algorithm pays the minimum review cost to hold it.