My Pleco flashcard setup

Ever since I started learning Mandarin, I have been using Pleco. For most Mandarin learners I’ve met, it’s THE most important learning tool.

Apart from its superb dictionary, I use Pleco for learning flashcards.
The way I use the flashcard feature evolved over time. Now it is in a state that helps me learn new words faster. Therefore I will present to you the way I use Pleco’s flashcard feature in this post!

You will learn about the different test profiles I have set up. Additionally, I will explain to you, how I customized Pleco’s scoring algorithm.

But first, I will give you a general understanding of how Pleco’s flashcard system works.

Pleco’s flashcard feature


Categories are Pleco’s way of organizing your flashcards. Each card can be assigned to one or more categories.

Whenever you look at a word in Pleco’s dictionary, there will be a plus icon at the top of the screen. Clicking this icon will add the card to the default category. Holding it will offer you a selection of categories you can add the card to.

Pleco comes with categories for all HSK levels. I added categories for each chapter of my Mandarin textbook. This way I can easily target the vocabulary for a certain chapter.

Below you see an example of a flashcard that belongs to two categories. It is included in the fifth HSK level as well as the first lesson of the textbook I use (當代中文課程).

Flashcard that belongs to multiple categories

Test profiles

Next up are text profiles. They define how you test for your flashcard knowledge.

If you go to the menu and click

Flashcards->New Test->Profile,

Pleco will present you with the default selection of test profiles.

There is a lot of room for customization here. One of the most important options is the test type. It determines how you test for your flashcard knowledge.

Which test type I use

In total, Pleco offers six test types. There’s Review only, where you only look at the flashcard. Or Multiple-choice, where you try to choose the correct answer out of a set of possible answers.

My favorite is Fill-in-the-blanks. Here the app shows you some part of the dictionary entry and you have to enter the rest. I set it such that Pleco shows me the definition and I have to enter the characters. While entering the characters, I try to think of the right tones and see if they match the correct answer.

I do this because I can test all parts of a word in one go. I will test pronunciation and tones by trying to come up with them before writing the character. Also, I’ll test writing the character itself because I have to input it. After I input the characters, Pleco will play the dictionary entries audio as well. If there’s something wrong with my pronounciation, I try to imitate the audio.

Below you can see the progression through the test.

Left     Pleco shows the English definition and prompts for the characters

Middle     I draw the characters. While drawing, I think of the correct tones and syllables for the entry.

Right     After filling in all the gaps, Pleco wants me to grade how well I remembered everything.

Pleco's Fill-in-the-blanks screen

To enhance my learning experience, I added custom test profiles. Let me explain to you how I have everything set up.

My learning profiles

In total, my workflow contains four test profiles.

  • 當代中文課程 contains vocabulary from the textbook I’m using
  • 生詞 has words that I read somewhere and considered worth learning
  • 成語 contains the chengyu I want to learn
  • 復習 is for repeating words I learned before

A new card first goes to one of the three categories 當代中文課程, 生詞 or 成語. Before it can advance to 復習, I have to review it correctly at least seven times in a row. I experimented with three repetitions here in the beginning, but I found that I still forgot new words too quickly. So I increased the threshold to seven. This works pretty well for me.

See the visualization below to understand how the different profiles work together.

Vocabulary movement

Next, we’ll have a detailed look at the test profiles.

當代中文課程 - Lessons from the textbook ‘A Course in Contemporary Chinese’

I’m using the textbook series A Course in Contemporary Chinese - 當代中文課程 to learn Mandarin. So these textbooks are my main resource for new characters.

My typical workflow looks like this:

  1. Add all words of the current lesson into a category in Pleco. The name of the category is the number of the lesson. So the name of the first lesson is 當代中文課程/第一課.
  2. Every day I test myself on all the words. Apart from checking whether I answered the word correct seven times in a row, I added a time-based filter. This filter only allows cards that I have not reviewed in the last 24 hours. That way I am forced to repeat the card for at least a week. I found that otherwise, I would get it right multiple times a day, but then forget it in the long run.

Note that instead of learning new words via spaced repetition, I’m repeating all of them. I found this to be beneficial because I can better control when a word is ‘learned’.

生詞 - Words I encountered in the wild

Of course, learning only new words from a textbook is not enough. Every time I read a news article in Mandarin, I encounter new words. So I looked for a way of incorporating them in my flashcard system. What I do is the following.

Each time a new character is worth remembering, I click the small plus icon at the top.
Pleco then adds the current word to my default flashcard category.

Plus button

Then I have a test that selects all the cards that I haven’t reviewed in the last 24 hours1. It sorts those cards descending by their score and presents them to me in batches of 20. Here I’m also using the Fill-in-the-blanks test method.

Because I’m sorting the cards by their score, I will first see the cards that I’ve already reviewed before. My rationale behind this is that these are the cards I’m most likely to remember.

This way of learning new words works for me, but also has its drawbacks. Sometimes it takes very long before I would see a word for the second time. By that time I would have already forgotten about it. For this reason, I’m still looking for a better method to handle new words. If you have any ideas please leave a comment!

成語 - Chengyu

This profile is for chengyu that I want to incorporate in my active vocabulary. I’m very selective with the chengyu I try to learn because I forget them very fast. That’s why I stick to the following rule.

Only learn a chengyu if you’ve heard a native speaker use it at least three times

This is the least used of the four profiles. I put more focus on learning and reviewing words than on learning 成語.

復習 - Repetition

As you saw above, this test picks all flashcards that I answered correctly seven or more times in a row. Those are the cards I consider as learned.

The cards score controls the frequency at which it appears. If I remember it correct, the score gets increased. Thus, Pleco will wait longer before testing me on the card again. If I get it wrong, the card moves back to its respective category. Also, the score gets decreased. So I’ll have to review the card seven times again before it goes back to the 復習 category.

This technique requires me to review cards regularly. Otherwise, the backlog of cards will grow and grow. But this is actually an extra motivation for me. Every time I see that there are a lot of words in the backlog, I start a little sprint and try to review as many words as I can in a day.

Using my profiles

If you want to play around with these profiles, you can download a clone of my database here. Make sure to backup your database before you import it!

Filter profiles

I have two more profiles that function as card filters.

Display new words instead of daily repetition

Sometimes I sit down and want to learn new words without reviewing them. This is before I add a lesson category to 當代中文課程. For these occasions, I added a test profile that shows me the cards from 當代中文課程 with a score below 300. I can then switch to the dictionary definition view and learn more about each card.

Words longer than four characters

Pleco’s fill-in-the-blanks tests are currently limited to four characters. Thus I added another profile that shows me the cards from 當代中文課程 longer than four characters.

Customizing the scoring mechanism

Since the card score controls how often Pleco shows me a flashcard, I customized Pleco’s scoring mechanism. To play with the scoring system yourself, go to New test->Scoring->Tweak parameters.

There are a lot of parameters to tune, so I will only talk about what I felt is most important. For the other values have a look at my database.

A general parameter that’s import to my workflow, is the Card selection system. You can change it under New test->Card selection->Card selection system. I set it to Repetition-spaced. Pleco’s documentation describes it as

Repetition-spaced - choose cards that haven’t been shown in at least a certain number of days, determined by a card’s score; the higher the score, the longer Pleco will wait before showing you the card again.

So the cards score will determine how often I review it. I set New test->Card selection->Points per day to 100. This means I review a card with 1000 points every ten days. A card with 3500 points will be reviewed every 35 days, and so on.

Based on this setting, I customized the individual test profiles.


As I mentioned before, I’m not doing spaced repetition for new vocabulary. Therefore I set the values for Correct score increase and Incorrect score decrease both to 20%. This way a cards score can already grow, even though I’m still in the phase of learning it.

To prevent the score from going to zero, I set the Minimum score to 100.
So I won’t run into the problem of having to review a card multiple times per day. For the same reason, I also chose to Only change card score once per day.


For this profile, the scoring algorithm is more sophisticated. I want words that I got wrong to appear more frequently in the future. So I decrease their score by a high percentage. But, I don’t want a card to not appear for a long time, only because I had it correct once or twice. So a correct answer doesn’t yield that much of a score increase. The table below shows the concrete values I use.

Recall quality Don’t know Forgotten Almost remembered Barely remembered Remembered Remembered perfectly
Change -60% -50% -20% +10% +20% +30%

Why not use a dedicated spaced repetition app?

To some, this whole setup might seem over-complicated. Why not use an app that’s specialized in spaced repetition?

There are two reasons I’m sticking to Pleco.

  1. If you read the section about the 當代中文課程 test profile you noticed that I’m not doing spaced repetition for new vocabulary. Instead, I repeat all the words from the current lesson. I haven’t found this functionality of doing spaced repetition only for some cards in any of the apps I tried. But Pleco is easy to customize, so you can make it whatever you want.
  2. Having the dictionary and flashcards in one place is super convenient. Everytime I tried another app for organizing my vocabulary, I found myself switching back to Pleco for its dictionary functionality. Having the dictionary, character definitions, stroke diagrams, word list, and flashcards all in one place makes learning Mandarin so much easier for me.

That’s it!

In today’s post, I introduced my way of using Pleco’s flashcard system. You read about the different test profiles I use and how I customized Pleco’s scoring algorithm.

I hope you found something that’s useful for your own learning workflow! Please feel free to comment on what you think about my setup. I’m always open to improvements.

Follow me on twitter (@bewagner_) for more of my thoughts on learning Mandarin!


  1. And which I haven’t answered correctly seven times in a row. 

Related Posts

I ❤️ Bopomofo

and you should too!

Differentiating similar words in Mandarin

A simple trick to find the difference between similar words in Mandarin