FSRS: spaced repetition that respects how memory works
Everyone who has tried flashcards knows the two failure modes: you review words you already know cold (boring, wasteful), or you don’t see a word again until long after you’ve forgotten it (pointless). The fix is spaced repetition — reviewing each item at growing intervals, timed to your memory rather than the calendar.
The forgetting curve
More than a century ago, Hermann Ebbinghaus showed that memory decays predictably: steeply at first, then more slowly. Each time you successfully recall something, the curve flattens — the memory lasts longer before the next review is due. Good spaced repetition rides that curve, scheduling the next review for the moment just before you would forget.
What FSRS adds
Older apps used fixed rules — the classic “double the interval each time.” FSRS, the Free Spaced Repetition Scheduler, replaces those rules with a model of memory that tracks three things per card:
- Retrievability — how likely you are to recall it right now.
- Stability — how slowly it is currently fading.
- Difficulty — how hard this particular item is for you.
From those, it predicts the day your recall probability will drop to a target you choose, and schedules the review there. Fewer reviews, better retention — because nothing comes back sooner or later than it needs to.
Why context matters more than the algorithm
A scheduler can only revisit what you put into it. The weakness of most decks isn’t the algorithm — it’s that the cards are stripped of context: a bare word and a translation, learned in a vacuum.
Halm builds the deck from your reading. Every word you tap in a story flows into review with the sentence it came from, so when FSRS brings it back, you’re not recalling a dictionary entry — you’re recalling something you actually read. The algorithm schedules; the context makes it stick.