When you spin the wheel at GetLuckyNumber.com, a number appears that nobody — not even us — could have predicted. But what does "random" actually mean for a computer, which is fundamentally a machine that follows instructions?
Pseudo-random numbers come from math formulas. Given a starting value (a "seed"), the formula produces a sequence that looks random but is entirely determined: same seed, same sequence. This is what the classic Math.random() function in web browsers does. It's fine for shuffling a playlist, but predictable in principle — a poor choice for anything that must be fair or secure.
Cryptographically secure random numbers come from physical unpredictability your operating system gathers — tiny variations in hardware timing, electrical noise, and other sources that cannot be reproduced. These are suitable for passwords, encryption keys… and honest lucky draws.
GetLuckyNumber.com draws every winning number with the Web Crypto API (crypto.getRandomValues) — your browser's cryptographically secure source. On top of that, we use rejection sampling: a technique that guarantees every number in your range has exactly the same probability, eliminating the subtle bias that naive methods introduce.
Fairness and theatre are separate jobs. The instant you press SPIN, the secure generator picks the winner. The wheel then choreographs itself to stop with that exact number under the gold pointer — which is why the number under the arrow always matches the celebration. The suspense is for you; the randomness is for real.
Practically, no. The draw happens on your device, in your browser, the moment you click. There is no server deciding anything, no pattern to learn, and no "due" numbers — each spin is independent of every spin before it.
The best way to understand randomness is to watch it. Spin the wheel a few times with the same range — you'll see clustering, streaks, and gaps, all the signature quirks of genuine randomness rather than the too-even spread people mistakenly expect.