How FSRS Works
FSRS (Free Spaced Repetition Scheduler) is a modern spaced repetition algorithm developed by Jarrett Ye. It's based on the DSR model (Difficulty, Stability, Retrievability) and uses principles from memory research to optimize when you should review each card.
The Science of Forgetting
The Forgetting Curve
When you learn something new, your memory of it decays over time following a predictable pattern called the forgetting curve. This phenomenon was first discovered by German psychologist Hermann Ebbinghaus in 1885. FSRS models this with the formula:
R(t) = (1 + t / (9 × S))^(-1)
The Components
- R(t) = Retrievability — "what's the chance I can recall this right now?" Ranges from 0 to 1 (0% to 100%).
- S = Stability — how "durable" the memory is. Higher stability means the memory decays more slowly. Each successful review increases stability.
- t = Time since last review (in days).
Why This Formula?
The formula R(t) = (1 + t/(9·S))^(-1) is a power-law decay, which empirically fits human memory better than exponential decay for longer time intervals.
A few intuitions:
| Condition | Calculation | Meaning |
|---|---|---|
| t = 0 (just reviewed) | R = 1/(1+0) = 1 | Perfect recall (100%) |
| t = S (stability time) | R = 1/(1+1/9) ≈ 0.90 | 90% chance of recall |
| t = 9·S | R = 1/(1+1) = 0.5 | 50% chance of recall |
The constant 9 is calibrated so that when t equals S, retrievability is about 90%. This is FSRS's definition of stability: the time it takes for recall probability to drop to 90%.
Concrete Example
If your stability S = 10 days:
- After 10 days → ~90% chance of recall
- After 90 days (9 × 10) → 50% chance of recall
- After 180 days → ~36% chance of recall
This is why FSRS schedules reviews around the stability point—catching you at ~90% retrievability maximizes efficiency.
The goal of spaced repetition is to review cards just before you forget them, which strengthens the memory and increases stability. This leverages the spacing effect—the finding that information is better retained when learning is spread out over time.
Optimal Review Timing
FSRS schedules reviews to maintain a target retrievability (typically ~90%). This means:
- Review too early → wasted effort, the memory was still strong
- Review too late → you've already forgotten, need to relearn
- Review at the right time → maximum efficiency, memory gets stronger
This approach is supported by research on the testing effect, which shows that actively recalling information strengthens memory more than passive review.
Core Concepts
Stability (S)
Stability measures how long a memory will last before decaying below the recall threshold. It's measured in days. This concept comes from the two-component model of memory, which distinguishes between memory stability (how long it lasts) and retrievability (current recall probability).
| Stability | Meaning |
|---|---|
| 0.5 days | Very fragile memory, needs review within hours |
| 5 days | Moderate memory, review within a week |
| 30 days | Strong memory, can wait a month |
| 365 days | Very stable, annual review sufficient |
How stability changes:
- Again: Stability decreases significantly (memory reset)
- Hard: Stability increases slightly
- Good: Stability increases normally
- Easy: Stability increases substantially
After each successful review, stability grows—this is why intervals get longer over time.
Difficulty (D)
Difficulty represents how hard a particular card is for you to learn. It ranges from 1 (easiest) to 10 (hardest).
| Difficulty | Meaning |
|---|---|
| 1-3 | Easy cards, quick to learn |
| 4-6 | Average difficulty |
| 7-10 | Challenging cards, require more repetition |
How difficulty changes:
- Pressing Again increases difficulty (the card is hard for you)
- Pressing Easy decreases difficulty (the card is easy for you)
- Pressing Good keeps difficulty roughly stable
Difficulty affects how much stability increases after each review. High-difficulty cards gain stability more slowly. This aligns with research on desirable difficulties—harder items require more effort but can lead to stronger learning.
Retrievability (R)
Retrievability is the probability that you can recall a card at any given moment. It starts at 100% right after a review and decays over time following the power law of forgetting.
Day 0: 100% (just reviewed)
Day 3: ~85% (starting to fade)
Day 7: ~70% (time to review)
Day 14: ~50% (likely forgotten)
FSRS schedules reviews to catch cards when retrievability drops to around 90%.
The Four Ratings
Each rating affects stability and difficulty differently:
| Rating | Stability Effect | Difficulty Effect | When to Use |
|---|---|---|---|
| Again | Decreases significantly | Increases | You forgot completely |
| Hard | Small increase | Slight increase | You struggled but recalled |
| Good | Normal increase | No change | Normal recall |
| Easy | Large increase | Decreases | Effortless recall |
Rating Examples
Again: You see "ephemeral" and have no idea what it means. Press Again. The card resets to a 1-minute interval.
Hard: You see "ubiquitous" and after 10 seconds of thinking, remember it means "present everywhere." Press Hard.
Good: You see "serendipity" and recall "happy accident" within a couple seconds. Press Good.
Easy: You see "hello" and instantly know it. Press Easy to skip ahead.
Learning vs Review Phase
Learning Phase
New cards start in the Learning state with short intervals (minutes). This phase uses your configured learning step:
New Card → Good (10m) → Good → Graduate to Review
During learning:
- Intervals are short (minutes)
- Cards don't affect your retention statistics
- The goal is initial memorization
This phase leverages massed practice initially before transitioning to spaced practice.
Review Phase
Once a card graduates, it enters the Review state with longer intervals (days/weeks/months):
Review → Good → (interval doubles or more) → Review again later
During review:
- Intervals grow with each successful recall
- Cards contribute to your retention statistics
- The goal is long-term memory retention
Relearning Phase
If you press Again on a Review card, it enters Relearning:
Review → Again → Relearning (1m) → Good → Back to Review
The card goes through short intervals again before returning to review with reduced stability.
The 19 FSRS Parameters
FSRS uses 19 internal parameters (w₀ to w₁₈) that control the algorithm's behavior. These were optimized using machine learning on millions of real review records:
- w₀₋₃: Initial stability for each rating on new cards
- w₄₋₅: Difficulty calculation
- w₆₋₈: Stability increase factors
- w₉₋₁₀: Difficulty-stability interaction
- w₁₁₋₁₄: Failure and relearning behavior
- w₁₅₋₁₈: Short-term scheduling
Anglio uses the default parameters, which are optimized from millions of Anki reviews and work well for most learners. For technical details, see the FSRS algorithm documentation.
Interval Calculation
When you press a rating button, FSRS calculates the next interval using:
- Current stability of the card
- Your rating (Again/Hard/Good/Easy)
- Target retrievability (90%)
- The 19 parameters
The formula ensures that when you next see the card, your retrievability will be around 90%—the optimal point for memory strengthening according to research on optimal retention.
Example Progression
A typical card might progress like this (pressing Good each time):
| Review | Interval | Stability |
|---|---|---|
| 1 | 10 min | 0.5 days |
| 2 | 1 day | 2 days |
| 3 | 3 days | 6 days |
| 4 | 8 days | 15 days |
| 5 | 21 days | 40 days |
| 6 | 2 months | 100 days |
| 7 | 5 months | 250 days |
Notice how intervals grow faster than linearly—this is the power of spaced repetition.
FSRS vs SM-2
Anglio uses FSRS instead of the older SM-2 algorithm (used by Anki by default). Here's why:
| Aspect | SM-2 | FSRS |
|---|---|---|
| Ratings | 2 (Again, Good) | 4 (Again, Hard, Good, Easy) |
| Core metric | Ease Factor | Stability + Difficulty |
| Adaptability | Fixed formula | Based on memory model |
| Accuracy | Good | Better (proven in studies) |
| Theoretical basis | Empirical | Memory science |
FSRS has been shown to achieve the same retention with fewer reviews, or better retention with the same number of reviews. See the FSRS benchmark comparisons for detailed data.
Tips for Optimal Learning
Be Honest with Ratings
The algorithm only works if you rate honestly:
- Don't press Good when you actually struggled (use Hard)
- Don't press Easy just to skip ahead
- Press Again when you genuinely forgot
Research on metacognition shows that accurate self-assessment is crucial for effective learning.
Review Consistently
FSRS assumes you review cards around their due time. Large backlogs reduce efficiency because:
- Overdue cards have lower retrievability
- The algorithm's predictions become less accurate
Trust the Process
It might feel wrong to wait days or weeks between reviews, but that's the point. The spacing effect shows that spacing creates stronger, more durable memories than cramming.
Further Reading
- A Stochastic Shortest Path Algorithm for Optimizing Spaced Repetition Scheduling — The original FSRS research paper (ACM KDD 2022)
- FSRS GitHub Repository — The official FSRS implementation
- FSRS Algorithm Wiki — Technical details and formulas
- FSRS Benchmarks — Performance comparisons with other algorithms
- The Forgetting Curve — Wikipedia article on memory decay
- Spaced Repetition — Wikipedia overview
- Gwern's Spaced Repetition Guide — Comprehensive essay on the science and practice
- SuperMemo Guru — Deep dives into memory research by Piotr Wozniak
- Anki Manual — Documentation for the popular flashcard app