ALLYX ONE
Tools Calculator Random Number Generator Calculator
100% browser · zero uploads

Random Number Generator

Generate cryptographically secure random numbers instantly. Set any range, generate a list, pick random items — free, no sign-up, and everything runs entirely in your browser using the Web Crypto API.

Numbers generated with crypto.getRandomValues() — cryptographically secure, runs entirely in your browser.

How It Works

1

crypto.getRandomValues()

Every number is drawn from your OS entropy pool via the Web Crypto API — cryptographically unpredictable and never seeded from a deterministic algorithm.

2

Rejection sampling

To avoid modulo bias, the generator uses rejection sampling: it discards values outside the exact range and retries, ensuring uniform distribution across your chosen min–max.

3

Fisher-Yates shuffle for unique lists

When "no duplicates" is enabled, a partial Fisher-Yates shuffle on the full integer range is used. Each position is swapped once — O(n) time with no bias.

4

Runs in your browser

Nothing is uploaded, stored, or logged. The Web Crypto API runs natively in every modern browser — no server, no internet connection required after the page loads.

Why use a cryptographically secure random number generator?

Most browser-based random number tools rely on Math.random() — a fast but predictable pseudo-random algorithm. If you need random numbers for security-sensitive purposes (tokens, passwords, lottery draws, random sampling), the results must be unpredictable. This generator uses crypto.getRandomValues(), part of the Web Crypto API, which draws from the operating system's entropy pool (hardware timing jitter, interrupt events, and more), making it cryptographically secure and unpredictable.

How to Use the Random Number Generator

  1. Choose a mode: Single Number, Multiple Numbers, or Pick from List.
  2. For number modes, set your Min and Max range and choose Integer or Decimal.
  3. For multiple numbers, set the count and optionally enable No duplicates or Sort results.
  4. For list mode, paste your items (one per line or comma-separated), set how many to pick, and click Generate.
  5. Copy all results to your clipboard with the Copy all button.

Common use cases

Use case Recommended mode Settings
Roll a dice Single Number Min: 1, Max: 6, Integer
Pick lottery numbers Multiple Numbers Min: 1, Max: 59, Count: 6, No duplicates
Random password seed Multiple Numbers Min: 0, Max: 255, Count: 16, Integer
Draw a raffle winner Pick from List Paste names, pick 1, No duplicates
Random percentage Single Number Min: 0, Max: 100, Decimal (2 places)
Assign teams randomly Pick from List Paste names, pick team size, No duplicates

Features

  • Cryptographically secure: uses crypto.getRandomValues(), not Math.random().
  • Three modes: single number, bulk list generation, and pick-from-list for custom item sets.
  • Flexible range: any integer or decimal min–max, including negative numbers.
  • Decimal support: choose 1–6 decimal places for floating-point output.
  • No-duplicates mode: guaranteed unique values using rejection-sampled Fisher-Yates shuffle.
  • Sort toggle: optionally sort your list of numbers ascending.
  • Bulk generation: up to 10,000 numbers per run with one-click copy-all.
  • Pick from list: randomly select any number of items from a custom comma or newline-separated list.
  • 100% private: everything runs in your browser — nothing is uploaded or stored.
  • No account required: open the page and start generating.

Frequently Asked Questions

How does this random number generator work?

It uses your browser's Web Crypto API (crypto.getRandomValues()) to draw numbers from your operating system's entropy pool — hardware timing events, interrupt jitter, and other unpredictable sources. Unlike Math.random(), the output is cryptographically unpredictable.

What is the difference between crypto.getRandomValues() and Math.random()?

Math.random() uses a deterministic seeded PRNG — fast but predictable if the seed is known. crypto.getRandomValues() draws from OS-level entropy, making it cryptographically secure and suitable for tokens, passwords, and security-sensitive randomness.

Can I generate random numbers without duplicates?

Yes. In the Multiple Numbers tab, enable the "No duplicates" toggle. The generator uses a partial Fisher-Yates shuffle so every number appears exactly once.

How do I pick a random name from a list?

Switch to the "Pick from List" tab. Paste names one per line or comma-separated, set how many to pick, and click the button. Enable "No duplicates" to ensure no name is drawn twice.

Can I generate random decimal (floating-point) numbers?

Yes. Set the "Type" dropdown to "Decimal" and choose how many decimal places you want (1–6). The generator normalises a 32-bit crypto-random value to your range and rounds to the chosen precision.

What is the maximum number of results I can generate?

Up to 10,000 numbers per generation in the Multiple Numbers mode. All results are produced instantly in your browser.

Is my data stored or sent anywhere?

No. All generation happens entirely in your browser. The ranges, lists, and results you work with are never sent to or stored on any server — not even anonymously.

Privacy & Security

All random number generation runs locally using your browser's Web Crypto API (crypto.getRandomValues()). The ranges, list items, and generated results you work with are never transmitted to or stored on any server.