The HanziHero spaced repetition system has ten total stages. These stages can be broken down into six different groups. The groups, in order, are:
Iron -> Bronze -> Silver -> Gold -> Platinum -> Diamond
Each of those groups is associated with one or two stages:
When you answer an item correctly in your reviews, it goes up one stage. If you answer an item incorrectly, it goes down one or more stages, depending on how many times you answered it correctly and how high of a stage that items currently has.
We use the following SRS formula, adapted from the popular kanji learning application WaniKani.
denominator = if subject_type in [:sound, :component], do: 1, else: 2
incorrect_adjustment_count = round_up(num_incorrect_answers / denominator)
new_srs_stage = current_srs_stage - (incorrect_adjustment_count * 2)
In plain English, we calculate an incorrect_adjustment_count
by looking at how many times the subject was answered incorrectly, divided by the number of questions a subject can possibly have.
Then, we multiply the 2
by the incorrect_adjustment_count
, and subtract that from the current stage of the subject.
Iron: You are not yet familiar with this item.
Bronze: You are somewhat familiar with this item. Items associated with this subject will unlock.
Silver: You know this item fairly well. You should be able to recall it, using the mnemonic for assistance.
Gold: You are likely able to recall this subject without needing the mnemonic, in most cases.
Platinum: The subject is easily recallable. There’s not much straining to remember.
Diamond: You have this subject down. There’s no effort involved at all. In this stage we remove the subject from future reviews, because at this point you’ll remember this subject for quite awhile.
These are the wait times upon a successful stage increment. So, if you move from Stage 2 to Stage 3, then you’ll have to wait 1 day before testing yourself again at Stage 3.
Below is the list of how long one must wait for the next review per each stage:
In addition to the above wait times, there is also a fuzz factor which helps generate a healthy distribution of reviews over a long period of time. Otherwise one may end up having 400+ reviews on one day, and zero on the next!
The fuzz factor is generally ±2 days depending on the stage.
So, for example, a fuzz of 2
will add two days to the stage timing. If we bumped an item to SRS Stage 4, then the final wait time would be 6 days.
In the same vein, if the fuzz was -2
the final wait time would be 2 days.