Random Number Generator random
Generate random integers within a range, with options for duplicates, sorting, and separator.
What this tool does
Random numbers are needed for all sorts of things: drawing a winner, filling test data with arbitrary values, or selecting a sample.
This tool uses the browser cryptographic random generator, and it handles bias properly. Fitting a random value into a range with a plain modulo makes the lower part of the range slightly more likely; instead, values that would not divide the range evenly are discarded and drawn again, so every number has the same probability.
Turning on the no-duplicates option produces distinct values, as a lottery draw would. Asking for more numbers than the range contains is impossible, so that case reports an error. The sum and average of the result are shown alongside.
When to use it
Use it to draw event winners, to invent numeric values for test data, to select a random sample, to pick a set of distinct numbers, or to randomise presentation order.
Input and output examples
Six numbers from 1 to 45, no duplicates
3, 11, 19, 27, 33, 42 (different each run)
Enable sorting to get them in ascending order.
Twenty numbers from 1 to 10, no duplicates
Error: the range only holds ten values
Duplicates must be allowed for that request.
Notes and limitations
A public draw needs a verifiable process. This tool neither records nor proves its results, so if participants must trust the outcome, record the screen or arrange separate verification. It is also not for generating security tokens: the randomness itself is cryptographic, but a narrow numeric range is easy to guess, so use the password or UUID generators for session identifiers and secrets.
Frequently asked questions
Is the distribution really uniform?
Yes. Values that would introduce modulo bias are discarded and redrawn, so every number in the range is equally likely.
Can I reproduce a previous result?
No. There is no seed option, so every run produces new values.