Skip to main content

decision-wheel-spinner

A decision wheel spinner is an animated random-choice tool where you list options as wheel segments and click to spin, landing on one at random β€” a fast, visually-engaging alternative to coin flips, dice, or "let's vote" deadlocks. The ZTools Decision Wheel Spinner runs entirely in the browser, uses cryptographically-strong randomness for fair outcomes, supports unlimited segments, custom colours, weighted (uneven) segments, sound-on-spin, and works on any device including projection for classroom or team use.

Use cases​

Stuck-in-decision pairs​

Couple deciding dinner; family choosing weekend activity. The wheel breaks deadlock without anyone "winning" the argument. Outcome rarely matters; the deadlock cost was the bigger problem.

Classroom random picker​

Teacher needs to call on a student. Wheel of names ensures fairness (no bias toward extroverts). Students often experience this as fun rather than threatening.

Team standup or icebreaker​

Random ordering for who speaks first; random pairing for breakout rooms; random topic for icebreaker. Lower-cognitive-load fun.

Raffle / giveaway draw​

List participants on segments, spin, the landed segment wins. Visible randomness builds trust in the outcome.

How it works​

  1. Add segments β€” One per option. Segments auto-size to fill the wheel evenly; can be weighted (one option larger = higher chance) for asymmetric draws.
  2. Customise β€” Colour per segment, optional emoji or icon, sound on spin start / stop.
  3. Click spin β€” Wheel rotates with deceleration. Spin angle determined by Crypto-API random (32-bit) β€” no shortcut to guess outcome.
  4. Read result β€” Pointer at top indicates winning segment. Result displayed below; option to remove that segment for "draw without replacement".
  5. Save / share (optional) β€” Save the wheel configuration; share a link to a pre-built wheel.

Examples​

Input: 6 dinner options: pizza, sushi, tacos, salad, pasta, leftovers

Output: Spin lands on tacos (random angle 217Β° β†’ segment 4 of 6). Decision in 3 seconds.


Input: 20 student names for cold call

Output: Each segment 18Β°; spin uniform. Over 100 spins, each name lands ~5 times β€” confirmed fair.


Input: Weighted wheel: 70% chance "Yes", 30% chance "No"

Output: "Yes" segment 252Β°, "No" segment 108Β°; weights respected.

Frequently asked questions​

How random is the spin?

Uses crypto.getRandomValues β€” same cryptographic-grade RNG used for security applications. Outcomes are uniform across segments to within statistical noise.

Why use a wheel instead of just random.choice?

Visible randomness builds trust. When others see the wheel spin, they accept the outcome more readily than "the algorithm picked you".

Can I pre-rig the outcome?

No. The result is determined at spin time from the RNG; no setting to favour a specific segment outside of explicit weights.

Is the weighted wheel still random?

Yes β€” weights set the probability of each segment, but each spin is still randomly drawn from those probabilities. Equal weight = uniform.

Can I save my wheel?

Yes, locally. Persisted in browser storage so the same wheel reopens next session. Export JSON to share or back up.

Is this gambling?

For non-money decisions, no. For gambling-related uses, check local laws β€” randomness alone does not make a wheel gambling, but money + outcome does.

Tips​

  • Weight only when there's a real reason β€” equal weights are fairer and avoid suspicion.
  • For draws-without-replacement (e.g. picking 3 winners), enable "remove on spin" to avoid duplicates.
  • Project the wheel for classroom or team use β€” visibility is half the appeal.
  • Use sound sparingly; a brief click on landing is enough, continuous music is distracting.
  • Limit segments to ~12 for readability; more than that, group into categories or use a different tool.

Try it now​

The full decision-wheel-spinner runs in your browser at https://ztools.zaions.com/decision-wheel-spinner β€” no signup, no upload, no data leaves your device.

Open the tool β†—


Last updated: 2026-05-05 Β· Author: Ahsan Mahmood Β· Edit this page on GitHub