What You Need
An email marketing platform (Klaviyo, Mailchimp, or Omnisend all support date-based automations), a way to collect birth dates (a signup form, a post-purchase survey, or a simple field in your customer account settings), and a discount code you are willing to give away once a year per customer.
That is it. No apps. No custom code. No monthly subscription to a loyalty platform.
Step 1: Add a Birthday Field to Your Signup Form
Go to your email marketing platform and add a custom date field called “Birthday” to your signup form. Make it optional. Most platforms already have a date field type built in.
In Klaviyo: Settings > Custom Fields > Add Field > Date.
In Mailchimp: Audience > Signup Forms > Form Builder > Add a field.
In Omnisend: Settings > Forms > Edit your form > Add field.
Set the field format to MM/DD so you do not collect the year. Some people are protective about their full birth date. A month and day is all you need.
If you already have a signup form live, add the birthday field and send a one-off email to your existing subscribers asking them to update their preferences. Most will not, but the ones who do are your most engaged subscribers.
Step 2: Create a Post-Purchase Birthday Collection
Your existing subscribers might never update their birthday. But new customers will give it to you if you ask at the right moment. The right moment is right after they buy, when they are happy and their guard is down.
Add a single question to your post-purchase thank-you page: “When is your birthday? We send a little gift every year.”
Use a tool like Typeform, Google Forms, or even a simple Klaviyo tracked link. The form should collect the email address (to match the customer) and the birthday in MM/DD format. Map the response back to your email platform’s custom field.
If you are on Shopify, you can also add a birthday field to your customer account registration page. This is the cleanest option because it saves directly to the customer profile.
Step 3: Build the Automation
This is the part that sounds technical but is actually a few clicks.
In Klaviyo:
- Go to Flows > Create Flow > Metric
- Select “Date-based” as the trigger
- Choose your “Birthday” custom field
- Set the timing to send on the birthday date at 9:00 AM
- Add one email: your birthday message with a unique discount code
In Mailchimp:
- Go to Automations > Create Automation
- Select “Date-based” trigger
- Choose your Birthday field
- Set to send on the date
- Design your email and add a promo code
In Omnisend:
- Go to Automations > New Workflow
- Select “Custom event” and choose birthday
- Set the trigger to fire on the birthday date
- Add your email with discount code
The email itself should be simple. One image, one headline, one discount code, one button. No paragraphs of copy. No product recommendations. A birthday gift should feel like a gift, not a sale.
Step 4: Generate Unique Discount Codes
Do not use a single shared code like HAPPYBIRTHDAY20. People share those on coupon sites and you lose control of who uses it.
Instead, use dynamic coupon generation if your platform supports it. Klaviyo and Omnisend both integrate with Shopify to generate unique codes per recipient. Mailchimp does this on paid plans.
If your platform does not support dynamic codes, create a batch of 100 unique codes (BIRTHDAY001, BIRTHDAY002, etc.) and set up your automation to cycle through them. This is less elegant but still prevents coupon site leakage.
Set the discount to something reasonable. 15 to 20 percent off or free shipping on any order. A birthday reward should feel generous enough to actually drive a purchase but not so deep that it kills your margin on a large order.
Step 5: Set a Reminder for Your Own Birthday
Here is the one manual step. Add a calendar reminder for yourself once a quarter to check the automation is still running. Email platforms occasionally pause automations after platform updates or billing changes.
Go in, confirm the flow is active, check that the last few birthdays triggered emails, and make sure the discount codes are still valid. Two minutes every three months.
What to Write in the Email
The birthday email is one of the few marketing emails where tone matters more than offer. Here is a template you can adapt:
Subject: Happy birthday from [Your Brand Name]
Body:
“Happy birthday. We hope your day is full of good things. To celebrate, here is a little gift from us. Use the code below for 20% off anything in the store, any time in the next 14 days. Your code: [UNIQUE_CODE]. No rush. No minimum spend. Just a thank you for being part of [Your Brand Name]. Enjoy your day.”
That is it. Short, warm, no pressure.
Common Mistakes to Avoid
Collecting the year. People are protective about their birth year. Only ask for month and day. You will get a higher completion rate.
Sending a generic birthday email. If the email looks like every other promotional email you send, the birthday angle is wasted. Keep it visually distinct. Use a different layout, a different tone, maybe even a different sender name.
Making the discount expire too quickly. A 24-hour expiry on a birthday code feels stressful, not generous. Give them at least a week, ideally two. People celebrate birthdays on different days.
Forgetting to exclude existing discount stackers. If your store allows discount codes to stack with other promotions, your birthday code could combine with a sale and destroy your margin. Set the code to be exclusive.
How to Know If It Is Working
Track three numbers:
- Delivery rate: Are the emails actually sending on the right dates?
- Open rate: Birthday emails should open at 40% or higher. If yours is lower, your subject line is too generic.
- Redemption rate: How many birthday codes get used? A 10 to 15 percent redemption rate is solid for a once-a-year touchpoint.
Check these numbers after 60 days. If delivery is working and opens are strong, the system is doing its job. If redemption is low, try increasing the discount or extending the expiry window.
The Bigger Picture
A birthday reward system is one of the highest-ROI automations you can build. It runs forever once set up. It makes customers feel remembered. And it drives revenue from people who were not planning to buy from you this month.
The stores that get this right are not the ones with the biggest loyalty platforms. They are the ones that asked for the date, sent a genuine message, and gave a real gift. You can do that in an afternoon.
Want more like this? Join MOKU Club for free. Weekly resources, early access to new guides, and occasional templates you can actually use. Join below.


