Christmas · Scratch the Card

A Christmas scratch card popup that opens like an advent calendar

An advent calendar is a small treat a day for twenty-four days, and a scratch card is the closest thing a website has to one. The shopper rubs the foil away with a finger or a cursor, our server decides what is underneath, and a win reveals a code once they leave an email. Set the frequency rule to once a day and the same card is back every morning from 1 to 24 December 2026. This page is the full setup: a prize table with odds you can copy, the copy for the four screens, the daily display rules, and what to read in the report on Christmas Eve.

  • Free plan, no credit card required
  • One card a day, 1 to 24 December
  • The prize under the foil is decided on the server
The ChilliPopup gamification catalog showing Spin the Wheel, Claw Machine, Scratch the Card and Slot Machine, each with a live preview
Scratch the Card in the dashboard's games catalog, beside the other three games. For Christmas you pick Champagne Noir or Paper Press as the card and rewrite the popup around it.
Why a scratch card in December

A discount is a transaction. A card under the foil is a treat.

December shoppers see a "15% off" banner on every store they visit. A card they scratch themselves, with something different under the foil each morning, is a reason to come back to yours, and each win asks for an email before the code appears.

A daily habit, from one rule

Frequency rules include once a day. Set it and every visitor gets one card per day for the whole schedule: the same campaign, the same prize table, a fresh roll on the server each morning. There is nothing to publish daily and nothing to switch over at midnight.

Prizes a gift shopper actually wants

In December the prizes that move people are not all percentages. Free gift wrap and free express shipping cost you a fixed amount, matter more with every day the shipping cut-off gets closer, and read as a gift rather than a discount. You set how often each one is under the foil.

A reveal nobody can peek at

The moment the first stroke lands on the foil, the browser asks our server for the outcome. The server rolls against your odds, records the play and answers; the panel under the foil stays blank until that answer arrives, and the code travels only inside a win. A fully scratched card still waits for the server.

The prize table

An advent prize table you can copy

Five prizes and a leftover. Type the labels, codes and chances into the Prizes panel exactly like this; the same table serves every card for twenty-four days.

Under the foilReward codeWin chanceWhy it is there
10% offADVENT1040%The everyday treat. Most cards reveal it, and each one arrives with an email.
Free gift wrapADVENTWRAP20%Costs pennies, saves the shopper a job in December, and reads as a gift rather than a discount.
Free express shippingADVENTEXPRESS15%A fixed cost to you, and the prize that matters more each day the cut-off gets closer.
20% offADVENT2010%The good day. Rare enough to protect margin across twenty-four days of cards.
40% off one itemADVENT403%The one people tell a friend about. Three cards in a hundred; a single-item limit on the code caps what each one costs.
Nothing todaynone12% (leftover)The share your prizes leave short of 100%. The panel reveals the theme's losing label and the Losing screen follows. "Come back tomorrow" is the whole point of a daily card.

Read across the table and the arithmetic is plain: with these odds, every hundred cards reveal roughly forty 10% codes, twenty gift-wrap codes, fifteen express-shipping codes, ten 20% codes and three 40% codes, and twelve shoppers read the losing label and are told to come back tomorrow. A shopper who scratches on all twenty-four days wins on about twenty-one of them, so the once-a-day rule is doing the rationing, not the odds. Change any percentage and the editor shows the new chance of not winning as you type.

The ChilliPopup wheel editor: a Prizes panel with 50% OFF at 50% chance, 25% OFF at 25% and Free shipping at 10%, an equal-chances toggle, a Chance of not winning: 15% readout, and the Play, Post-Play, Winning and Losing tabs above the wheel preview
The Prizes panel, shown here on a wheel. A scratch card uses the same panel: a label, a reward code and a win chance per prize, and the chance of not winning computed for you.
  • Create the codes in your store first: Shopify Discounts, WooCommerce Marketing → Coupons, or Wix Marketing → Coupons. Set each to expire on 24 December, and set the gift-wrap and express-shipping codes up however your checkout handles those two.
  • ChilliPopup never creates or applies codes: it reveals the code you pasted, and only inside a winning result. The card configuration that reaches the browser has every code stripped out.
  • Want a card that always wins? Raise the chances until they total 100%, or switch on "Give all prizes equal chances". Every card then reveals a prize; for an advent treat that is a defensible choice, since the daily cap already limits what one shopper can collect.
  • Repeat winners are expected. A shopper who scratches daily will win several times over the month, and each claim is a separate line in the claims table with its day, prize and code. Price the small prizes for that, and keep the 40% one rare.
Copy for the four screens

What each screen says

A scratch card has four screens: Play, Post-Play, Winning and Losing. Each is its own canvas in the editor. Write {{prize_label}} and {{prize_code}} anywhere in the Post-Play or Winning copy and the prize the card revealed fills them in. Write the copy so it is true on every one of the twenty-four days.

Play

Today's advent card

Headline: Scratch today's card.

Sub-line: One card a day until Christmas Eve. Rub the foil to see what is under it.

The foil carries its own printed label from the theme (Champagne Noir reads "an exclusive Gift.", Paper Press "scratch to read"), so the headline does the seasonal work and the foil does the inviting. The reveal completes once 55% of the foil is cleared.

Post-Play

You uncovered {{prize_label}}

Headline: Under today's foil: {{prize_label}}.

Sub-line: Leave your email and the code appears right here. It is valid until 24 December.

One email field and one button. This screen appears only after a win, so a losing card never asks for anything.

Winning

Your code is {{prize_code}}

Headline: {{prize_code}} gets you {{prize_label}}.

Sub-line: Order by 20 December for delivery before Christmas. Tomorrow's card is waiting.

Confetti is on by default here. Swap 20 December for your own last shipping date, and add a "Shop gifts" button pointing at your gift guide.

Losing

Nothing under today's foil

Headline: Not today. Tomorrow's card is a fresh one.

Sub-line: The gift guides are open, and orders placed by 20 December arrive before Christmas.

The panel shows the theme's losing label first, then this screen. With a once-a-day rule the promise is real: tomorrow the card is scratchable again, and a loser today is a visitor tomorrow.

Display rules

Rules for twenty-four daily cards

A scratch card carries the same display rules as every ChilliPopup popup: six triggers, targeting, frequency caps and a schedule. One of those rules does most of the work here.

  • Frequency: once a day. This is the rule that makes it an advent calendar: every visitor gets one card per day, and the same card is back the next morning. Leave "hide from visitors who already claimed" off, or yesterday's winners lose today's card.
  • Schedule: start Tuesday 1 December 2026 at 00:00, end Thursday 24 December at 23:59, in your time zone. Add an hour window from 07:00 if you would rather the day's card arrives with the morning coffee than at one minute past midnight.
  • Trigger: a time delay of about six seconds on the page, so the card reads as a daily greeting rather than an ambush. Exit intent fires at the wrong moment for a treat; leave it off.
  • Pages: one page-URL rule, doesn't contain /checkout, keeps it off the checkout; the home page, collection pages and gift guides all keep it. Page rules are any-match: a campaign shows wherever at least one of its page rules is true, so use either contains rules for the pages you want or a single doesn't-contain rule, never both.
  • Devices: both. The foil responds to touch as well as mouse and pen, the page stops scrolling while a finger is on the card, and the brush size scales with the card, so a phone is as good a place to scratch as a desktop.
Display rules
🔁
FrequencyOnce a day
📅
Schedule1 Dec 00:00 → 24 Dec 23:59
🕖
HoursFrom 07:00 to 23:59 each day
Time delayAfter 6 seconds on page
🔗
Page URLDoesn't contain /checkout
🎁
Already claimedOff, so yesterday's winner plays today
How it works

Codes, card, rules: three steps

A scratch card is a popup with a game surface on its Play step. If you have built a ChilliPopup popup before, you already know the editor.

1

Create the codes in your store

Make one code per prize (ADVENT10, ADVENTWRAP, ADVENTEXPRESS, ADVENT20, ADVENT40) in Shopify, WooCommerce, Wix or whatever runs your checkout. Set each to expire on 24 December, and give ADVENT40 a single-item limit.

2

Build the card

Pick Champagne Noir or Paper Press, type the prize table into the Prizes panel, write the four screens so they read true every day, and restyle the popup around the card. Every block is drag-and-drop, and your own fonts are welcome.

3

Set the rules and publish

Set the frequency to once a day, enter the 1 to 24 December schedule, the trigger and the page rules above, then publish. If the ChilliPopup pixel is already on your site there is nothing else to install: the first card opens on 1 December on its own.

Design

Pick the card you want to see every morning

There is no dedicated Christmas template. Each scratch card theme is a complete card, and the parts of it that make it a card (the foil colour and its printed label, the reveal panel colours, the losing label, the card's geometry and the 55% reveal threshold) come with the theme and are not settings fields today. Choose the card first; everything around it is yours.

  • Start from Champagne Noir for a near-black card with a gold foil that already reads "an exclusive Gift." in serif type: the natural pick for a gift retailer. Start from Paper Press for a cream newsprint card with an ink foil and a newspaper masthead, which suits a daily bulletin.
  • Restyle the popup around it: background colour, gradient or image, default font and text colour, size, position, corner radius, shadow and overlay opacity are all yours. A deep green or burgundy behind Champagne Noir's gold reads as December without a single snowflake; leave Paper Press on its cream.
  • Write a headline that is true every day: "Today's advent card" needs no maintenance, while "Day 12 of 24" is a text block someone has to edit each morning. Put the cut-off date and the top prize in the sub-line instead.
  • Give the Winning screen its own look: Post-Play, Winning and Losing inherit the Play look by default; switch inheritance off on the Winning screen and give it a brighter background, image, font or text colour so the code reveal feels like opening the little door.
  • Test one variable at a time: one click adds a Variant B with the split you choose; assignment is sticky, so a visitor sees the same card all month, and the results are compared side by side with a confidence indicator. Try Champagne Noir against Paper Press, or this table against one where gift wrap is the everyday prize.
The ChilliPopup theme picker for a game: the Choose a theme header reading 6 hand-tuned directions, and below it the recommended theme card with a live phone preview
The theme picker: a recommended pick first, then the grid of the rest, each a live preview. Shown here for the Claw Machine; Scratch the Card opens onto its own six, Champagne Noir and Paper Press among them.
Christmas Eve

What to read when the last card is scratched

A scratch card gets two reports: the popup report every ChilliPopup campaign has, and a game report built from the server's own record of each card.

  • Opens by day: the popup report breaks opens, unique views, clicks, closes and submissions down by day and by device, so you can see whether the daily habit formed, whether the weekends dipped, and which days the card was left unscratched.
  • Plays by outcome: the win-versus-lose split of every card, straight from the server's records. With the table above it should sit near eighty-eight wins in a hundred.
  • Claimed wins by prize: whether gift wrap and express shipping were claimed as eagerly as the percentages, which tells you what to put under the foil next year.
  • The claims table: each claimed win with the winner's email, prize, code, device and time, one line per claim. It lives in your dashboard; ChilliPopup does not send emails and has no Mailchimp, Klaviyo, HubSpot, Zapier or CSV export connector today.
  • Redemptions are counted where the codes live, in your store's discount report. Matching them to the claims table tells you what twenty-four days of cards cost and what they brought in.
The ChilliPopup Popup Analytics dashboard: opens, unique views, clicks, submissions, conversion rate and field inputs over a date range, with an interaction chart
The popup report every scratch card gets, with the interaction chart that shows the daily rhythm. The game report adds plays, wins, losses and claimed wins by prize, and the winners table.
From the blog

Guides for the month the card comes back every morning

Christmas Popup Ideas

Campaign ideas for the whole of December, from gift guides and shipping cut-offs to the last-minute week, with the popup that fits each one.

Read the guide →

Scratch Card Popups: The Gamified Ask That Converts

The psychology of the foil, how to build the prize table and its odds, the display rules that fit, and the copy that gets the card scratched.

Read the guide →

Popup Frequency, Explained

How often a popup should come back, once a day, per session or per visit, and how frequency caps change what a campaign asks of a returning visitor.

Read the guide →
Good to know

Christmas scratch cards, answered

Can a shopper scratch a new card every day?
Yes, and that is the setting that turns the card into an advent calendar. Set the frequency rule to once a day and each visitor gets one card per day between 1 and 24 December 2026; the same campaign is back the next morning with a fresh roll. Leave the "hide from visitors who already claimed" switch off, or yesterday's winners are shut out of today's card.
Can the prize change from day to day?
Not inside one card: the prize table is the same for the whole campaign, and what changes each day is the roll. If you want different prizes in different weeks, duplicate the card, give each copy its own prize table and its own start and end dates, and the copies take turns without overlapping.
What does a losing card look like?
The visitor scratches as usual, the panel under the foil shows the theme's losing label instead of a prize, and the Losing screen follows once 55% of the foil is cleared. That happens for whatever share your prizes leave short of 100%, and for any prize you flag as a Losing option, which keeps its label but never carries a code. On a daily card the Losing screen has an honest line to offer: come back tomorrow.
Is there a Christmas scratch card template?
Not a dedicated one. The six scratch card themes are the starting points, and Champagne Noir (near-black, gold foil) and Paper Press (cream newsprint, ink foil) are the two that already suit December. The foil colour, its printed label, the reveal panel colours and the losing label come with the theme and are not settings today, so pick the card you want; the headline, blocks, background, fonts and the four screens around it are yours to rewrite. ChilliPopup's AI drafts popups, forms, surveys and quizzes from a sentence, but the prize games start from their themes rather than from a prompt.
Where do the emails from 24 days of cards end up?
In your dashboard. The game report lists every claimed win with the email, prize, code, device and time, so a shopper who wins on several days appears once per claim. ChilliPopup does not send emails or SMS, has no Mailchimp, Klaviyo, HubSpot or Zapier connectors and no CSV export today; you read and copy the list from the dashboard.
What does a Christmas scratch card cost to run?
The Free plan covers it: $0 per month, forever, with no credit card and no time limit, including all four prize games, the full editor, A/B testing and analytics for 1,000 visitors a month on one domain. Pro is $29 per month and Business $79 per month, each with a 14-day free trial. A small "Powered by ChilliPopup" badge shows on the card on every plan. See the plans →

Twenty-four cards, one campaign

Pick the card, type in the prize table, write the four screens, set 1 to 24 December and once a day, and publish. Every morning the foil is back, every roll happens on our server, and every code comes with an email.