There is an old theorem that says a monkey hitting keys at random, given enough time, will almost surely type any given text. “Almost surely” is a real term from probability theory, meaning the probability is exactly 1.
This is a simulation of that theorem, running live, with the actual numbers attached. A room of 12 monkeys types at random on a 41-key typewriter; the 26 letters, the ten digits, a comma, a period, an exclamation mark, a question mark, and the space bar. You can see the monkeys working on the same document, and everybody views the same run.
The rule that matters: selecting the correct key moves them forward, and any wrong key sends them all the way back to the start. Not just back one letter, but back to the very beginning.
That reset is what makes this hopeless rather than merely slow. To land a sequence of n correct keys in a row, the monkeys need about 41n attempts, which means every character you add multiplies the cost by 41.
Here is a real record log from one round:
| 1 character | 379 milliseconds |
| 3 characters | 8.2 minutes |
| 5 characters | 53 days |
| 7 characters | 109 years |
| 9 characters | 242,900 years |
| 13 characters | 881 billion years |
By thirteen characters you are past the age of the universe. A short sentence would take longer than the universe has existed, many times over.
The live round is one shared document for everyone watching.
The board shows the furthest the monkeys have ever gotten, how many keystrokes it took, and how long they have been typing in their own simulated time — which runs far faster than real time. Rounds are paced so a short document takes about a minute, and a page takes about forty, which means the clock speeds up enormously as the record climbs. That is why the board can read billions of years while only eight minutes pass in real life.
The bar under the stats tracks the wait for the next character against how long a character usually takes in this round. It goes past 100% when one is overdue.
You can also upvote on the document that is running to get it on the leaderboard, or enter a text blurb for the next round.
Anyone can enter a document for the next round, free, from the live page. Entries close 15 seconds before the round starts. Text is lowercased and anything the typewriter lacks is dropped, so you see exactly what the monkeys will face before you commit. Up to 2,000 characters.
Free entries go into a random draw. One is picked when the round starts. Entering more than once improves your odds the way buying more raffle tickets does. An entry is a ticket for one round only — the ones that lose are thrown away, so enter again if yours does not come up.
While a round runs you can upvote or downvote the document. When the round ends the votes are added up into a single score, and the document may earn a place on one of two boards.
The hall of fame keeps the ten highest scores of all time. The wall of shame keeps the five lowest.
The sandbox is your own private version, where the live round’s fixed settings become knobs. Any document you like, up to ten thousand monkeys, typing speeds a real animal could not manage, and a time acceleration control that goes to 1028.
It is the fastest way to see the wall for yourself: type a four-character document and watch it finish, add one more character, and watch the estimate jump by a factor of 41. Nothing here touches the live round, and your settings are remembered on this browser.
The monkeys type at 8 keys a second in their own time, which is the only part of this that is not absurd. Everything else, the acceleration, the billions of years, follows from that and the arithmetic.
The little typing animations are real monkeys running locally, but slowed to something you can read. At the speeds the record board implies, there would be nothing to see.
Rounds advance when somebody is looking. If nobody visits for a while, the next person to arrive starts the next round rather than the site quietly replaying everything it missed.
Every round is generated from a published seed, so the same round produces the same result for everyone, everywhere, and could be recomputed later by anyone who wanted to check.