What next?
Random values, then the other generators and the odds.
Your computer can't actually roll a dice
Here's a strange truth: a computer is a perfectly predictable machine, so it can't produce true randomness on its own. What it gives you is pseudo-randomness — a formula that starts from a hidden seed and spits out numbers so scrambled they pass for random. Start from the same seed and you'd get the exact same "random" sequence every time.
For draws, games and sampling that's more than good enough — the numbers are uniform and unpredictable in practice. For anything security-critical (encryption keys, real money), specialists use hardware that harvests genuine physical noise. This generator is built for the everyday kind.
How to use it
Set your minimum and maximum (both included), choose how many numbers you want, and hit Generate. Tick No duplicates for a prize draw where each number can only come out once, and Sort ascending to see the results in order.
What your result means
Each number is drawn independently and uniformly from the range you set, so every value between your minimum and maximum is equally likely on every draw. Independence is the part people misread: a previous result has no influence on the next one, and a run of high numbers does not make a low number "due".
Uniform also means clumpy. Genuine randomness produces repeats and streaks far more often than intuition expects — in a 1-to-100 draw repeated fifty times, a duplicate is almost certain. If you need every result to be distinct, such as drawing prize winners, turn on unique results rather than re-rolling until the list looks random enough.
Why this one is different
An impossible request is refused with the reason: ask for twenty distinct numbers from a range of ten and the tool says so, instead of repeating values or silently returning nine. Duplicates and ordering are separate switches, so a lottery line and a shuffled running order both come out the way they should.
Worked example
Drawing six numbers from 1 to 49, twice:
Draw B 7, 8, 9, 30, 31, 44
Draw B looks rigged and Draw A looks random, but both are equally likely — there are exactly as many ways to get one specific set as any other. Consecutive runs and near-misses appear far more often in genuine randomness than people expect. If you need six different numbers, as in a lottery draw, switch on unique results rather than re-rolling until the list looks sufficiently scattered.
Frequently asked questions
Are the minimum and maximum included?+
Yes — the range is inclusive on both ends, so a range of 1 to 6 can return any value from 1 through 6.
Can I draw more unique numbers than the range allows?+
No. With "No duplicates" on, the count can't exceed how many whole numbers fit in your range — the tool will let you know if you ask for too many.
Is this random enough for a prize draw?+
For informal draws, yes: it uses the browser's cryptographic random source rather than a simple pseudo-random function. Formal or regulated draws usually need an auditable process with witnesses, which no web page can provide.
What is the difference between with and without replacement?+
With replacement, the same number can appear more than once, like rolling a die repeatedly. Without replacement, each number is drawn only once, like dealing cards or drawing raffle tickets.
Can I reproduce the same set of numbers later?+
No. There is no seed input, deliberately, because a reproducible sequence is not what most people want from a draw. Copy the result if you need a record.
Why did I get repeats in a short list?+
Because independent draws have no memory. In a range of 1 to 10, drawing ten numbers with replacement will usually contain several duplicates, and that is what randomness actually looks like.
Related tools
Random enough for what?
This generator uses the browser's cryptographic random source rather than the ordinary pseudo-random function, so the output is suitable for drawing prizes, sampling and anything where predictability would matter. What no browser tool can give you is a guarantee of fairness that a third party can verify — for a public draw, the auditable process matters as much as the numbers.
Assumptions & limitations
A few things worth knowing about random number generation:
- Values are drawn from the Web Crypto API, which is seeded by the operating system's entropy pool — not from Math.random.
- Each draw is independent. A run of similar numbers is normal in genuinely random output and is not evidence of a fault.
- "Unique" mode samples without replacement, so it cannot return more numbers than the range contains.
- For statutory lotteries, gambling or anything legally regulated, use a certified RNG with an audit trail rather than a web page.
Sources & references
Randomness in the browser and what it is suitable for:
- MDN Web Docs — crypto.getRandomValues, the cryptographically strong source used here
- NIST SP 800-90A — recommendation for random number generation
- RANDOM.ORG — the difference between true and pseudo-randomness