The algorithm
A memory model, not a ladder of intervals.
Spaced repetition works by asking you a thing at the moment you are about to forget it. Getting that moment right is the whole game. Most software guesses with a fixed sequence of gaps. This fits a model of your memory and then lets you audit it.
How a review date is chosen
- 1
Two numbers per card, not one
The model keeps how long the memory lasts and how hard the item is for you, and updates both on every answer. A fixed ladder cannot tell the difference between a word you find easy and one you keep losing.
- 2
The gap is chosen, not looked up
The next date is the day your chance of recall falls to the target you set. Lower the target and the gaps get longer and the reviews fewer, at the cost of forgetting more often. Ninety per cent is the point where the saving stops paying for the relearning.
- 3
Four memories per word
Seeing a word, producing it, hearing it and writing it are four abilities that decay at different rates. Each gets its own schedule. A word is finished when the weakest of the four is safe rather than the strongest.
- 4
Fitted to you after four hundred reviews
The shipped weights come from a very large pool of learners, which makes them a good guess about a stranger and a worse one about you. Past four hundred reviews the model is refitted to your own history.
- 5
And only kept if it wins
The fit is scored against the shipped weights on the same history, and discarded unless it beats them by more than half a per cent. Below that line the difference is noise, and a scheduler that is confidently wrong is worse than one that is honestly average.
The parts nobody mentions
The unglamorous half, which is most of it
Log loss, not accuracy
The fit is scored on how well calibrated its probabilities are, not on how many it got right. A scheduler needs to know it is ninety per cent sure rather than merely being correct, and accuracy cannot tell those apart.
Smoothing the load
Everything learned on one enthusiastic Sunday comes back together for ever after. Long intervals get moved a day either way to flatten that, which costs a fraction of a per cent of recall and is the difference between a habit and a wall.
Interleaving
Subjects are shuffled rather than done in blocks. It feels harder and works better, and it is the most reliable finding in the study literature, so it is on by default.
Stuck words
A word forgotten six times is a hook that is not working, not a discipline problem. The response is an offer to rewrite the hook rather than the same failing card more often.
Same word, same day
If you have met a word by sight today, its listening card waits until tomorrow. Meeting an item twice in one session flatters the second answer.
Auditable
You can check its arithmetic.
The app has a screen for the scheduler. It shows the recall you asked for against the recall you are actually getting on mature cards, how many of your reviews the model was fitted on, how much better the fitted model is than the shipped one, and what is due over the next thirty days.
A scheduler nobody can audit is a scheduler nobody should trust. Every number on that screen is computed from your own review history and can be read back.
- Target recall against actual recall, with the gap named
- The number of reviews the fit is based on
- How much the fitted model beat the shipped one, as a percentage
- A thirty day forecast of what is coming
- A plain-English account of what the model is doing and why
The honest answers
Is this FSRS?
Yes, FSRS 4.5, server authoritative, with learning steps for the same-day part of a card life. The weights are the published defaults until there is enough of your own history to do better.
Does the fitting actually help?
Usually by a few per cent on prediction accuracy, sometimes not at all. When it does not, the shipped weights are kept and the screen says so. A few per cent of a year of reviews is a real saving; it is not a transformation, and anybody telling you otherwise is selling something.
What if I do not want any of this?
Turn the fitting off in settings and the scheduler uses the shipped weights. Turn the smoothing off and due dates stay exactly where the model put them. Every one of these is a switch with the cost written next to it.
Where is my review history stored?
In your own database, on your own hosting. The fitting runs there too. Nothing about your memory leaves the server.
Start with ten words tonight
Thirty days free, no card. When the trial ends the account drops to the free limits and nothing is deleted.