spin2choose is a free, browser-based random wheel picker — designed for teachers calling on students fairly, streamers running giveaways live on camera, coaches splitting kids into teams, and anyone who's ever stared at a takeout menu unable to commit. It runs entirely in your browser, stores nothing on a server, and is free to use without a login.
The category is crowded. There are dozens of free wheel-spin tools, most of which were written between 2014 and 2018 and have been coasting on traffic ever since. So the honest answer to "why build another one?" is that almost all of them share three problems I kept running into:
Math.random(), which is a predictable
pseudo-random sequence. Fine for a casual game, not fine for a
raffle where someone's $50 donation is on the line.
spin2choose started as a weekend rebuild for personal use, kept growing because the underlying tech (cryptographically secure randomness, the Canvas API for rendering, the Web Audio API for sound) made it possible to ship a tool that felt like a finished product rather than a 2010-era widget. It's been in active use and development since 2024.
Three rules shape every decision about what to build (and what to refuse to build):
Your wheels never leave your device. Every entry, every winner, every
saved roster lives in your browser's localStorage. There
is no user database, no email collection, no "create an account to
save your wheel" flow. If you clear your browser data, your wheels
are gone — and that is the entire data architecture. This is also
why we can host the tool for free without monetizing user behavior.
Math.random()
Every winner is picked using
window.crypto.getRandomValues(), the browser's
cryptographically secure random source. This matters more than it
sounds: a Twitch streamer drawing a $100 prize, a teacher trying to
avoid favoritism, and a youth coach picking team captains all
depend on the wheel being demonstrably fair. With
crypto.getRandomValues(), we can say with confidence
that no one — including us — can predict or influence the result.
You should be able to land on the page, type four names, and pick one in under ten seconds. No modal interrupting you. No "save your wheel — sign up free!" upsell. No tracking pixel that follows you around the web. The tool is supported by Google AdSense ads in the page margins, and that is the entire business model. There is no premium tier and no plan to introduce one.
For the technically curious: spin2choose is a vanilla JavaScript application. No React, no Vue, no framework runtime — just modern ES modules, the Canvas API for the wheel, the Web Audio API for the tick and win sounds, and the Web Animations API for the confetti. The whole bundle ships well under what a typical "Hello World" framework starter weighs, which is part of why the page loads quickly even on a phone with a weak connection.
Questions, bug reports, feature ideas, or partnership inquiries all go to the same place: hello@spin2choose.com. Real human reads it. Response time is usually under a few business days. There's also a dedicated contact page with more detail on what kinds of messages are welcome.