Skip to content
Lexicamp

Guide

FSRS vs SM-2, without the marketing

Last updated

If you use a flashcard app, it’s almost certainly scheduling your reviews with SM-2, an algorithm from 1987, or FSRS, a newer model trained on hundreds of millions of real reviews. Most of what’s written about which is better recycles one wiki sentence with its caveat removed. Here’s what each actually does and what the evidence actually shows.

SM-2 is older than most people using it

Piotr Woźniak implemented SM-2 in December 1987 for SuperMemo on DOS and described it in his 1990 master’s thesis. It fits in your head: each card carries one number, an E-Factor starting at 2.5. Intervals run 1 day, 6 days, then previous × EF. You grade yourself 0–5; good grades nudge EF up, bad ones push it toward a floor of 1.3. Failing restarts the card’s intervals but, in a detail secondary explainers routinely get backwards, does not change the E-Factor. Elegant work for a 640K machine, with one structural limit: a single number has to carry everything, how hard the material is, how well you know it, and how long it’s been.

One note that invalidates half of what you’ll read: Anki does not implement SM-2. Four buttons instead of six grades, one fail option instead of three, configurable learning steps, a bonus for late reviews. “FSRS beats SM-2” almost always means FSRS beat Anki’s variant: the comparison most people care about, but not Woźniak’s 1990 algorithm, and the two get conflated constantly.

What FSRS models instead

FSRS, developed by Jarrett Ye, tracks three quantities per card: retrievability, the probability you could recall it right now; stability, the days it takes retrievability to fall from 100% to 90%, which is the thing that grows when you recall successfully; and difficulty, how hard the material is to stabilise. The shipping version, FSRS-6, fits 21 parameters to your own review history. (FSRS-7, with 35, is research-only as of mid-2026.)

The practical payoff is a control SM-2 can’t offer: desired retention. Pick the probability of recalling a card when it comes due (90% by default) and the scheduler solves for intervals that hit it. 97% means remembering more at a steeply climbing workload; 80% means much less work and more forgetting. The trade is yours, explicitly, which is a different thing from tuning a multiplier and hoping.

What the evidence actually says

The open-source srs-benchmark project tests schedulers against ~727 million reviews from 10,000 Anki users (~350 million after excluding same-day repeats), training on each user’s past and evaluating on their future. It measures prediction accuracy: when the model said 73% chance of recall, were you right 73% of the time?

Algorithm Parameters Log loss RMSE (bins) AUC
RWKV-P 2,762,884 0.2773 0.0250 0.8329
FSRS-6 21 0.3460 0.0653 0.7034
FSRS-5 19 0.3560 0.0741 0.7011
FSRS v1 7 0.4913 0.1316 0.6295

Three caveats worth more than the table. SM-2 isn’t in it; it was never designed to output probabilities, and the maintainers say plainly there’s no truly fair comparison; the figure that does get published, FSRS-6 beating Anki’s SM-2 on log loss for 99.6% of users, is real with that caveat attached. The famous “20–30% fewer reviews” figure is a simulation; the maintainers amended the claim in February 2026 to say so, and every blog post quoting it as a measurement dropped the qualifier. And FSRS is not the most accurate algorithm known: RWKV-P, at 2.76 million parameters, beats it on every metric. FSRS is the best algorithm that can actually ship: 21 parameters that fit on a phone and optimise in seconds. That’s a more interesting claim, and a more honest one. Keep the ceiling in view too: the best model’s AUC is 0.83 and FSRS sits near 0.70, so predicting whether you will recall this card remains hard for everyone.

Practical corollaries, briefly: FSRS is still opt-in in Anki (since 23.10; the issue to make it default is open). It ignores your answer time; intervals and grades only. Pressing “Hard” when you actually failed will wreck it, since FSRS counts Hard as a pass. And never hand-edit or copy parameters: a stranger’s numbers describe a stranger’s memory.

So which one should you care about?

Less than the marketing implies. FSRS is better, the evidence is real, and the margin is smaller than the gap between reviewing consistently and not, which is why we think the scheduler is the least interesting thing about a vocabulary app. If you use Anki, enable FSRS; it takes a minute.

Lexicamp schedules with FSRS. We didn’t build our own: a maintained open implementation tuned against more data than we’ll ever see beats anything we could hand-roll, and the honest place to compete is everything else. For the memory science underneath, see how spaced repetition actually works.

References