Highest-converting popup in the WooHoo cohort

The spin-to-win popup for Shopify. 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, and every spin the wheel discount doubles as email capture — the address is validated before the wheel moves.

13.2%
Median CVR · cohort
3.77×
vs. static form
5 min
To ship a working wheel
LIVEacme-store.com
+218emails today
Spin to win · 24h
Get up to 40% off your first order
// Why spin wheels convert

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.

// 01 — Variable reward

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.

// 02 — Earned outcome

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.

// 03 — Sunk commitment

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.

// Three teams · three industries

Numbers from real stores
shipping the wheel today.

Straight from the Shopify App Store — real reviews, real store names. Read all 500 at /customers.

Email capture · United States
7 → 75

"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."

Valentina Beauty🇺🇸 United States · 6 months
Read →
List growth · United States
100+ emails

"We have over 100 emails collected in just 5 days! We highly recommend this app to increase your email subscribers."

Colombian Jeans Wholesale🇺🇸 United States · 19 days
Read →
Spin-the-wheel · United Kingdom
£1,000

"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."

Strictly Static🇬🇧 United Kingdom · 8 days
Read →
// Spin-wheel templates

Start from a wheel that's
already made someone money.

Discount spin wheel templates, each shipping with our best-performing prize odds and trigger defaults pre-configured. Clone, brand, publish.

Default
Lucky Wheel13.2% median
Dark mode
Midnight SpinEditor's pick
Mobile-first
Beach WheelMobile-first
12-slice
JackpotMost remixed
Minimal
Sand & CoralNew
High-energy
Sunset SpinBest seller
Bold
Pop SportBFCM favorite
12-slice
CarnivalEditor's pick

// + more spin-wheel templates in the library

Browse all wheel templates
// 5 minutes from signup to live

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.

01

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.

store_url verdant.shop
colors ✓ extracted (4)
fonts ✓ extracted (2)
brand kit ready · 3s
02

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.

template Lucky Wheel
slices 8 · weighted
big_prize 40% off · 0.5% odds
defaults loaded · ready
03

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.

IF visit ≥ 2
AND scroll > 40%
AND last_seen > 14d
THEN show wheel
04

Wire your ESP.

Klaviyo, Mailchimp, Omnisend — one-click OAuth. Captured emails route by list and tag. The prize each winner saw is attached as a property.

destination Klaviyo · list_4f2
tag popup_wheel · prize_40
✓ connected · OAuth verified
05

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.

▶ PUBLISH wheel-v1
script_size 9.4kb
lighthouse ✓ green
live_at verdant.shop · /products/*
// Anti-gaming protection

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.

#

Unique code per winner.

Flip one toggle and every winner gets their own one-time code — your code as the prefix, e.g. SAVE20-K4M7Q2R8 — created in your Shopify store automatically and capped to a single use. Add a rolling expiry counted from each person's win, so a leaked or scraped code is already spent or expired before it can spread.

// FAQ

Spin-the-wheel questions, answered.

If something isn't here, ping team@getwoohoo.com — we answer in under an hour.

Does the wheel actually pay out the big prize?+
Whatever odds you set. The default ships with the big prize at 0.5% — about 1 in 200 spins. That is enough to make the prize feel real without giving away the store. You can dial it up to 5% or down to 0% per campaign.
What happens when someone clears their cookies and tries again?+
We fingerprint by browser, IP, and ESP-side email collision. Clearing cookies resets the front-end attempt counter, but the back-end will recognize the same visitor and quietly stop awarding the big prize.
Can winners just share the code they won?+
Turn on "unique code per winner" and they can't. Instead of everyone landing on the same shared code, each winner gets their own one-time code — your code as the prefix, e.g. SAVE20-K4M7Q2R8 — created in your Shopify store automatically and restricted to a single use per customer. Add a rolling expiry (say 24 hours from the moment each person won) and a leaked or scraped code is spent or expired before it can spread. You can still cap the total number of codes handed out.
Will the wheel slow down my site?+
No. The script loads asynchronously, is under 10KB gzipped, and renders the wheel client-side using SVG. Lighthouse scores stay green. We measure this in CI on every release.
Can I use the wheel on a non-Shopify site?+
Yes — WooHoo works on any site (Shopify, WooCommerce, BigCommerce, Magento, Wix, Squarespace, Webflow, custom).
Does the spin-wheel work on mobile?+
Better than desktop, actually. Mobile wheel CVR is 14.1% in our cohort vs 12.8% on desktop. The wheel needs to be at least 280px wide on mobile; iOS gets haptic feedback per slice tick, which adds ~11% to conversion.
Can I run the wheel only during BFCM?+
Yes. Every campaign has a calendar — set start and end dates, and it will go live and stop automatically. Most stores schedule BFCM campaigns in July and do not touch them again.
What's a good spin-to-win conversion rate?+
Published industry studies put spin-to-win popups around 9–13% of visitors converting, versus 2–4% for a static email popup. WooHoo's median is 13.2%, and well-tuned wheels on mobile run higher. If your wheel converts under 8%, check prize value, timing, and mobile layout first — those three move the number most.
// 5-min setup · all defaults · ready to ship

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.

14-day full Pro trial · 5-min setup · cancel anytime