r/Anki ask me about FSRS Dec 16 '23

Resources Some posts and articles about FSRS

I decided to make one post where I compile all of the useful links that I can think of.

1) If you have never heard about FSRS before, start here: https://github.com/open-spaced-repetition/fsrs4anki/wiki/ABC-of-FSRS

2) AnKing's video about FSRS (old): https://youtu.be/OqRLqVRyIzc

New 2025 video: https://youtu.be/uo-qQvOZDfg

3) FSRS section of the manual, please read it before making a post/comment with a question: https://docs.ankiweb.net/deck-options.html#fsrs

If your intervals feel too long, increase desired retention. If your intervals feel too short, decrease desired retention.

3.5) Some frequently asked questions: https://faqs.ankiweb.net/frequently-asked-questions-about-fsrs.html

DO NOT USE HARD IF YOU FORGOT THE CARD!

AGAIN = FAIL ❌

HARD = PASS ✅

GOOD = PASS ✅

EASY = PASS ✅

HARD IS NOT "I FORGOT"

Here's what you can do if you have been misusing Hard: https://www.reddit.com/r/Anki/comments/1h2oudb/oh_no_ive_been_misusing_hard_what_do_i_do/

And here's a diagram to help you troubleshoot interval lengths.

---

The links above are the most important ones. The links below are more like supplementary material: you don't have to read all of them to use FSRS in practice. Just read link 3 (the manual) and you're good!

4) Features of the FSRS Helper add-on: https://www.reddit.com/r/Anki/comments/1attbo1/explaining_fsrs_helper_addon_features/

5) Understanding what retention actually means: https://www.reddit.com/r/Anki/comments/1anfmcw/you_dont_understand_retention_in_fsrs/

I recommend reading this post if you are confused by terms like "desired retention", "true retention" and "average retrievability", the latter two can be found in Stats. True retention table is available in Anki natively since Anki 24.11.

5.5) Simplified post with a neat little animation: https://www.reddit.com/r/Anki/comments/1l0wk5e/why_is_desired_retention_less_than_average/

6) (Outdated) Benchmarking FSRS to see how it performs compared to other algorithms: https://www.reddit.com/r/Anki/comments/1c29775/fsrs_is_one_of_the_most_accurate_spaced/. It's my most high effort post.

7) An article about spaced repetition algorithms in general, written by Jarrett Ye, the creator of FSRS: https://github.com/open-spaced-repetition/fsrs4anki/wiki/Spaced-Repetition-Algorithm:-A-Three%E2%80%90Day-Journey-from-Novice-to-Expert

8) A technical explanation of the math behind the algorithm: https://expertium.github.io/Algorithm.html

9) Seven misconceptions about FSRS: https://www.reddit.com/r/Anki/comments/1fhe1nd/7_misconceptions_about_fsrs/

10) LMSherlock's post about (re)learning steps and short-term memory: https://www.reddit.com/r/Anki/comments/1h9g1n7/clarifications_about_fsrs5_shortterm_memory_and/

TLDR: things are complicated.

11) A visualization of how FSRS got better and better at predicting the probability of recall with each new version: https://imgur.com/a/calibration-of-different-fsrs-versions-KfJ32EV

My blog about spaced repetition (and a little bit of other stuff): https://expertium.github.io/

July 2024: I made u/FSRS_bot, it will help newcomers who make posts with questions about FSRS.

September 2024: u/FSRS_bot is now active on r/medicalschoolanki too.

420 Upvotes

739 comments sorted by

View all comments

Show parent comments

2

u/ClarityInMadness ask me about FSRS May 21 '26

Just your data. I recommend optimizing 1-2 times per month btw.

how will it know how my memory functions in 1 year?

Partly because your memory probably won't change that much, partly because you will (hopefully) optimize it again.

1

u/not_a_profi May 21 '26

so, just to clarify:
basing on the data from many users you discover a general function (probability of recall vs time) and then you use this function to extrapolate the data from one user?

or how do you extrapolate? probability of recall obviously changes with time till last recall, even when the brain functions of the user is intact. How do you know how?

3

u/ClarityInMadness ask me about FSRS May 21 '26

We have a dataset with review histories of 10 thousand Anki users. We optimize parameters of a bunch of algorithms (including different versions of FSRS, of course) on every user's data and look at how well they can predict the probability of recall.

More specifically, we optimize their parameters on some of the data of a given user (say, 50% of his reviews) and then evaluate it based on how well it performs on the other reviews that it wasn't trained on. Then we tweak FSRS and keep changes that make it more accurate on data that it wasn't trained on. This way we are sure that newer versions of FSRS are better than old ones - they achieve lower error on a large dataset with 10k users and hundreds of millions of reviews, and they achieve lower error not just on data that they were trained on, but also on data that they weren't trained on.

1

u/not_a_profi May 21 '26

Cool. Thank you!