Random Number Generator
Crypto-grade randomness, any range, with an optional no-repeats mode for draws and raffles.
Generated on your device — every draw is fresh and private.
Why "rejection sampling" matters
The naive approach — random number modulo range — quietly favors lower numbers when the range doesn't divide evenly into the generator's space. Fine for a dice game, unfair for a giveaway. This tool discards the biased remainder region and redraws, so every value in your range has exactly equal probability. Your raffle entrants will never know the difference; the math does.
Common questions
How random are these numbers?
They come from crypto.getRandomValues — your browser's cryptographic randomness, the same source used for encryption keys — with rejection sampling to remove modulo bias. That's as random as software gets; suitable for draws, sampling, and anything short of a state lottery.
How do I pick a random winner from N entries?
Number your entries 1 to N, set min=1 and max=N, count=1, hit Generate. For multiple winners, set the count and tick "unique" so nobody wins twice.
Can I get numbers without repeats?
Tick unique. The count can't exceed the size of the range (you can't draw 10 unique values between 1 and 5) — the tool will tell you if you try.
Is anyone else seeing my numbers?
No — generated on your device, never transmitted. Each click is a fresh, independent draw.