You type or paste a list of names, one per line, and press Spin. A wheel with one coloured slice per name turns for a few seconds and stops with the winner under the pointer at the top. It suits a classroom ("who answers next?"), a team meeting ("who presents first?"), a giveaway among people who agreed to a draw, or any small decision you would rather leave to chance. The names stay in your browser: they are not uploaded, saved or shared.
Why the pick is fair
The animation is only decoration. The moment you press Spin, the page chooses the winner, and only then does it work out where the wheel has to stop. The choice uses crypto.getRandomValues, the browser's secure random source, never the weaker Math.random. A 32-bit random number does not divide evenly by most list sizes, and the usual shortcut of taking the remainder would make some names very slightly likelier than others: with 1,000 names, the first 296 of them would be favoured by about one part in 4.3 million. This tool avoids that by rejection sampling. It throws away the few values from the uneven tail (2 raised to 32, modulo the number of names) and draws again, so every name has exactly the same chance, 1 in the number of names. The wheel then turns at least five full turns plus whatever it needs to stop at a random point inside the winning slice, never right on a boundary.
Good to know
If your device is set to reduce motion, the wheel does not spin: the winner appears at once, and the pick is made in exactly the same way. The wheel also lands at once if you switch to another tab while it is turning, so it never keeps animating in the background. This is a convenient way to choose, not an audited draw: if prizes or legal rules are involved, check what your platform or local law requires, and consider a witnessed process. To make a list of names to draw from, the text toolkit can clean and sort it, and the random data generator can make test lists.