Getting Into 99math With a Code
99math is a free online platform where teachers create multiplayer arithmetic games and students join by entering a code on their device. The whole point is speed and competition. Students solve math problems against each other in real time. It looks simple enough, but the joining process has a few quirks that can waste a lot of time if you don't know them. When a teacher starts a session, they get a short alphanumeric code displayed on screen. Students go to the website, type their name, enter that code, and they are in. That is the basic flow. Most people figure that out in two minutes. What they do not figure out is why their code keeps failing or why their connection drops mid-game.
How to Use the 99math Enter Code
Open your browser and navigate to the 99math website. On the student side, you will see a box labeled "Enter your name" and another box labeled "Enter your code." Type a name that is easy to identify, because the scoreboard uses those names live. Then type the code exactly as the teacher shows it. Do not add spaces. Do not lowercase letters manually if they are uppercase in the code. Click join and wait for the game to load. The loading time depends heavily on your internet connection and how many students are already in the room. If there are twenty students and your ping is high, expect a noticeable delay. The game does not crash, but it stutters. You might answer a question and the result does not register until a second later. I had a situation once where six students out of thirty could not join a session at all. The code was accepted by their browsers, but every time they hit join, the page just refreshed back to the login screen. No error message. Nothing. I spent twenty minutes debugging it with the school IT guy and found out the problem was AdBlock. The code validation script was being blocked by an extension the school had pushed to the lab computers. We disabled AdBlock for that domain and all six students connected immediately. If you are having trouble joining and the code seems to do nothing, check your ad blockers before doing anything else.
What Happens After You Join
Once your code is accepted, you land in a lobby screen. You see other student names pop up as they join. The teacher controls when the round starts. There is nothing you can do to force it faster. When the round begins, you get a grid of math problems. They are mostly addition, subtraction, multiplication, or division depending on the level the teacher selected. You click the correct answer. Each correct answer earns points. Speed matters more than everything else. There is a timer bar at the top. It counts down from whatever the teacher set, usually sixty seconds per round. When the timer hits zero, the round ends and scores lock in. The teacher can run multiple rounds with different operations between them. It is very straightforward. The scoring system has one detail most people miss. It is not just about getting the right answer. It is about consecutive correct answers. If you solve three problems in a row quickly, your multiplier goes up. Break the streak with one wrong answer and you drop back to one. This means rushing blindly is counterproductive. Answering three questions correctly at a moderate pace will usually beat frantically clicking through five and getting two wrong.
Get the Full Details

Common Problems and Workarounds
The biggest issue people run into is stale sessions. If a student joins late, sometimes the game is already in progress. 99math does not handle this gracefully. The late student gets placed at the bottom of the scoreboard with zero points and cannot catch up. There is no recovery mechanism inside the platform. The workaround is to make sure the teacher waits until everyone is in the lobby before starting. I tell my classes to sit and wait rather than log in five minutes after the bell. Another issue is browser compatibility. The platform works fine on Chrome and Edge. Firefox has occasional connection drops on longer sessions. Safari on iPads can be glitchy with the answer buttons, sometimes requiring a double tap. If a student is on an iPad and the buttons feel unresponsive, switching to Chrome or the native app fixes it most of the time. There is also the problem of duplicate names. If two students type the same name, the teacher sees two identical entries on the leaderboard and has no way to tell them apart. This causes arguments and false accusations about cheating. The fix is simple. Use last name plus a number, like Smith42, instead of just a first name.
Teacher Side Limitations
Teachers can create sessions for free, but the free tier has restrictions. You can only run one game at a time per session. There is no way to queue multiple games in a row without starting them manually. If you want to do addition for ten minutes and then switch to multiplication, you have to end the first game and start a new one. This takes time and breaks the flow in a classroom setting. The statistics available on the free tier are minimal. You can see who won each round, but you do not get detailed analytics on which questions students missed most often. If you need that kind of data for assessment purposes, you have to export manually and track it yourself outside the platform. One more limitation worth noting. The platform requires a constant internet connection. If the WiFi goes down for even thirty seconds, every student in the session loses connection and the game stops. There is no offline mode. No cached answers. Nothing. Schools with unreliable networks should not rely on this tool during important lessons.
If you are looking for a download, there is nothing to download on desktop. The platform runs entirely in the browser. There is a mobile app available on the App Store and Google Play Store, but it connects to the same system and uses the same codes. The web version tends to be more stable on older devices because the app has higher system requirements. Both are free to use.