The campaign editor is the one place you'll set up and keep tweaking your Birthday Club.
Email content, discount rules, send time, tagging, integrations… it all lives here. This guide walks you through the layout and what each section does, so you know exactly where to go when you need to change something.
Opening the editor
Open Apps → Happy Birthday → Your campaign, then click Edit your campaign. The editor opens in a modal that takes over the screen.
The three-pane layout
The editor is split into 3 sections:
Left pane - Campaign settings
Campaign level settings that control email content, discount display, send time, styling, terms and conditions and email sending information. The pane works for both the Birthday email and the follow-up email, just switch between them via the dropdown at the top.
Middle pane - Email live preview and additional info
A real-time render of Birthday email / follow-up email. As you change settings on the right, the preview updates so you can see what your customers will see.
Right pane - General settings
A stack of collapsible sections that control tagging, discount rules, Flow trigger settings, metafield settings and date format.
Click any section headings in the left or right panes to expand them; click again to collapse. Only one section opens at a time, and your changes are kept as you move around the editor.
At the top right of the editor you'll find a Save button which commits everything you've changed. The X icon will close the editor.
Closing without saving discards changes. The editor will warn you before this happens.
The live preview pane (middle pane)
The preview shows the Birthday email ( or follow-up email if selected) exactly as it will be rendered, with placeholder content for the information that varies per customer:
The discount code is a sample, the real email uses each customer's unique, one-time code.
The expiry date and minimum spend mirror what you've configured in the Discounts section in the General settings.
Any merge tags in the subject or body (e.g.
[first_name]) are shown with their fallback values so you can sanity-check the personalisation.
The preview is the fastest way to check that styling, banner image, and copy hang together before you save.
General settings (right pane)
The right-hand pane covers top-level preferences that apply across the whole app, not just the email.
Date format
This controls how the date input is laid out on every sign-up surface (the Checkout app block, the Birthday Sign-up Page, POS, and integrations). Choose from dd/mm/yyyy, mm/dd/yyyy, mm/dd, dd/mm, or yyyy/mm/dd. Picking a format without the year disables age cohort analytics on your dashboard. See Setting your birthday date format for the full picture.
Discounts
The discount code customers receive in their Birthday email. Two flavours:
Auto-generated discount code (recommended) - Happy Birthday creates a unique, one-time code for each customer in your Shopify discounts admin. Conversion tracking works out of the box and the code expires automatically.
Fixed discount code - you create a single code in Shopify and we send the same one to every customer. No conversion tracking, and the code can't be limited to one use per customer.
Inside the section you'll find amount, type (percentage or fixed), prefix, minimum spend, expiry in days, entitled products and collections, and combination rules. See Setting up your discount code for a walkthrough of every field.
Customer tagging
Push the customer's date of birth onto their Shopify customer record automatically, either as a customer tag (e.g. DOB: 14/03) or appended to the customer note, or both.
Shopify Flow triggers
Happy Birthday emits a Shopify Flow trigger (Captured customer birthday) every time a customer joins your Birthday Club.
From this section, you can enable the trigger and read about how to use it inside Shopify Flow to power your own automations... anything from Slack notifications to custom welcome flows.
Customer metafields
Store each customer's birthday in a Shopify customer metafield, so it's available to your theme, other apps, and any tools that can read Shopify customer data.
Toggle the option on, choose the namespace and key, and we'll write the birthday in your selected date format.
Campaign settings (left pane)
The left-hand pane covers everything to do with the Birthday email itself, what it looks like, what it says, when it goes out, and how the discount is delivered.
Choosing which email to edit
Right at the top of the left pane is a dropdown that lets you switch between:
Birthday email - the main email sent on or before each customer's birthday.
Follow-up email - an optional reminder sent a few days later if the discount hasn't been redeemed. See How to enable follow-up birthday emails.
Whichever you pick, the same set of sections (Setup, Send time, Content, and so on) appears below. You can configure both emails independently in the same place. The middle-pane preview updates to match.
Enabling and disabling the email
Just below the dropdown is an enable/disable toggle for the selected email. When the toggle is off, that email won't be sent. Useful for pausing the follow-up email without losing your settings, or for switching off Birthday email sending entirely if you've moved sending to an integration like Klaviyo or Brevo.
Setup
This is the email envelope... who the email is from, where replies go, and what's in the inbox subject line:
From Name - the sender name your customers see in their inbox e.g. your store name.
Reply-To Email - the address that customer replies are sent to. Use a real, monitored inbox so customers can reach you if they reply.
Subject - the email subject line. Supports merge tags (e.g.
[first_name]) so you can personalise the subject. See Personalising the Birthday Email for examples.
Send time
When the Birthday email goes out, relevant only if Happy Birthday is sending the email (i.e. you're not using Klaviyo, Mailchimp, Brevo, Omnisend, or another integration to send instead).
Days before birthday - defaults to 0 (the email lands on the customer's birthday). Increase to send ahead of time. Negative numbers don't work. There is no "send after the birthday" option.
Send time - defaults to 10:00 in your store's timezone. Change to suit your audience.
See Scheduling the Birthday email and Sending out Birthday emails ahead of time for context on what to pick.
Content
Everything that appears inside the email body, the heading, the message, and the banner image at the top.
Title
The big heading at the top of the email body (not to be confused with the inbox Subject, which lives under Setup).
This is the first thing the customer reads when they open the email — typically a short, punchy line like "A birthday surprise from us!" or "Happy Birthday, [first_name]!".
Content
The main body copy of the email. Use it to explain what the customer's getting, why you're sending it, and any context that makes the offer feel personal.
Merge Tags
Both the Title and Content fields support merge tags so you can drop the customer's first name, last name, or email into the copy:
[first_name][last_name][email]
You can set a fallback for each e.g. [first_name,fallback=there] so that the email reads naturally even when a customer's first name isn't on file.
See Personalising the Birthday Email for examples.
Banner
The image at the top of the email, typically your logo, a Happy Birthday graphic, or a combination of the two. PNG, JPG, and animated GIF all work.
Keep the image to 600 pixels wide (the email template's max width) for the sharpest result. Upload, preview, replace, or remove from this section.
See Styling the Birthday Email for sizing and design help.
Discount display
How the discount appears in the Birthday email and on your store:
Auto-apply - clicking the email button takes the customer to a landing page that adds the discount to their cart automatically. Only works with auto-generated codes.
Copy and paste - the email shows the code and the customer pastes it at checkout. Works with both auto-generated and fixed codes.
See Discount code options: auto-apply vs copy-and-paste for the trade-offs.
Styling
Brand-level controls for the email's look and feel:
Button Background Colour
Button Text Colour
Email Background Colour
Email Font colour
Email Text Alignment (Center / Left)
Email Text Size (Small / Medium / Large)
Use the colour picker or paste a hex value into each field.
See Styling the Birthday Email for the full list of fixed-style elements (font family, footer styling, main body background) that can't be changed from the editor.
Terms and conditions
Enter any additional terms you would like to appear at the bottom of the email.
Follow-up emails
An optional second email sent a few days after the original Birthday email, reminding the customer to use their discount before it expires. Only sent if the original discount hasn't been redeemed.
You can re-use the original email's content or write something different.
See How to enable follow-up birthday emails for the full set-up.
Saving your changes
Click Save at the top right when you're done. Changes are committed in one go.
The live preview is real-time, but nothing is actually saved until you click the button.
If you close the editor without saving, you'll see a warning so you don't lose settings by accident.
What's affected by your changes and what isn't
Most settings take effect immediately. A few have nuances worth knowing:
Date format - only changes the way the date is displayed in your sign-up forms going forward. Birthdays you've already collected are stored in a single internal format and aren't reformatted.
Discount settings - apply to discounts created from this point on. Discount codes already issued to customers (i.e. for emails already sent) keep their original discount terms.
Email content, styling, banner - apply to every email sent after you save. Emails already in flight aren't recalled or re-rendered.
Email sending schedule - applies to upcoming birthdays. Emails already scheduled for today won't be moved.
Tips for getting the most out of the editor
Preview every change. The left pane updates as you type, use it to catch typos, awkward line breaks, and colour clashes before you save.
Send yourself a test email. The preview is accurate, but rendering can vary slightly between email clients. See Can I preview or send a test email via the app? for how to do that.
Tweak iteratively. You can come back at any time, there's no "lock in" once you save. Most stores find their final styling and copy after one or two rounds of small adjustments.
What next?
Now that you know your way around the editor, dive into the deeper guides:
Need any help?
Please get in touch with support if you need any further assistance.




