Spaced Repetition Algorithm

Definition:

The spaced repetition algorithm is the scheduling mechanism that powers spaced repetition systems (SRS) — computing when each individual flashcard should be reviewed next based on how well the learner recalled it during previous sessions, with the goal of spacing reviews at the optimal interval to prevent forgetting while minimizing total review time. The core insight is the Spacing Effect: memory retention is better when study is distributed over time than when massed (concentrated into one session). Algorithms quantify this effect — items rated as well-known are scheduled weeks or months in the future; items rated as poorly known are scheduled for review soon. The result is a highly efficient review system where long-term memory is maintained with dramatically less review time than non-spaced repetition methods would require.


The Spacing Effect (Ebbinghaus Foundation)

Hermann Ebbinghaus (1879–1885) established that forgetting follows a predictable exponential decay curve — the Forgetting Curve. Crucially, Ebbinghaus also established that review near the moment of forgetting resets the curve — and each review after successful recall extends the next interval. Spaced repetition algorithms formalize this observation into computable scheduling.

SM-2 Algorithm (SuperMemo 2)

The SM-2 algorithm, developed by Piotr Wozniak for SuperMemo in 1987, is the foundation for Anki’s scheduling and most modern SRS systems. Key elements:

  • Ease factor (EF): Each card has an ease multiplier — cards rated harder get lower EF (shorter next intervals); cards rated easier get higher EF (longer next intervals)
  • Interval calculation: `new_interval = previous_interval × EF`
  • Initial intervals: New cards start with very short intervals (1 day, then ~3–5 days); intervals compound with each successful review
  • Failed cards: Cards recalled incorrectly are reset to very short intervals (1–2 days) and their ease factor is reduced

Example progression for an easy card:

  • Day 0: Learn
  • Day 1: Review
  • Day 4: Review
  • Day 12: Review
  • Day 35: Review
  • Day 90: Review…

FSRS Algorithm (Free Spaced Repetition Scheduler)

FSRS (developed by Jarrett Ye / L-M-Sherlock, 2022) is a newer algorithm now available in Anki as an optional scheduler. FSRS:

  • Uses a more sophisticated memory model with stability and retrievability parameters
  • Adapts scheduling based on individual learner response patterns rather than using fixed EF adjustments
  • Research shows FSRS produces better retention predictions (lower workload for same retention) than SM-2

Sakubo uses a modern scheduling algorithm optimized for vocabulary acquisition.

Why the Algorithm Matters

A poor algorithm (e.g., uniform daily review or arbitrary intervals) dramatically increases review burden for the same retention level. The spacing effect means that correctly timed reviews produce exponentially lower total review time compared to massed practice.

Practical implication: 15 minutes per day with a good SRS algorithm retains more vocabulary than 2 hours per day of random re-reading. The algorithm is doing the optimization work; learners don’t need to manually track review timing.

Limitations

  • Self-reported recall is noisy. When learners are too generous in rating their recall (“I sort of knew that — I’ll mark it easy”), the algorithm schedules reviews too far in the future, producing more forgetting than expected. Accurate self-rating is critical.
  • “Ease hell” problem in SM-2. In Anki with SM-2, repeatedly rating difficult cards increases the proportion of low-EF cards in the deck — creating a “hell” of perpetually short intervals for a growing share of vocabulary. FSRS partly addresses this.
  • Algorithm ? acquisition. SRS algorithms optimize memory retention of form-meaning mappings; they don’t replace comprehensible input, context-based learning, or production practice. They are one component of a complete learning strategy.

History

1879–1885 — Ebbinghaus. Empirically establishes the forgetting curve and spacing effect through self-experimentation; lays scientific foundation for SRS.

1974 — Sebastian Leitner, “So lernt man lernen.” Mechanical flashcard box system implementing a manual spacing schedule — the precursor to algorithmic SRS.

1987 — Piotr Wozniak, SM-2 algorithm. First computational implementation of a spaced repetition schedule; published in SuperMemo software.

2004 — Damien Elmes, Anki. Implements SM-2 in a free, open-source, cross-platform SRS. Becomes the dominant language learning SRS.

2022 — FSRS (Free Spaced Repetition Scheduler). New algorithm based on the DSR (Difficulty, Stability, Retrievability) model; more accurate predictions and lower review burden than SM-2.


Practical Application

  1. Trust the algorithm — review when it tells you, not when it feels most convenient. The scheduling is most effective when reviews happen near their due dates, not significantly early or late.
  1. Rate your performance honestly. Over-rating causes excessive forgetting; under-rating creates unnecessary review burden. Calibrate ratings against your actual recall accuracy.
  1. Consider enabling FSRS in Anki. If you use Anki, switching to FSRS (available in Anki 23.10+) generally reduces review workload for the same retention rate.
  1. Sakubo handles algorithm optimization automatically — learners simply review their vocabulary cards and the SRS schedules everything optimally without requiring manual setup or algorithm choice.

Common Misconceptions

“All spaced repetition algorithms are basically the same.”

Algorithms differ significantly in their approach: SM-2 (used in older Anki versions) uses fixed intervals with a per-card ease factor, FSRS (Free Spaced Repetition Scheduler) uses a neural network model of memory, and Leitner uses simple box-based scheduling. These differences affect review timing, workload distribution, and retention rates.

“The algorithm matters more than how you use it.”

The quality of your flashcard content, the consistency of your review habits, and the accuracy of your self-ratings have more impact on retention than the specific algorithm. A well-designed deck with SM-2 will outperform a poorly-designed deck with the most advanced algorithm.


Criticisms

Spaced repetition algorithms have been critiqued for optimizing a narrow definition of “recall” (binary right/wrong on flashcard tests) that may not reflect meaningful knowledge, for the difficulty of validating algorithm performance outside controlled experimental settings, and for encouraging atomistic learning (isolated facts) over integrated understanding. The “desirable difficulty” research also suggests that some amount of forgetting and interference may be beneficial for long-term learning — challenging the pure efficiency optimization approach.


Social Media Sentiment

Spaced repetition algorithms are a passionate topic of discussion in the Anki community and r/Anki. The adoption of FSRS as Anki’s default algorithm generated significant debate. Learners compare retention statistics, discuss optimal parameters, and share benchmarks. Sakubo implements FSRS natively, bringing modern algorithm research to Japanese vocabulary learning.

Last updated: 2026-04


Related Terms


See Also


Research

1. Settles, B., & Meeder, B. (2016). A trainable spaced repetition model for language learning. Proceedings of the 54th Annual Meeting of the Association for Computational Linguistics (pp. 1848–1858).

Demonstrates that machine learning-based spaced repetition algorithms outperform traditional rule-based algorithms (SM-2) — a key step toward the data-driven approach used by modern algorithms like FSRS.

2. Ye, J. (2024). FSRS: A modern, open-source spaced repetition algorithm. Technical Report.

Presents the FSRS (Free Spaced Repetition Scheduler) algorithm — a neural network-based approach that models memory states using the DSR (Difficulty, Stability, Retrievability) framework, outperforming SM-2 in retention prediction accuracy.