[Userscript] WaniKani Lesson Filter

In that case I have no idea what’s going on on my side. :open_mouth:
I’ll try out some things later to see what could be causing it but I can’t promise any findings.

1 Like

I’m having issues with this… but have found a work-around but figured I’d share in case it helps.
I really don’t know much about how scripts work but I’ll try to give all the info I can.

I’m using Firefox and have disabled all scripts but this.
The filter button works as usual but after going through the lessons and clicking ‘start the quiz’ I just get a white screen. Refreshing takes me back to the very start of the lessons.

However, clicking ‘need more time’ and then the green quiz button seems to work just fine.
Also, if I don’t filter I’m able to get to the quiz as normal.

I’d love give more info like errors and what-not but not 100% sure how to so please let me know how to do that!



I encountered the same white screen problem and your work-around fixed it for me. Not saying it’s going to work every time but it does this one time. Thanks a lot!

1 Like

I’m encountering a similar problem. Firefox on Mac OS. It’s worked perfectly until today. When I filter the lessons, the display at the bottom (showing the current batch) updates, but the item I’m actually focused on doesn’t. I can get to the proper first lesson by clicking it in the bottom display. Then things seem to work as normal until I get through the last item. Once there I’m blocked and just can’t continue. The quiz button is disabled and I don’t get the pop up asking if I’m ready or need more time. The console doesn’t show me any errors as far as I can tell.

I know they got rid of compatibility mode, but I thought this was working with compatibility mode off already. Does anyone know if they announced other changes to the lesson page?

1 Like

A while has passed and I have tried out some things – I’m still not sure what exactly is going on but I think that I could determine the culprits in my case.

To have a record of what I tried, I will explain my whole troubleshooting process:

I tried some basic things first, such as refreshing the lessons page several times, turning tapermonkey off and on and re-installing the lesson filter script. Only once did the filter script show when I refreshed the lessons page, only to be gone again after I went to the dashboard and then to the lessons page. I don’t know what triggered this. All other attempts in refreshing and altering between the dashboard and lessons page did not work; the filter was not there.

I then went to my tapermonkey settings and moved the lesson filter script up a few ranks. When I went to the lesson page right after, it showed again – only to disappear after I went back to the dashboard once and returned to lessons again. The filter didn’t appear anymore.

Next, I went to the app settings in Wanikani, actually turned off the script compatibility mode, immediately went to lessons – and the filter was there! But only for that session because after going to the dashboard and going back to lessons, the filter had disappeared again. Afterwards, I went back to the WK settings page and turned the script compatibility option on again.

The last thing I did was to turn some of my other scripts on and off. It seems that this is the main aspect that causes trouble: within my 7-script combination, two scripts seem to influence the lesson filter as of now.

Script combination experiments

If I turn off either the Niai Similar Kanji or the Pitch Info script AND refresh, the lesson filter appears and remains there. I made some more tests by toggling the other scripts and the filter shows with even 5-6 of my scripts enabled as long as either Niai Similar Kanji or Pitch Info is turned off. Weirdly enough, I can still keep one of them on despite both seemingly causing issues.

So there seems to be a collision there which I assume has only started to happen ever since the beginning of the script compatibility retirement process. My 7-script combo was working just fine all this time until 3(?) days ago.

This is all that I managed to find, I hope that my report is somewhat useful.

@seanblue I don’t remember reading about changes to the lessons page specifically either, so I can’t give you more info in this regard. :pensive:


I’m having a big issue with this script lately. After I filter a lesson and get to the end of the items, the popup to start the quiz doesn’t show up. If I don’t filter or only shuffle it the quiz pops up just fine. This has happened in Chrome and Edge and on two different computers. I tried running just the filter script, used tampermonkey and violentmonkey, and ran it with and without script compatibility turned on. It seems like the only constants are Wanikani and the filter script. Did something happen that’s causing the two to not work together anymore?

Something certainly seems to have happened since several people now have mentioned this issue. That said, I just tested it briefly (Chrome, Tampermonkey, compatibility mode off) and it seemed to work fine. I clicked Filter, hit Enter or Right Arrow a bunch of times, and then the Quiz popup appeared like normal. How are you progressing through the lessons to get to the quiz?

I’ve tried arrow/entering and skipping through. Neither way has worked on my computers. I’ll keep trying to get it to work, being able to study vocab along with kanji is too handy a function to lose.

Can you check the dev console for errors? Just hit F12 and select the Console tab prior to opening the lessons page. Then do the Filter and hitting next as usual and see if any errors appear.

I’m getting an Issue notification
“Audit usage of navigator.userAgent, navigator.appVersion, and navigator.platform”
and this error shows up sometimes
“VM113 content.js:58 Uncaught pagejs missing”

I think I found a workaround though. If I enter a number in バッチ that’s less than or equal to the number of items that would show up from the other three fields, the popup comes up at the end. If I leave it empty or enter a number that’s too big, nothing comes up. At least I can use that fix for now

1 Like

hello! in light of https://community.wanikani.com/t/updates-to-lessons-reviews-and-extra-study/60912 do you plan on updating this script? :man_bowing: from the looks of it, it will be quite a bit of work. :sweat_smile: thanks!

1 Like

Thank you for letting me know, because I somehow missed that announcement!

As for whether I’ll update the script, we’ll see. I just read through that thread and it seems like another user is trying to make a general purpose helper script for this stuff. Additionally, the WaniKani dev made it sound fairly easy specifically to modify the lesson order.

As you said, it will still be a lot of work, but it might be doable. While I’m happy to let most of my scripts die at this point (many have been replaced with better versions by users who are more active on WaniKani than me), I’d prefer to support this one long term if I can.

If I do update the script it’s somewhat likely the user experience will change drastically. I’d like to give it a shot, but no promises.


I took a quick look, and this is definitely going to suck. It seems like it uses some server side redirect to load each batch of lessons rather than having everything loaded at once. I don’t see a way to specify all lessons across multiple batches ahead of time, so at a minimum I’ll probably have to change the script to filter for a single batch instead of the total. I also might have to move the script inputs to outside of the lesson page itself, though I’m waiting for a response from the WaniKani dev on whether it’s possible to change the lesson set after the page has loaded (quick search says not). I’m definitely not going to make any changes until things stabilize a bit.


Give me some feedback

Hello Lesson Filter script users! As most of you have probably noticed by now, the Lesson Filter script is no longer working due to the recent changes to the lesson page. I am planning on updating the script, but I haven’t decided how comprehensive it will be yet. Will I keep all the functionality previously available or just make a bare-bones version? Will I change any core functionality of the script for convenience or try as best possible to make it work the same? I’m not sure yet. Partly it will depend on the complexity of updating the script, and partly it will depend on what you the users actually care about! To that end, I want to do some polls to get feedback about usage. Please only vote if you actually use the script!

But first: If you really want permanent support for something like Lesson Filter, please email WaniKani at hello@wanikani.com. Let them know that you want a version of this in vanilla WaniKani, including what specifically about the script improves your experience on WaniKani. The more people who email them the more likely this is to happen. While I plan to update the script this time (assuming I don’t run into issues), I cannot promise that I’ll support it forever (and as you can already see, I’m slow to update scripts these days). And of course an official version by WaniKani means it won’t randomly break from other site updates!

Onto the polls!

How important is Lesson Filter to your workflow?
  • Critical - I may quit WaniKani without it
  • Important - It greatly improves my workflow, but I won’t quit WaniKani without it
  • Somewhat important - It improves my workflow, but I can live without it
  • Not important at all - I don’t really use the script much

0 voters

How important is it that the Lesson Filter script honors the lesson ordering user setting (e.g. “ascending level then subject”)? Note: without honoring this setting the lesson order would be arbitrary, based on whatever the WaniKani API happens to return.
  • Critical - I may not use the script without it
  • Important - It greatly improves my workflow, but I’ll keep using the script without it
  • Somewhat important - It improves my workflow, but I can live without it
  • Not important at all - I don’t really care about this feature
  • Other - I use a reorder script to customize the order before filtering via Lesson Filter

0 voters

How important is it that the Lesson Filter script allows you to change the batch size?
  • Critical - I may not use the script without it
  • Important - It greatly improves my workflow, but I’ll keep using the script without it
  • Somewhat important - It improves my workflow, but I can live without it
  • Not important at all - I don’t really care about this feature

0 voters

How important is it that the Lesson Filter script allows you to shuffle after applying a filter?
  • Critical - I may not use the script without it
  • Important - It greatly improves my workflow, but I’ll keep using the script without it
  • Somewhat important - It improves my workflow, but I can live without it
  • Not important at all - I don’t really care about this feature

0 voters

Right now, you filter once and it applies to the whole set of lessons (not a single batch) until you leave the lesson page. Is this approach desirable?
  • Yes, I prefer to specify all the lessons I want to do (e.g. 3 kanji and 9 vocab + a batch size of 4; completed after three batches).
  • No, I would prefer to specify the exact contents of a single batch (e.g. 1 kanji and 3 vocab).
  • I have no preference

0 voters


FWIW, the way I use this script is to filter my lessons to 3 kanji and 9 vocab. I don’t set a batch size because I have that set to 4 in the wanikani settings and it works fine. I also always just do all of the radicals whenever they are available so I leave that setting blank as well. I don’t bother with changing the actual order of the lessons, so it’s usually up to 3 kanji in a row and then up to 9 vocab in a row depending on how many lessons are available.

This is so critical to how I use wanikani that I am no longer using the main website and have fallen back to flaming durtles, because otherwise the site forces you to do all of your kanji lessons before you can even attempt vocab, but I much rather prefer to slowly learn a few new kanji per day and reinforce those kanji by doing the vocab lessons in tandem as I guru kanji throughout the level.


Same! I can make do with whatever batch size. I keep mine defaulted to 5 and then just do 5 (usually 1 kanji and 4 vocab, but sometimes 5 radicals just after a level up) and if I feel like more then I do 5 more.

I rely HEAVILY on Lesson Filter to intersperse old vocab lessons with new radical & kanji lessons, especially right after a level up, as otherwise my (already horribly slow) level up rate would be even slower since WK forces old vocab before new radicals or kanji.

Also, I find my memory suffers a lot if trying to bulk learn kanji without accompanying vocabulary, as a lot of the mnemonics don’t work well for me, so I like introducing new kanji slowly and interspersing with vocab.

I sometimes use “shuffle” to quickly get to some kanji I don’t know for lessons if the current level has a lot of kanji I already know from outside WK, but not often enough for that to be a “make or break” feature for me.


Just to start off with, I really enjoy this script and make good use out of it (and am really grateful that you developed it in the first place)!

For what it’s worth, I use the batch size usually to mop up an unusual number of lessons. For example, if my batch number is usually 6 but there are 7 radicals to learn, I’d change the batch number to 7 just to make it simpler.

That way, if I had vocab from the previous level blocking the radicals, I could still get all the radicals into the review queue. Hope this explanation made sense! Not a deal breaker if it’s not developed, though.


That’s why I originally added the feature! Nice to see someone using it for the same reason. :smile:


I never change the batch size, I mostly just use it to force unlocked vocabulary to appear before kanji and will less occasionally filter a kanji or two into the mix depending upon how confident I am with my current reviews and whether or not all existing kanji are already in the guru state.

This allows me to manage my reviews and kanji progression without feeling overwhelmed and has been critical.