Random, done right.
A strong password generator, a configurable number generator, and a 10-slot picker. Every result is generated using cryptographic randomness — the browser's Web Crypto API — with the modulo bias removed, so each outcome is equally likely. Generate manually, or let auto mode roll once every 10 seconds.
Random Password
Strong, copyable, entropy-rated — generated using cryptographic randomness.
Random Number Generator
Numbers in a range, or with an exact digit count.
10-Slot Picker
Name 10 slots, pick a winner (0–9). Names are saved.
How each result is generated
Many “random” sites use Math.random() — fine for a toy, but
not cryptographic, and biased the moment you map it onto a range. WD Random is
generated using cryptographic randomness instead, and shows the details of your last
generation below. This panel reports the method used; it isn't a proof of randomness.
SOURCE
crypto.getRandomValues() — the browser's Web Crypto API, backed by your operating system's CSPRNG. Not Math.random().
METHOD
Bounded integers use rejection sampling, so the % operator never skews the odds — every value in a range is equally likely.
BIAS
Modulo bias is removed by discarding the small unusable tail of each 32-bit draw before mapping onto your range.
RUNS LOCALLY
100% in your browser. Nothing is sent to a server, logged, or stored — apart from your slot names, which stay in this browser's localStorage.
- Source
- Web Crypto API · crypto.getRandomValues()
- Method
- rejection sampling
- Selected settings
- —
- Bias status
- removed — uniform distribution
- Generated
- —
- Generations this visit
- 0
More quick tools
manualLucky Number
One number, 1–9,999,999.
Coin Flip
Heads or tails, with stats.
Dice Roller
d4–d100, one or many.
Lottery Picker
K unique from N, optional Powerball.
Percentage Roll
Roll against a success chance.
Weighted Random
Outcomes with custom odds.
Random Color
Hex color with live preview.