The 1–10 range
Ask a room to think of a number between 1 and 10 and something close to a third of them will say 7. Ask a different room and you get the same answer. Seven feels random to people in a way 5 and 10 do not, and that feeling is the whole problem.
The generator has no favourite. Seven comes up 10 percent of the time here, the same as 1, the same as 10, and the round numbers everyone avoids get their full share.
It is the default range for a reason: small enough to read at a glance, wide enough to feel like a real draw.
- 1 to 10, both included
- 10 whole numbers
- 10%, exactly 1 in 10
- 1 to 10 numbers per draw
- None inside a multi-number draw
- Every draw gets a link that replays it
What a 1–10 draw is for
- Settling a guess-my-number bet honestly
- Picking a winner from ten shortlisted entries
- Choosing a score for a blind taste test
- Assigning one of ten tasks, seats or slots
- Running the classic think-of-a-number demonstration and losing on purpose
How the randomness works
Every tap calls crypto.getRandomValues, the browser's cryptographic generator, and asks it for one unsigned 32-bit value. That lands somewhere between 0 and 4,294,967,295, and it then has to be folded down to the 10 numbers in this range.
Folding it down with a plain remainder is where most generators go wrong, an error known as modulo bias. 10 does not divide 4,294,967,296 evenly: 6 values are left over at the top, and wrapping them around would make the first 6 numbers in the range fractionally likelier than the rest. This tool throws away any raw value at or above the last exact multiple of 10 and draws a fresh one instead. That is rejection sampling. It fires about 1 in 715,827,883 draws, and it is the difference between 10% exactly and 10% approximately.
Ask for more than one number and the tool keeps drawing until it holds that many distinct values, then sorts them ascending. Nothing is seeded, nothing is sent anywhere, and each draw is independent of the one before it. The roll history under the tool lives in your browser's local storage, where the clear button empties it. The daily lucky numbers elsewhere on this site work the opposite way on purpose: they use a seeded generator so the same date always returns the same set. How random is random sets the two side by side.
Ten outcomes, 10 percent each, no thumb on any of them. The bias in a 1–10 draw is almost never in the machine; it is in the person. People dodge the endpoints, dislike repeats, and treat 7 as the digit that looks most random, picking it two to three times more often than chance would. A generator does none of that, which is why its output looks less random to us than our own guesses do.
- crypto.getRandomValues, the browser's cryptographic generator
- One unsigned 32-bit value, sometimes more
- Rejection sampling onto 10 slots
- 6 of 4,294,967,296 raw values, redrawn
- No. These tools are never seeded
- Your browser. No server ever sees a draw
1–10 — frequently asked
Tap Generate. The range is already set, and each of the ten numbers carries exactly a tenth of the probability.
Seven is the only number from 1 to 10 that is neither a factor nor a multiple of another number in the range, and it cannot be halved cleanly. That structural loneliness reads to us as randomness, so it gets picked far more than its tenth share. Ask for a number between 1 and 20 and the same instinct lands on 17.
Yes. Exactly.
Raise the count to anything up to 10 and the draw returns that many distinct numbers, sorted. A count of 10 gives you the full set in a shuffled order.