Your range
Set a minimum and maximum — 1 to 100, 1 to 6 for a die, or whatever range you need.
Draw a random number in any range — one or many, whole or decimal, with or without repeats. Unbiased and entirely in your browser.
Set a minimum and maximum — 1 to 100, 1 to 6 for a die, or whatever range you need.
Draw several numbers at once, optionally without repeats — for draws, raffles or assignments.
Uses the browser’s cryptographic generator with bias removed — an equal chance for every number.
You set a minimum, maximum and how many numbers, and the tool draws numbers within that range. Values are whole by default; you can also set decimal places. Drawing uses the browser’s cryptographically secure generator (crypto.getRandomValues), not plain Math.random.
Yes. We use crypto.getRandomValues plus rejection sampling, which removes modulo bias — meaning every number in the range has an equal chance, with no slight tilt toward smaller values.
When enabled, all drawn numbers are distinct — handy for draws, raffles or assignments without duplicates. It requires the range to contain at least as many values as the requested count; it does not apply when decimal places are used.
Yes. Set "How many" (up to 1000) and press "Generate" to get a list. You can copy them all at once, comma-separated.
Draws and picking winners, splitting teams, games, making an impartial decision, test data, and anywhere you need an unbiased random number.
No. Everything is generated locally in your browser via JavaScript — nothing is sent to a server.