Random Number Generator

Set your range and hit Generate. One number, or many — with history.

How the Random Number Generator Works

Set a minimum and maximum value, choose how many numbers to generate, then click Generate. The tool uses your browser's built-in Math.random() — a pseudorandom number generator that is fast and unbiased for everyday use.

Enable “No duplicates” to ensure each generated number is unique within the range — useful for lottery picks, random sampling, or assigning unique IDs. The last 10 results are saved in the history so you can refer back to previous draws.

Frequently Asked Questions

Is this truly random?
The generator uses JavaScript's Math.random(), which is a pseudorandom number generator (PRNG). It is seeded by the browser and is unpredictable enough for games, raffles, and everyday decisions — but not for cryptography. For cryptographic randomness, use window.crypto.getRandomValues() — though for picking a winner or a dice roll, Math.random() is perfectly fine.
What does 'No duplicates' do?
When enabled, the generator picks numbers without replacement — like drawing tickets from a hat. Each number can appear at most once in the result. If you ask for more numbers than the range allows, the count is automatically capped at the range size.
Can I generate negative numbers?
Yes. Set the minimum to a negative value (e.g., −50) and the maximum to any value greater than or equal to the minimum. The generator handles negative ranges correctly.

You might also need

Complementary tools based on what you're doing

🎲
Coin Flip & DiceMore random tools
🔐
Password GeneratorGenerate random passwords
🔢
number-base-converterConvert number bases
percentage-calculatorCalculate with numbers