🎲 Random Tools

Can't decide? Let chance help. Every randomiser uses crypto.getRandomValues() — the same cryptographic randomness used for encryption — so the results are genuinely fair.

🎡Spin the WheelCustomisable wheel with realistic physics deceleration 🎯Random Name PickerSlot-machine animation, elimination mode, multi-pick 🎬Random Movie Picker58 curated films, filter by genre and mood 🪙Coin Toss3D CSS flip animation, streak tracking, 30-flip history 🎲Dice Rollerd4 to d100, up to 10 dice, modifiers, rejection sampling 🔑Password GeneratorSecure random passwords with entropy and crack time display

Why cryptographic randomness matters

JavaScript's built-in Math.random() is a pseudo-random number generator — it produces numbers that look random but follow a predictable sequence. crypto.getRandomValues() uses the operating system's entropy pool, which draws from real physical sources of randomness. All PocketTools randomisers use the cryptographic API, with rejection sampling to eliminate modulo bias. The result: fair outcomes you can actually trust.