Marketing. Scenarios. Birthday Scenario Triggers
This article describes how to configure marketing scenarios based on the customer's birthday in the Dots admin panel.
Birthday triggers are a type of scenario triggers that allow you to automatically launch marketing scenarios based on the customer's date of birth. They belong to the "User" trigger group.
Two birthday triggers are available:
- User: Birthday - the scenario will be triggered on the exact day of the customer's birthday.
- User: 30 days before birthday - the scenario will be triggered 30 days before the customer's birthday.

You can create a scenario that sends a personalized push notification with a discount coupon on the customer's birthday or send a promo message 30 days before the birthday to engage the customer in advance.
For birthday triggers to work, the following conditions must be met:
● The customer must have a date of birth set in their profile
● The customer must be active (not blocked and not deactivated)
● The scenario must have the status "Active"
The system checks birthdays once a day at midnight (00:00). Only the day and month are compared — the year of birth does not matter.
If the customer does not have a date of birth specified in their profile, birthday scenarios will not be triggered for them. Make sure that the registration process encourages customers to provide their date of birth.
How to create a birthday scenario:
- In the Control Panel, select the Marketing section
- Go to the Scenarios tab = Create
- Fill in the Name field - the name of the scenario.
- In the Status field, set the Status to “Active” if you want the scenario to start working immediately, or “Inactive” to configure it first and activate it later.
- In the Trigger dropdown list, select one of the birthday triggers:
- User: Birthday — triggered on the customer's birthday
- User: 30 days before birthday — triggered 30 days before the birthday
| Important:
When you select a birthday trigger, the Limit trigger switch is not displayed in the form. This is expected behavior — birthday triggers are not related to orders, so order-based restrictions do not apply.
- (Optional) Configure a Delay if you want the scenario to wait before execution after the trigger is fired.
You can add a delay between the trigger firing and the scenario execution. For example:
- Trigger “User: Birthday” with a 2-hour delay — sends a greeting at 2:00 AM instead of midnight.
- Trigger “User: 30 days before birthday” without delay — sends an offer immediately at midnight, 30 days before the birthday.
The delay is configured using the Delay period (minutes, hours, days) and Delay value fields in the scenario form.
- (Optional) Enable Execute only once per user if you want the scenario to be triggered only on the first birthday after creation, and not every year.
This option is especially important for birthday triggers. Here is how it works:
- Enabled: The scenario will be triggered only once for each customer. For example, if the scenario was triggered on the customer's birthday in 2026, it will NOT be triggered again on their birthday in 2027.
- Disabled: The scenario will be triggered every year on the customer's birthday (or 30 days before it) as long as the scenario remains active.
For most birthday promotions (annual discounts, greetings), leave this option disabled so the scenario repeats every year. Enable it only if you want a one-time birthday offer that will never repeat.
- (Optional) Configure Cancellation Policy and Conditions for Success as needed.
- Save the scenario settings and go to the "Actions" tab to configure what happens when the scenario is triggered.
Configuring "Actions"
When the trigger User: Birthday” with a 2-hour delay or User: 30 days before birthday” without delay is triggered, you can configure the following actions:

- Generate promo code - generates a unique promo code for the user based on the selected campaign. The code can be included in the message text.
- Send message:
- Send Push notification - sends a push notification to the user's device. You can set the title, message text, and the app screen for navigation.
- Send SMS - Sends an SMS message to the user's phone number.
When writing the text of a push notification or SMS, you can use placeholders that are automatically replaced with user data:
{ userName } = user name
{ userPhone } = user phone number
{ promoCode } = generated promo code (available only when the "Generate promo code" action is enabled)
| Please note: Placeholders related to orders (such as { orderNumber }, { companyName }) will be empty for "Birthday" scenarios, since the order is not associated with this trigger, so it is not relevant to add them to the message text.
- Accrue cashback - adds a cashback amount to the user's balance.
Scenario examples:
Example №1. Push notification with a birthday discount
Setting | Value |
|---|---|
Name | 15% birthday discount |
Status | Active |
Trigger | User: Birthday |
Delay | None (triggered at midnight) |
One time per user | Disabled (triggered every year) |
Action | Send push notification with a birthday discount code |
Example №2: Early birthday reminder
Setting | Value |
|---|---|
Name | Birthday offer |
Status | Active |
Trigger | User: 30 days before birthday |
Delay | None |
One time per user | Disabled (triggered every year) |
Action | Send push notification with a special offer |
Example №3: One-time birthday greeting
Setting | Value |
|---|---|
Name | First birthday bonus |
Status | Active |
Trigger | User: Birthday |
Delay | None |
One time per user | Enabled (triggered only once) |
Action | Send a special bonus offer for the first birthday |
The scenario did not trigger for the customer on their birthday.
Possible reasons:
- The customer does not have a date of birth specified in their profile.
- The customer is inactive (blocked or deactivated).
- The scenario status is set to “Inactive”.
- Execute only once per user is enabled, and the scenario has already been triggered for this customer before.
I do not see the “Limit trigger” switch when selecting a birthday trigger.
This is expected behavior. The “Limit trigger” option (delivery type, order source, price range) appears only for triggers related to orders. Birthday triggers are not related to orders, so these restrictions do not apply.
Can both birthday triggers be used at the same time?
Yes. You can create two separate scenarios — one with the “User: Birthday” trigger and another with the “User: 30 days before birthday” trigger. They work independently.
What time does the trigger fire?
Birthday triggers are processed daily at midnight (00:00). You can use the Delay settings to adjust the execution time if needed.
Does the trigger work for customers born on February 29 (leap year)?
In non-leap years, the system may not find an exact match for February 29. In leap years, everything works normally. This is a known limitation.
Link to this article: here
Updated on: 29/03/2026
Thank you!
