Engagement

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.

Quick answers
How does the system know a client's birthday?
From the 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?
A few possibilities: birthdays are turned off workspace-wide; the client has no date_of_birth set; the per-client birthday-email toggle is off; the client unsubscribed (either on their client record or on your Subscribers list); or one was already sent this year. The Birthdays page lists everyone with upcoming birthdays — if someone's missing from the list, their date of birth probably isn't set.
Can I customize the message?
Yes, two ways. Workspace-wide: edit the default subject and body on this page (applies to everyone). Per-client: open the client and set a custom message — overrides the default just for them.
SMS birthdays — how do I enable?
SMS sending must be configured in Integrations (Twilio). Then turn on the SMS toggle on this page, and the per-client SMS toggle. SMS goes only to clients with a phone number, opted-in for SMS, and not on a landline.

Settings (workspace-wide)

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.