Random Number Generator β Crypto Strong
Generate one or many random integers in any range. Uses crypto.getRandomValues β cryptographically secure. Optional no-repeat mode for raffles and draws.
When you need a random number generator
Random numbers underpin everything from password generation to lottery draws, game design to scientific simulations. This tool gives you cryptographically secure random integers in any range β suitable for raffles, prize draws, randomised testing, sampling, or just picking a number between 1 and 10.
Math.random vs. crypto.getRandomValues
JavaScript's Math.random() is a pseudo-random generator suitable for non-security uses but has detectable patterns that make it inappropriate for anything where randomness matters cryptographically. This tool uses window.crypto.getRandomValues() instead β the same source used by password generators, UUID generators and cryptographic libraries.
No-repeat mode
For raffles, lottery draws, or any case where you need unique winners, tick "No repeats". The tool generates numbers without replacement β once drawn, a number isn't drawn again. The count can't exceed the range size in this mode (you can't draw 100 unique numbers from 1 to 50).
Common uses
- Raffle and prize draws (transparent, reproducible-ish if you screen-share the result).
- Randomly picking a team from a list (assign each member a number).
- Generating test data for software.
- Statistical sampling β selecting random records from a dataset.
- Picking a number for a game (1-d20 dice roll = min 1 max 20).
- Random ordering β generate a random number per item then sort by it.
Tips
- For fair raffles, screen-share the page during the draw and announce the inputs (min, max, count).
- For reproducible "random" sequences (testing), use a seeded PRNG instead. This tool is unseeded.
- For very large ranges (more than 2^53), this tool can't represent the values exactly β use BigInt-aware tools.
FAQs
Is the randomness fair?
Yes β uses crypto.getRandomValues with proper modular debiasing to avoid range bias.
Is anything uploaded?
No.
Can I get numbers above 1 million?
Yes β up to 2^53 (the max safe JavaScript integer).