Random Number Generator – Instant, Unbiased Number Picks
A random number generator produces one or many numeric values within a range you choose, with no predictable pattern. It is the digital equivalent of rolling dice, drawing lottery balls, or flipping a coin — except it works for any range, any count, and any level of precision you need. This tool covers everyday use cases like picking a raffle winner, choosing a random sample for research, generating placeholder test data, or simply settling a quick decision, alongside more structured tasks like drawing a set of unique lottery numbers.
How the Generator Works
By default, the generator draws from the browser's crypto.getRandomValues() API, which provides cryptographically strong randomness suitable for security-sensitive use cases. If that API is unavailable, it falls back to Math.random(). For an integer in the range [min, max], the tool computes min + floor(rand() × (max − min + 1)). For decimals, the raw value min + rand() × (max − min) is rounded to your chosen number of decimal places. Everything runs locally in your browser — no numbers are ever sent to a server.
Single vs. Bulk Generation
Set Number of results to 1 for a single pick — perfect for simulating a dice roll or coin toss — or raise it to generate a batch of up to 10,000 numbers at once, such as six unique numbers for a lottery ticket or a large sample for a statistics exercise. When generating multiple numbers, the tool also reports the minimum, maximum, average, and sum of the batch so you can quickly gauge the spread of your results.
Integers, Decimals, and Precision
Choose Integer for whole numbers or Decimal for floating-point values with a configurable precision from 0 to 10 places. Decimal mode is useful for simulating continuous measurements, generating probabilities between 0 and 1, or producing realistic-looking test data with fractional values.
Duplicate Control and Exclusions
Turn off Allow duplicates when you need a set of distinct values, such as a unique lottery draw or a sample without repeats. If the range (after removing any excluded numbers) is smaller than the count you requested, the tool tells you exactly how many unique values are actually available. The Exclude numbers field accepts a comma-separated list (for example 7, 13, 17) of values to remove from consideration before generation — handy for avoiding numbers that are already taken, unlucky, or otherwise off-limits.
Sorting and Reproducible (Seeded) Results
Results can be left in generation order or sorted ascending or descending, which is useful when presenting a lottery-style draw. If you need the same "random" output every time — for automated testing, teaching a randomization algorithm, or sharing a repeatable example — enter a seed value. The tool then switches to a deterministic generator (a mulberry32 pseudo-random algorithm keyed off your seed) so identical inputs always reproduce identical output. Leave the seed blank for unpredictable, cryptographically secure numbers.
Quick Picks and Export Options
The quick-pick presets instantly configure common scenarios — a six-sided die, a coin flip, a 1–49 lottery pick, or a 0–100 percentage — so you don't have to set up the range manually. Once numbers are generated, you can copy the full list (or tap any single chip to copy just that value) to your clipboard, or export the batch as a .txt file for printing and record-keeping or a .csv file for spreadsheets and further analysis.
Accuracy and Fairness
Every value within your specified range has an equal probability of being selected — the generator does not favor any number, position, or pattern. Because generation happens client-side using cryptographic randomness by default, the results are suitable for contexts where fairness and unpredictability genuinely matter, not just casual guessing games.