Tweaking the Scheduler

9 minute read

Anki’s default scheduling settings are good enough in most cases. But sometimes they don’t work optimally with certain types of material or study patterns. Fortunately, the parameters of Anki’s scheduling algorithm are highly customizable; unfortunately, you have to figure out how to change them appropriately by making educated guesses.

This article will not provide suggestions on specific settings I think you should be using, unlike other articles you may find floating around the web. That’s because I find it unlikely that other people’s customizations will work all that well for you, and if you use someone else’s settings as-is and don’t fully understand what they do, you may make your performance worse instead of better. Instead, I hope to help you understand a process you can use to experiment with changes as needed.

Prerequisites

Before you start trying to tweak scheduling options, you should have at least a couple of months’ experience with Anki. That’s for several reasons. First, to make informed changes to scheduling options, you usually need some statistics to work from. Second, you’ll have an easier time understanding what the settings do once you know your way around Anki. And lastly, you can almost always do without changing the scheduling settings at all; it’s a way to squeeze a few more percent of efficiency out of your learning. You will get way more efficiency gain out of, first, using Anki at all, and second, figuring out what kinds of things you want to learn and how to turn them into good cards. That’s usually quite enough to focus on for a few months.

Once you get that far, I still suggest you never change a setting until you:

  • Know what problem you’re trying to solve. You should have a clear idea of what inefficiency or annoyance is driving the change. Ideally you should have a particular metric or statistic that isn’t where you want it, along with an idea of where you’d like it to be. Intuition isn’t necessarily useless here, but hard data does a much better job at proving your results!
  • Fully understand the value you’re changing. That sounds stupid, but I’ve seen a surprising number of support tickets from people who were upset about how Anki was behaving when it was because they told it to do that. The manual’s descriptions of the options, accessible at any time by clicking the Help button in the deck options screen, do a great job explaining things if you have a general foundation in spaced repetition (check out Spaced Repetition from the Ground Up if you don’t).

Case study

Let’s look at how I might decide to change some scheduling options. Recently I’ve noticed I have a problem in my Technology deck: my retention percentage is too high. That is, I’m not forgetting cards often enough:

The young retention rate is 96.98%.

This is what one colloquially calls a “good problem to have,” to be sure, but it’s still a problem: a retention rate of 97% means that I’m reviewing cards much more frequently than necessary. By accepting a somewhat lower retention percentage, I can learn more material in the same amount of time, which would be lovely because recently I’ve often been adding 20 or more new cards a day in this deck, which has been filling up my study time and limiting my ability to learn any other new information with Anki. Anki’s default parameters are intended to yield a roughly 90% retention rate, but in my case with these cards it’s not getting there. (Study time is actually used most efficiently at a retention rate of about 85%, but studying tends to be less frustrating and not much less efficient when you forget somewhat fewer cards.)

Why is my retention rate so high? Anki doesn’t have any way to tell me this, but I suspect several factors:

  • When I add technology-related cards, I’ve typically already learned them. I create all the cards myself, and many of them are lessons I want to remember after having figured them out on my own (e.g., I wrote some code that didn’t work due to a conceptual misunderstanding, and now I want to remember the reason it didn’t work so I don’t do that again). Further, they then often sit for 1–3 days before making it to the top of the new queue, which means that if I still remember them when I see them initially, I’ve essentially gotten an early “repetition” outside of the SRS and can safely make its initial interval 7 days or so.
  • There’s a high degree of interaction between the cards – that is, studying one card often leads to thinking about content on several tightly related cards. That means I get more review of the concepts than the scheduling history on each individual card would suggest.
  • These cards are just easier than average. I’ve gotten better at writing cards over the years, particularly on topics I write a lot of cards for, and I find technology questions tend to decompose nicely into precise cards.

Whatever the reason, I want to get that percentage a bit lower. Specifically, I want to decrease the young retention percentage; young cards are those that have an interval of less than 21 days. The mature percentage is just about bang on target already. That means I want to find scheduling options that will space my cards out further right after they’re introduced, while not making the “easiness” persist in the long term.

We have a few options for making cards “easier” so they appear less often:

  • Change the learning steps, graduating interval, and easy interval for new cards. This seems like a great start for this case study; we can directly control the intervals used in the early stages of review to make them longer.
  • Increase the starting ease from 250%. This would be a mediocre option; the easiness wouldn’t persist if the higher ease was too high for the later stages of review, since presses of Again or Hard will lower it again, but this setting doesn’t specifically target the early portion of the review cycle. On the other hand, it is possible that the reason my performance is too good at the beginning and okay later is that it’s just taking a couple presses of Easy to get the ease to the right value, in which case this would be the option to tweak. So if changing the learning steps doesn’t have the effect I want, I’ll come back and give this one a try.
  • Increase the interval modifier. The interval modifier expands or shrinks the interval change at every review by a set amount (for instance, if you set it to 90%, all new intervals will be 10% smaller than they otherwise would be). This would make all cards easier across the entire deck, regardless of their current stage of review or ease, so it’s not a good choice here.
  • Increase the easy bonus. This would let us push cards out further if we found them easy in the early stages of review, but then the easiness would persist, and there’s no way to target it only at young cards, so this isn’t a good option here either.

It looks like the learning settings are the winner, for my first experiment at least. Here’s what I ended up doing:

  • Set the learning Steps to 120 1440, up from the default of 1 10. The steps are in minutes, and cards start on the second step; the first step is used only if you press Again during learning.
    • Thus, the first time I see a new card in the Technology deck, pressing Again will show it again in 2 hours (120 minutes), pressing Hard will show it in 13 hours (half of the first learning step), and pressing Good will show it in 1 day (the first learning step).
  • Set the Graduating interval to 4 days, up from 1 day. So once I get past the 1-day learning step, the next step is 4 days.
  • Set the Easy interval to 7 days, up from the default of 4 days. This value gets used if you press Easy at any point during learning.

Now I’ll wait a month or so and check my statistics to see how things are going: maybe I can increase the intervals even further, or maybe I overshot. It’s important to wait at least a couple of weeks before checking, no matter how impatient you’re feeling. New users often get upset if their retention over a day or a couple of days is off, but any number of factors can influence your retention in the short term, including how focused you were when you reviewed, whether you happened to get a harder or easier set of cards over that time period, and even just plain random chance (which things you happen to forget is more or less random). Focusing on those small variations can lead you to false conclusions. Over longer periods, you’ll be able to get a much more accurate reading on the effects of your changes.

Learning what settings to change

If you think you have a problem you can solve by changing your scheduling options, spend some time perusing the possibilities available in the options screen and the manual and see whether each could conceivably help you, like I did above. Then pick one, give it a try, and see what happens!

One word of warning: if your problem is that your retention percentage is consistently too low, you should first try to boost it by ensuring that your cards are precise, incorporate mnemonics when helpful, and follow as many of SuperMemo’s Twenty Rules as possible. If you simply change the settings to make cards show up more often, that might work, but you’ll be hiding the real source of the problem and making things harder than they need to be. (I say it might work because you might also get frustrated and quit using Anki!)