A Few Observations
First, a general rule of teaching. If students don't seem to be making progress with a skill, a good strategy is to take that skill, break it down into smaller pieces, focus on one piece at a time, and gradually build up to the larger skill.
Second, a broad observation about students learning multiplication facts. Some students learn them without much practice at all. These students seemingly soak up the facts, and suddenly they know most of their times tables. Maybe this is the result of practice at home, but these students don't need much structure in school to learn math facts. Then there are some students who do need focused practice on multiplication facts, and with a bit of dedicated practice they learn the vast majority of their facts. Finally, there are some students who don't seem to make much progress. Practice doesn't help much, or helps so slowly that it's not practical. What can teachers do to help this last group of students?
Third, here's a nice piece of research on learning multiplication facts.1 It's called "incremental rehearsal." Incremental rehearsal is a strategy for students who are struggling to learn their math facts. The idea is to focus on one fact at a time, and mix in more and more facts students already know. This nice table shows what it looks like:
I want to help my students to improve their multiplication fact fluency. For practical reasons I can't focus on one fact at a time in the style of incremental rehearsal. I would never get through everything. I also need to teach my grade level standards. But I think this general model is helpful: introduce new facts bit by bit while mixing in lots of practice with facts students know.
Multiplication Facts
So when I started working with multiplication facts with my students this year, I began with this set of problems:
It's all 2s. In general, my students know at least some of their 2s. If yours don't know any of their 2s times tables, you might want to start by breaking things down even more. But this worked for my students. We started with a few rounds of practice with 2s this until students got more fluent and confident.
Next we worked on 10s. The first 10s handout looked like this:
The odd problems are all 10s, and the evens are all 2s. The goal is to practice 10s, while mixing in facts students already have some confidence with.
Next we worked on 5s. The first 5s handout looked like this:
The odd problems are all 5s, and the evens are a mix of 2s and 10s.
We've continued working through fact families in this style. For each new family, half the problems are focused on that family. The rest are a mix of problems from the previous fact families. Here is the 3s handout:
The odd problems are 3s, the evens are a mix of 2s, 10s, 5s, and 4s.
I don't just give students these handouts. I start by having them skip-count the fact family we're working on. We might talk about patterns in that fact family, or some simple strategies for connecting new facts with ideas they already know. Then I'll have them answer a few fact questions on mini whiteboards. If I see there are any facts students are having extra trouble with, we'll repeat those. Then I hand out the worksheets. I also mix problems from the current fact family into Do Nows and other quick chunks of practice, with a focus on problems I know are tougher to remember — i.e., 2x9 but not 2x2. The goal is to help students connect the facts they’re working on to ideas they already know, provide a lot of support as students begin working on a fact family, and gradually pull back and ask students to retrieve facts from memory.
The best thing about this strategy is that it helps students to see their progress. They know the specific facts they are working on, and with multiple rounds for each fact family they can feel themselves getting more fluent each round. Then, those facts keep coming up in the future, reinforcing what they've learned.
Math anxiety is a common concern when teachers talk about fact fluency. Math anxiety is real. I think the biggest cause of math anxiety is being asked to do something over and over, yet feeling like you're not getting better at it. That's the experience a lot of students have when they are given fact fluency practice that tries to work on too many facts at once. They know what they’re trying to learn, and they know they’re not making progress. The main goal of this approach to fact fluency is to break facts into small, manageable chunks, and help students to see the progress they're making as they work through one chunk at a time.
Maybe this is helpful for you, if you're a math teacher who has students struggling to learn their multiplication facts. If it's not helpful, I still think this general structure is a good way to learn lots of other things. Take complex skills. Break them down into small pieces. Introduce one piece at a time. Keep practicing the old pieces while working on the new pieces. Continue practicing until students are successful, and help students build their confidence.
A Few Notes
A few notes about this strategy:
If you'd like to use these, I dropped a bunch of worksheets in this Google Drive folder. I titled it “Incremental Fact Fluency.” Sorry I couldn’t come up with a catchier name. There are ten worksheets for each fact family. Have fun!
I generated these using AI. I'll drop the details in a footnote if you're interested.2 I've checked them and I don't think there are any mistakes, but I could be wrong.
The sequence I use for fact families is 2s, 10s, 5s, 4s, 3s, 11s, 9s, 6s, 8s, 7s. I think that sequence is the easiest for students to learn — starting with 2s and 10s to build confidence, then 5s which have some nice structure to them, then 4s and 3s which complete the facts that come up most often, then 11s which also have some nice structure, then 9s which also have some patterns, and closing with 6s, 8s, and 7s. I could be convinced to move 11 around, switch 3 and 4, or shuffle 6/7/8, but I do think something like this sequence is the best way to introduce multiplication facts.
Students will get less practice with some of those facts at the end. I think that’s fine. I don’t mind if students know almost all of their math facts but are slow with a few. The point of knowing a lot of math facts is to make teaching new math more easily. If I want to teach students to solve two-step equations, I want students to be fluent with the math facts used in those equations. But I can easily start with 2x + 1 = 11, and 5x + 3 = 28, and 4x + 2 = 14. I’m not going to teach a new topic using 7x8 = 56 in my first example. If students know most of their facts, that’s plenty to work with.
I don't time students. I find timing unnecessary. If I enforce a strict time limit, I end up giving slower students less practice. I often have something else for students to work on if they finish quickly, and it's not the end of the world for some kids who finish quickly to sit and wait for a minute or two. My goal is to give all students as much practice as I can. I do let students know that I want them to practice retrieving facts from memory. The goal of doing some skip-counting and practice before the handout, and for multiple repetitions of each new fact on the handout, is to help students bypass slower strategies and retrieve facts from memory. Then, subsequent rounds of practice consolidate that memory and improve fluency.
I walk around and observe as students work. It's not hard to tell who has a decent amount of fluency and who needs more practice. We keep working on the same fact family until I see the vast majority of the class making progress, and I try to make time to support students who aren't making progress one-on-one. This approach doesn’t work for every single student. There are a bunch of students who don’t make much progress with less focused multiplication fact practice, but make progress when the practice is broken down in the way I’m describing. What I’ve found is that this approach leaves me with a manageable number of students, usually 1-2 per class, who are having trouble. My best solution right now is to work with them individually.
Two more reasons I'm hesitant about timing. First, while I know the research on timed tests doesn't show a clear cause-and-effect from timing to math anxiety, anecdotally I've seen intense timing stress kids out without a clear benefit. Second, I worry that timing can make kids who have decent fact fluency feel dumb. If students can answer 30 questions in a minute, that's pretty good! And the limiting factor in them getting faster might be their processing speed, or their handwriting. So at a certain point I'm not measuring progress in their mathematical knowledge; I'm measuring irrelevant variables that I don't care about.
I realize that some people are really against using the equals sign in fact practice, for reasons that have to do with equation-solving further down the road. I’m sympathetic to that argument though it’s not a make-or-break issue for me. Unfortunately my typesetting skills are not up to the task of putting together a different format.
If you use these, watch out for students skipping around and only doing the facts they know. (That’s a problem with other types of fact practice as well.)
The Point
Here’s the big idea: when I see students struggling to learn a skill, the best way to respond is often to break that skill down into smaller pieces, focus on one piece at a time, and gradually build up to the larger skill. For math facts, that means breaking the facts down into smaller groups and gradually expanding the pool of facts that students can retrieve from memory.
Teachers love to argue about fact fluency. I think fact fluency is important. But the arguments about fact fluency often skip past some of the nitty gritty details of how to have students practice their math facts. I’ve tried having students practice their facts lots of different ways, and often seen slow progress and frustration. This approach isn’t perfect. It hasn’t worked for every student. But it’s worked for far more students than anything I’ve tried before.
I learned about incremental rehearsal from Michael Pershan’s excellent review of the research on multiplication facts.
Using AI to make these was a kindof hilarious process. First, I'll say I could never have created the number of handouts I did without AI. I was making these myself last year and it took forever. Second, I literally needed dozens of attempts before the AI could get the handout right. I prompted multiple different LLMs over and over again. Every time they would screw something up. I would tweak the prompt to address the thing they screwed up, and they would screw something else up. Even when I got a version that looked good, I would max out that specific conversation and have to start over. My current thesis on AI-generated teaching materials is that there’s a lot of potential for AI to save teachers time making materials for students, but it’s a crapshoot and I’ll often end up spending more time prompting the AI and tweaking what comes out than I would if I just wrote it myself to begin with. This was a good use case because there was so much repetitive structure. I’ve played around with AI for other worksheets and sometimes it does a good job, but often the problems are a mess and it’s hard to predict which tasks AI will be able to do well. Finally, thanks to Craig Barton for his great post on using AI to make math resources, which helped me to streamline my process.







I really appreciate how thoughtful this approach is and how you balance the need for intentional practice with the realities of the constraints that we face in the classroom. It’s a balanced approach that I’m sure builds student confidence over time. I’m definitely going to share this with our 6th grade math teacher. Thank you!
Quick question for you: how soon do you move from one math fact to the next? I'm working with 1-2 students on their math facts so I can kind of pace to their ability... Is it like, how quickly they finish one worksheet? Do you just go through all of 10 worksheets for each of the facts with every student?
Thank you sharing your resources. I also created some for addition and subtraction under 10 using this method and AI and it was really a lot faster than expected. Appreciate this