Free & unlimited

Random Number Generator

Generate one or more random numbers in a range using a secure random source.

What this tool does

Generates one or more random whole numbers within a range you set — for drawing a giveaway winner, rolling dice, picking a random sample, assigning an order, or seeding a game.

Numbers come from your browser's cryptographically secure random source (crypto.getRandomValues), not Math.random(), so every value in the range is equally likely.

How to use this tool

1Set the minimum and maximum — both ends are included in the range.
2Choose how many numbers you want.
3Turn "allow duplicates" off if every number must be unique (for a draw, say) or on if repeats are fine (like dice rolls).
4Click Generate, then Copy All to paste the results elsewhere.

Why the random source matters

Math.random() is fast but produces a predictable sequence — given enough of its output, future values can be reconstructed. This tool uses the Web Crypto API instead, the same source browsers use for security tokens, drawing from a 32-bit range and mapping it onto yours. Any leftover bias from that mapping is on the order of one part in billions — far too small to matter for a draw, a sample, or a dice roll.

For a public draw, that's the difference between “random” and “defensibly random”. For a serious prize, still record how you did it — screen-record the draw, or note the range and count — since the result itself can't be reproduced or audited afterwards.

FAQ

Can I reproduce a previous result?
No. There's no seed you can set — each generation is independent and secure by design, so results can't be replayed. If you need reproducibility, that's a different kind of tool.
How do I generate unique numbers with no repeats?
Turn off "allow duplicate numbers". Every number will be distinct, as long as the range holds at least as many values as the count you asked for.
Is it really unbiased?
For any practical purpose, yes. It draws from the browser's secure 32-bit random source and maps that onto your range. The tiny statistical skew that mapping leaves is around one part in billions — undetectable in a raffle, a sample, or a game.
What's the largest range or count I can use?
The range can span the full integer range; the count is capped at 1000 per generation to keep the page responsive.
Is any of this sent to a server?
No. Every number is generated locally in your browser and never leaves your device.