About This Article
"I want to send birthday emails automatically every year" "I want it to deliver automatically in subsequent years after initial setup"
Using HubSpot's "Based on a schedule" trigger and re-enrollment settings, you can build workflows that automatically deliver birthday emails annually.
How Annual Workflows Work
Based on a schedule Trigger
HubSpot uses "Based on a schedule" triggers for date property-based workflows.
Annual Setting Behavior:
- Executes annually based on the day and month of the birthday property
- Year portion is ignored (June 15, 1990 → executes every June 15)
| Setting | Value | Description |
|---|---|---|
| Frequency | Annually | Execute same day every year |
| Date property | Birthday (custom) | Reference date |
| Time | 10 AM etc. | Delivery time |
| Additional filters | Email deliverable etc. | Target filtering |
Re-enrollment Settings
By default, contacts only enroll in workflows once. For annual delivery, HubSpot handles annual re-enrollment automatically with the "Annually" schedule setting.
Setup Steps
1. Create Workflow
- Automation → Workflows → Create workflow
- Select "Contact-based"
- Select "Start from scratch"
2. Configure Trigger
- Click "Set enrollment trigger"
- Select "Based on a schedule"
- Configure:
| Item | Setting |
|---|---|
| Frequency | Annually |
| Date property | Birthday (custom property) |
| Time | Morning / Daytime / Night or specific time |
| Timezone | Contact's timezone or fixed |
3. Set Additional Filters
Target only contacts with birthdays set and email deliverable.
Filter conditions:
- Birthday property: is known
- Email delivery status: deliverable
- Bounced email: none
4. Add Actions
- Click "Add action"
- Select "Send email"
- Select birthday email template
5. Activate Workflow
- Click "Review and publish"
- Verify settings
- Click "Turn on"
Advanced Configuration
Delivery Day Adjustment
To send a few days before the birthday, use delays.
Annual execution starts on birthday property
Use "Delay until date" for 3 days prior
"Your birthday is coming up" email
Multi-Stage Birthday Campaign
Annual execution
Main email on the day
End if already used
"Your coupon expires soon"
Troubleshooting
Workflow Not Executing
Check:
- Is workflow "Active"?
- Is birthday property "Date picker" type?
- Does contact meet filter conditions?
- Is email delivery status "Deliverable"?
Sent Multiple Times to Same Person
Check:
- Are multiple workflows running for same purpose?
- Are re-enrollment settings as intended?
Best Practices
1. Optimize Delivery Time
Send when recipients are likely to open.
Recommended:
- BtoC: 10 AM-12 PM or 6 PM-8 PM
- Consider contact's timezone
2. Mobile Optimization
Birthday emails are often opened on smartphones - optimize for mobile display.
3. Personalization
Use name and purchase history for personalized messages.
Summary
- Use Based on a schedule: Annual execution based on date property
- Date picker type property: Required for workflow triggers
- Filter to target audience: Only email-deliverable contacts
- Set exclusion conditions: Prevent unnecessary delivery
- Test before launch: Verify operation before production
Once configured, annual birthday workflows enable efficient customer communication with automatic delivery every year.