"I had over 750 visitors but only seven email subscribers. After three days my subscribers had jumped to 75! I love this app and how easy it is to set up."
Spin-the-wheel popups. Try the one on the right.
It's a real working wheel — same code that ships in your account. Weighted prize odds you control, anti-cheat that actually works, mobile haptics, and a 5-minute setup. The 13.2% number is real.
Three psychology levers,
doing all the real work.
Wheels don't convert because users like wheels. They convert because of three mechanics underneath. Full walkthrough at /games.
Unknown payoff beats known.
A fixed "10% off" popup has a known reward. The wheel's reward isn't — you might land on 40%, you might land on "try again." Variable-ratio reinforcement is the most powerful schedule in behavioural psychology. It's why slot machines exist.
Won beats given.
A coupon by email feels like an ad. A coupon you spun for feels like something you won. Users who spin are 2.4× more likely to redeem the resulting code than users who receive the same code by email.
Mid-flow beats upfront.
Once a visitor types an email and clicks "spin," closing the popup means losing the result they're now invested in. The micro-commitment ladder is the unsung hero — the email becomes a side effect, not the ask.
Numbers from real stores
shipping the wheel today.
Straight from the Shopify App Store — real reviews, real store names. Read all 188 at /customers.
"We have over 100 emails collected in just 5 days! We highly recommend this app to increase your email subscribers."
"This app brought over £1,000 in sales leads in one week from spin-the-wheel. Well worth the install — I'd highly recommend adding it to your store."
Start from a wheel that's
already made someone money.
Each template ships with our cohort's best-performing prize odds and trigger defaults pre-configured. Clone, brand, publish.
// + more spin-wheel templates in the library
Browse all wheel templates →From signed up
to wheel-on-your-site.
Five minutes is the median for new accounts. Brand-kit import auto-fills your colors and logo. The default template ships with our best-performing settings — don't change them on day one.
Sign up. Paste your store URL.
The brand kit auto-imports — logo, primary, secondary, fonts, radii. Every template instantly looks like your store. No design work.
Pick a wheel template.
"Lucky Wheel" ships with our cohort's best-performing prize odds — 40% on a 0.5% slice, 25% / 15% / 10% / 5% on the rest. Don't touch them on day one.
Set the trigger.
The default: visit ≥ 2, scroll > 40%, not seen for 14 days, cart empty. Stripping it down to these four conditions outperforms every "smart" algorithm we've tested.
Wire your ESP.
Klaviyo, Mailchimp, ActiveCampaign, Omnisend — one-click OAuth. Captured emails route by list and tag. The prize each winner saw is attached as a property.
Hit publish.
The script is async, under 10KB gzipped, doesn't touch your Lighthouse score. From this moment, you'll see live activity in the dashboard within 30 seconds. The median first capture comes ~90 seconds in.
The wheel looks random.
The math behind it isn't.
Every safeguard we ship to stop visitors gaming the wheel for the jackpot. The defaults are airtight; you can dial them up or down per campaign.
Weighted prize odds.
The 40% slice looks 1/8 of the wheel. Visually that's true. The actual probability is whatever you set — 0.5%, 2%, 10%. We default to 0.5% on the big prize. The wheel still spins fairly; the math is just yours to tune.
Email validation before spin.
The default flow asks for the email before the wheel spins — not after. This single change cuts fake emails by 73% and tightens fraud detection on the back-end.
Cookie-based attempt limit.
One spin per visitor per session, by default. Clearing cookies doesn't reset it — we fingerprint browser, IP, and ESP-side email collision.
IP rate limiting.
More than three spins from one IP in an hour and the wheel quietly stops awarding the big prize. Most cheaters never realize they've been ratelimited.
Disposable email blocking.
1,200+ disposable-email domains blocked by default. Custom block-list per account. Visitors who use a disposable address get a "try again" outcome.
Frequency cap, per visitor.
Default: 14 days between spins for the same visitor. Stores that ignore this and show the wheel every session lose 60% of the conversion lift.
Wheelio is a wheel.
woohoo is a popup platform with a wheel.
An honest side-by-side. We've shipped from Wheelio more migrations than any other tool — the gap is mostly that Wheelio stops at the spin.
| Feature | woohoo | Wheelio |
|---|---|---|
| Spin-the-wheel core | ● Growing library | ● ~12 templates |
| Pick-a-gift, scratch, reel | ● Coming soon | ● |
| Regular popups (no game) | ● Full builder | ● |
| Works on any platform | ● | ● Shopify only |
| Separate mobile editor | ● | ● Auto-scale only |
| A/B testing | ● Every plan | ● |
| Mobile haptics (iOS) | ● | ● |
| Anti-cheat (IP + email + cookie) | ● | ● Cookie only |
| Conditional logic (no code) | ● | ● Limited |
| Starting price | Free · paid from $14.99/mo | $14.92/mo |
// Migrating from Wheelio? We have a 15-minute migration guide.
Full platform comparison →Spin-the-wheel questions, answered.
If something isn't here, ping support@getwoohoo.com — we answer in under an hour.
Does the wheel actually pay out the big prize?+
What happens when someone clears their cookies and tries again?+
Will the wheel slow down my site?+
Can I use the wheel on a non-Shopify site?+
How do I migrate from Wheelio?+
Does the spin-wheel work on mobile?+
Can I run the wheel only during BFCM?+
Ship the wheel.
See the 13.2% for yourself.
The 'Lucky Wheel' template includes every default in this page — prize odds, trigger rule, mobile haptics, anti-cheat. Free up to 500 monthly visitors, no card, no demo call.