The short answer

Use FSRS if your app offers it. It predicts the probability that you'll recall each card and schedules against a retention target you choose, rather than multiplying the last interval by a fixed number. Expect meaningfully fewer reviews for the same retention. But the gain is smaller than the gain from writing better cards or simply reviewing every day.

That last sentence is the one most comparisons leave out, so it's worth stating first: algorithm choice is a real but second-order optimisation. Someone with a well-curated deck on SM-2 who reviews daily will comprehensively out-learn someone with a bloated deck on perfectly tuned FSRS who reviews twice a week. Fix the habit and the cards first. Then come back to this page.

How SM-2 works

SM-2 gives each card an ease factor starting at 2.5. Each time you answer successfully, the next interval is the previous interval multiplied by that ease factor. Rating a card as hard lowers its ease; failing it resets the interval and lowers the ease further. That is essentially the entire algorithm.

Piotr Woźniak published it as part of SuperMemo 2 in 1987–88. The design constraints were severe — it had to run on an early PC, and it had to work from a handful of numbers per card. Judged against that, it is a remarkable piece of engineering that has held up for the better part of forty years.

The mechanics, in the original formulation:

  • The first interval is 1 day; the second is 6 days.
  • Thereafter, interval(n) = interval(n−1) × ease.
  • You grade recall from 0 to 5. Ease is then adjusted by a small polynomial: a perfect answer raises it by 0.10, a "correct after hesitation" answer leaves it roughly unchanged, and anything worse lowers it — by 0.14 for a difficult recall, and considerably more for a failure.
  • Ease is floored at 1.3 and never goes below it.
  • Failing a card sends it back to the start of the interval sequence.

Anki's long-standing default scheduler was a modified SM-2. It replaced the 0–5 grades with Again / Hard / Good / Easy, where Good multiplies the interval by the ease and leaves the ease alone, Hard applies a small multiplier and cuts the ease, Easy applies a bonus and raises the ease, and Again counts as a lapse. Same skeleton, friendlier grading.

The four things SM-2 can't see

The limitations aren't bugs. They're consequences of the design, and they're all consequences of the same thing: SM-2 has no model of memory. It has a multiplier.

1. It ignores how long you actually waited

A card is due on day 10. You answer it on day 10; you get the same next interval as if you'd answered it on day 24 after a fortnight away. In the second case you demonstrably knew it after 24 days — that's much stronger evidence of durability — and SM-2 discards that information entirely. It knows the scheduled interval, not the elapsed one.

This is why SM-2 handles backlogs badly. Everything you clear late is evidence the algorithm can't read.

2. It has no notion of probability

Ask SM-2 "what's the chance I remember this card today?" and there's no answer to give. Ease isn't a probability; it's a growth rate. Because there's no predicted recall probability, there's nothing to compare against a target — so there is no way to say "schedule this so I'll remember 90% of what's due", which is the request most people actually want to make.

3. Ease drifts in one direction

Under Anki's variant, Good — the answer you'll press for the overwhelming majority of reviews — leaves ease unchanged. Hard and Again cut it. Only Easy raises it, and pressing Easy on a card you found merely fine is a habit few people have.

So ease is a ratchet that mostly turns one way. A card that gave you trouble in its first fortnight carries the penalty for the rest of its life, even after it has become genuinely easy. This is the failure mode with a name.

4. It can't learn from you

The constants — 2.5, 1.3, 6, the coefficients of the ease polynomial — were chosen by hand in the 1980s. They are identical for a medical student drilling pharmacology and a hobbyist learning Italian. There is no mechanism by which fifty thousand of your own reviews could improve them, because SM-2 has no parameters to fit.

Ease hell, with numbers

Ease hell is what happens when a card's ease factor sinks to the 1.3 floor and stays there. Its intervals then grow by only 30% per successful review, so it keeps coming back every few weeks forever — no matter how well you now know it. A small number of such cards can dominate your daily queue.

The arithmetic makes it vivid. Take two cards, both currently at a 10-day interval, both answered Good every time from here on:

ReviewHealthy card (ease 2.5)Ease-hell card (ease 1.3)
Current10 days10 days
Next25 days13 days
+263 days17 days
+3156 days22 days
+4391 days29 days
+52.7 years37 days

After five more successful reviews the healthy card has effectively left your queue. The ease-hell card is still showing up monthly, and will keep doing so indefinitely. Ten reviews later it reaches about four months while the other is past a decade.

Note what has and hasn't happened here. The ease-hell card was hard once. It is not hard now — you have answered it correctly six times running. SM-2 has no mechanism for noticing that, because ease only rises on Easy, and you're not going to press Easy on a card you've been failing for months out of sheer habit.

Experienced Anki users developed folk remedies for this — periodically resetting ease across a deck, or never pressing Hard. Both are workarounds for a structural gap. FSRS closes the gap by making a card's difficulty regress toward the mean as it accumulates successes, so a card can genuinely recover.

One honest qualification

Some cards deserve to be frequent. If a card is in ease hell because it's genuinely broken — two facts in one, or interfering with a sibling — no scheduler will save it. That's a card-writing problem, and it's covered in how to make flashcards that actually work. FSRS will handle the card better; it won't make it a good card.

How FSRS works

FSRS — the Free Spaced Repetition Scheduler — models each card with three quantities: difficulty, stability, and retrievability. Stability is the number of days until your recall probability drops to 90%. Retrievability is the current probability, computed from a forgetting curve. The card is scheduled for the day retrievability hits your chosen target.

It grew out of the DSR framework in Woźniak's later work on memory, and was developed as an open-source project — chiefly by Jarrett Ye and contributors — trained on a large public dataset of real review logs.

The three variables

  • Retrievability (R) — the probability you'd recall the card right now, between 0 and 1.
  • Stability (S) — measured in days, defined as the interval at which R falls to 0.9.
  • Difficulty (D) — on a 1–10 scale, how resistant this particular card is to gaining stability.

The forgetting curve, explicitly

FSRS computes retrievability as R(t) = (1 + f · t/S)−0.5, with t days since the last review and f = 19/81. Put t = S and it evaluates to exactly 0.9, which is stability's definition made concrete. In recent revisions the decay exponent has itself become a fitted parameter rather than a fixed −0.5.

This is a power curve rather than an exponential one, matching what the retention literature found decades ago — forgetting decelerates, so long-interval cards decay more slowly than a constant-rate model predicts. See the forgetting curve for that background.

How stability updates

This is where FSRS earns its keep. When you answer a card successfully, the increase in stability depends on three things:

  • Current stability — the higher it already is, the smaller the proportional gain. Diminishing returns are built in, which is why a card doesn't run away to a hundred years.
  • Difficulty — harder cards gain less per review.
  • Retrievability at the moment of review — and this is the interesting one: the lower R was, the bigger the gain. Recalling something you had nearly forgotten increases stability more than recalling something still fresh.

That third rule is Bjork's desirable-difficulties principle expressed as arithmetic. SM-2 has no equivalent; it cannot distinguish an easy success from a hard-won one except through your button press.

Failing a card doesn't reset stability to zero either. A separate post-lapse formula computes a reduced stability that still reflects what the card had accumulated, so a single bad day doesn't undo a year.

Fitting it to you

FSRS has a set of numeric parameters — seventeen in FSRS-4.5, more in later revisions — governing these updates. The optimiser fits them to your own review log by minimising prediction error against what you actually remembered. Until you have enough history, it uses defaults derived from a large public dataset, which already outperform SM-2.

This is the genuinely new capability. Not "better constants" — the ability to have your constants.

Side by side

SM-2 (1987)FSRS
Core modelInterval × ease factorDifficulty, stability, retrievability
Predicts recall probabilityNoYes, explicitly
Uses actual elapsed timeNoYes
Retention targetNot availableUser-set, typically 0.90
Learns from your historyNoYes, via an optimiser
Recovery from early failuresPoor — ease ratchets downGood — difficulty reverts toward the mean
Handles a backlogDiscards the extra delayCredits it as evidence of stability
Forgetting curve shapeImplicit, noneExplicit power function
TransparencyVery high — arithmetic on paperLower — fitted parameters
Compute costNegligibleNegligible to schedule; optimising is a batch job

What the benchmark shows

The FSRS project maintains an open benchmark comparing scheduling algorithms on a large public corpus of real Anki review logs, scored on how well each predicts whether a review will be recalled. FSRS achieves substantially lower prediction error than SM-2. In practice this is usually reported as roughly 20–30% fewer reviews for equivalent retention.

The methodology is the right one: rather than arguing about which schedule "feels" better, it treats scheduling as a prediction problem. Given a card's history and the elapsed interval, what's the probability the user recalls it? Score every algorithm's predictions against what actually happened. Better calibration means the scheduler can hit your retention target with fewer reviews, because it isn't wasting reviews on cards you'd have remembered anyway.

Three caveats an honest comparison has to make:

  • The benchmark is run by FSRS's own developers. It is open source, reproducible, and includes SM-2 and several alternatives as baselines, which is close to best practice for this kind of thing. It is still not independent evaluation, and you should read it that way.
  • The corpus is self-selected. It is drawn from Anki users who opted to share review logs — heavily weighted toward language learning and medicine, and toward people committed enough to run Anki for years. Your material may behave differently.
  • "20–30% fewer reviews" is a headline, not a promise. The realised saving depends on your retention target, your deck, and how good your cards are. Someone whose deck is full of compound cards will see less benefit, because their problem isn't scheduling.

FSRS has shipped inside Anki since version 23.10, initially as an opt-in setting, and has since become the recommended scheduler there. That is a meaningful signal on its own: the project with the most to lose from a bad scheduler adopted it.

The dial SM-2 never had

Because FSRS predicts recall probability, it can accept a target: the fraction of due cards you want to get right. The default is 90%. This single setting is the most consequential thing you control, because workload rises steeply as the target approaches 95% while accuracy rises only slightly.

The shape of the trade-off is worth internalising:

Target retentionEffect on intervalsUse when
0.95Much shorter; workload rises sharplyFinal weeks before a high-stakes exam
0.90 (default)BalancedAlmost always
0.85Noticeably longer; fewer daily reviewsSustainable long-term study, large decks
< 0.80Long intervals, frequent lapsesRarely a good idea — relearning costs eat the saving

There's a real optimum in here, and it's usually a little below 0.90 rather than above it. Every failed card has to be relearned, which costs reviews; every unnecessarily early review also costs reviews. Push the target too high and you drown in premature reviews, too low and you drown in relearning. The minimum sits in a broad valley somewhere around 0.85–0.90 for most decks, which is why the default is where it is.

If your queue is unmanageable, lowering this is a far better response than skipping days.

Where to find FSRS

Anki has it built in (deck options → FSRS), and it's the scheduler behind Memori, which also supports tuning the parameters to your personal review history. If you're choosing an app, "which scheduler" is a fair question to ask of it — an app that won't tell you is worth a raised eyebrow.

When SM-2 is still fine

Cases where switching isn't worth the effort:

  • Small or young decks. Under a few hundred cards, or in your first month, the schedulers barely diverge. There isn't enough interval growth yet for the difference to compound.
  • Short, fixed horizons. Studying for something six weeks away, after which the deck is retired? Almost all the difference between the algorithms shows up over months and years.
  • You want to reason about the schedule by hand. SM-2 is arithmetic you can do on paper; FSRS is a fitted model. If predictability matters more than efficiency, that's a legitimate preference.
  • Your app doesn't support it. Migrating apps to change scheduler is a large cost for a second-order gain. Improve your cards instead.

Switching without breaking your deck

  1. Understand that nothing is destroyed. FSRS reads your existing review history and computes new intervals from it. Your cards, decks and logs are untouched, and the change is reversible.
  2. Expect movement in both directions in the first fortnight. Cards stuck at the ease floor typically jump a long way out — that's the correction working. A few mature cards may come back sooner.
  3. Leave the retention target at 0.90 initially. Change one thing at a time, or you won't know what caused what.
  4. Don't optimise immediately. Defaults are good. Fitting to your own history becomes worthwhile once you have a substantial log — on the order of a thousand reviews — and improves from there. Re-optimising every day is pointless.
  5. Grade honestly, and use all four buttons. FSRS extracts more signal from your ratings than SM-2 did, which means sloppy grading now costs you more. In particular, Hard means "I got it, but barely" — not "I failed".
  6. Judge after a month. Compare daily review count and your true retention rate against where you were. One week tells you nothing.

Frequently asked questions

Is FSRS actually better than SM-2?

On the evidence available, yes, for most people and most decks — it predicts recall better, which converts into fewer reviews at the same retention. Keep the size in perspective: it's a meaningful efficiency gain, not a different category of outcome. Card quality and consistency matter more.

What exactly is ease hell?

A card whose ease factor has sunk to the 1.3 floor, so its intervals grow by only 30% per review. Because ease falls on failures and rises only on Easy, cards that were hard early stay frequent forever. FSRS avoids it by letting difficulty revert toward the mean as a card accumulates successes.

Do I need thousands of reviews before FSRS helps?

No. Default parameters fitted to a large public dataset already beat SM-2 from day one. Personal optimisation is an additional, smaller gain that becomes worthwhile around a thousand reviews and improves as your log grows.

What should I set desired retention to?

Leave it at 0.90 unless you have a reason. Drop toward 0.85 if the daily load is unsustainable — the workload curve is steep near 0.95 and the accuracy gain is small. Raise it for the final weeks before a high-stakes exam, then put it back.

Does FSRS work with a review backlog?

Better than SM-2, because it uses actual elapsed time. Clearing an overdue card is stronger evidence of stability than clearing an on-time one, and FSRS credits that. SM-2 throws the information away. It still isn't a reason to build a backlog on purpose.

Is SuperMemo's current algorithm the same as FSRS?

No. SuperMemo has continued past SM-2 through many revisions of its own, and its recent algorithms are proprietary. FSRS is an independent open-source project that draws on the same underlying two-component model of memory. SM-2 is simply the last SuperMemo algorithm to be published in full, which is why it became the one everyone implemented.

Where this comes from

  1. Woźniak, P. (1990). Optimization of learning — the published description of the SM-2 algorithm, including the ease-factor update formula quoted above. SuperMemo.
  2. Open Spaced Repetition. FSRS algorithm specification and benchmark. The retrievability function, the stability update rules, and the comparative evaluation against SM-2.
  3. The Anki manual, Deck Options → FSRS, for the ease-factor behaviour of Anki's SM-2 variant and for FSRS availability from version 23.10 onward.
  4. Bjork, R. A., & Bjork, E. L. (1992). A new theory of disuse and an old theory of stimulus fluctuation. The desirable-difficulty principle that FSRS's retrievability term encodes.
  5. Wixted, J. T., & Ebbesen, E. B. (1991). On the form of forgetting. Psychological Science, 2(6), 409–415. On power versus exponential decay.