Birthdays
Automatic birthday emails and (optionally) SMS for every client on their birthday. Runs hourly in the background. Tracks who's been sent in a given year so duplicates can't happen.
How does the system know a client's birthday?
date_of_birth field on the client record. You can set it on the detail page (Identity & Profile section) or include it in your CSV imports as date_of_birth, dob, birth_date, or birthday.Why didn't a client get their birthday email?
Can I customize the message?
SMS birthdays — how do I enable?
Settings (workspace-wide)
- Birthdays enabled — master switch. Off = nothing sends.
- Default email subject + body — used for anyone without a per-client override.
- SMS enabled — separate switch for the SMS channel. Only visible when Twilio is configured.
- Default SMS body — text-only message used as default.
Per-client controls
Each client has individual toggles for email and SMS birthdays plus optional custom message overrides. Use these for VIPs (custom personal message) or for clients who specifically don't want birthday outreach (toggles off).
Unsubscribes are honored
A birthday email is marketing mail, so it follows your Subscribers list. If the client's email address has a subscriber record that is inactive or unsubscribed, no birthday email goes out, even when the client's own birthday toggle is on. Clients with no subscriber record at all still get the email. The SMS side only checks the client's SMS opt-out.
Dedup
When a birthday message goes out, the system records the send for that client and that year. If the cron runs again the same day, the send is skipped — no duplicates. The dedup is per-channel: email and SMS track separately.
Upcoming birthdays list
The page shows clients with birthdays in the next 30 days, plus a send-history view for retrospect. Useful when you want to know who's about to get a message so you can follow up personally.