Free Random Number Generator Online

Generate random numbers within a custom range. Supports integer and decimal numbers with seed options.

Last updated

Pick a winner for the office raffle. Roll a virtual d20 for the D&D session. Sample 30 random row numbers from a 10,000-row spreadsheet for an audit. Generate seed values for a unit test. Most random number questions in everyday life have the same shape: "give me N numbers between A and B, with or without duplicates", and our free online Random Number Generator answers exactly that. Set the minimum and maximum (any integer or decimal range), the count (one number for a raffle, dozens for sampling), whether duplicates are allowed (off for raffles, on for dice rolls), and how many decimal places you want (zero for integers, more for simulations). Click Generate and the numbers appear as a list along with summary statistics (sum, average, smallest, largest) so you can spot-check the distribution. The randomness comes from the browser's `crypto.getRandomValues` Web Crypto API — the cryptographically secure source — which means the results are statistically uniform and unpredictable, not the predictable Math.random that many free tools rely on. That matters for fairness: a raffle drawn from `Math.random` on certain old browsers actually had detectable patterns. Real-world workflows: drawing a winner from a list of contest entrants (assign each entrant a number, then generate one random pick), sampling rows from a dataset for spot-checking, generating dice rolls for a tabletop game, picking a random restaurant from a numbered list when nobody can decide, or seeding a Monte Carlo simulation. After generating, the [Random String Generator](/tools/random-string-generator) handles random text, the [Random Token Generator](/tools/random-token) produces UUIDs, and the [Password Generator](/tools/password-generator) creates secure passwords using the same Web Crypto source.

How to Use Random Number Generator

1

Set Min, Max, and Count

Type the minimum and maximum values (integers or decimals) and how many numbers you want generated.

2

Choose Duplicate Behaviour

Allow duplicates for dice rolls and simulations; disable them for raffles and unique sampling.

3

Pick Decimal Places

Zero decimal places gives integers. More decimals give precise random floats — useful for simulations and statistics.

4

Click Generate

The numbers appear as a list with summary stats (sum, average, min, max) so you can verify the distribution looks reasonable.

Features

Cryptographically Secure

Uses `crypto.getRandomValues()` from the Web Crypto API — the same primitive browsers use for TLS handshakes. Statistically uniform and unpredictable.

Integer or Decimal

Generate integers for raffles and dice, or decimals with up to 10 places for precise simulations.

Unique or With Repeats

Toggle duplicates on or off depending on the use case. Disabling duplicates gives a true random sample without replacement.

Live Statistics

See sum, average, smallest, and largest values for the generated set — useful for spot-checking distributions.

Benefits of Using Random Number Generator

Completely Free

Use Random Number Generator without any cost, limits, or hidden fees. No premium plans needed.

No Installation

Works directly in your browser. No software downloads or plugins required.

100% Private

Your files and data are processed locally. Nothing is uploaded to external servers.

Works Everywhere

Compatible with Chrome, Firefox, Safari, Edge on desktop, tablet, and mobile.

No Sign-Up

Start using the tool immediately. No account creation or email verification.

Always Available

Access this tool 24/7 from anywhere in the world, on any device.

Frequently Asked Questions

Yes. The Web Crypto API meets the standards used by browsers for cryptographic operations — it is statistically uniform and resistant to prediction. For a raffle of any reasonable size (up to a few thousand entries), it is more than fair enough.
With duplicates on, every number is independent — you might generate the same value twice. With duplicates off, the generator uses sampling-without-replacement, which guarantees N distinct values. The maximum N you can request is the size of the range (you cannot pick 10 unique numbers from 1–5).
Yes — the min and max accept negative values, and the range can extend up to the safe integer limit (about 9 quadrillion). Beyond that, JavaScript's number precision starts to break down.
Math.random is fine for non-critical uses (animation timing, casual games) but it has detectable patterns over long sequences and was historically biased on some browsers. For raffles, gambling, security tokens, or any case where unfairness would matter, the Web Crypto source is the right choice.
Copy the list to your clipboard with the copy button. From there, paste into a spreadsheet or text file. There is no built-in export-to-CSV yet but the copy-paste covers every common workflow.
No — there is no manual seed input. The Web Crypto API does not expose a seed because the whole point of cryptographic randomness is that it cannot be reproduced. For reproducible random sequences (e.g. unit tests), use a library with a seedable PRNG locally.