Sendblue Guide: Setting Up Timed Reminders with Appointment Variables
Last updated: March 19, 2026
Overview
Sendblue workflows can send automated reminders relative to an appointment time — for example, "1 hour before" or "24 hours before" a scheduled event. This guide covers how to format your appointment data so that these timed steps work correctly.
───
How It Works
When you create a "Delay Until" step in the Sendblue workflow builder and set it to trigger relative to an appointment time (e.g., {{event_start_time}}), the system reads the date and time from that variable to calculate when to send your message.
For this to work correctly, the appointment time must include timezone information.
───
Why Timezone Matters
If your appointment data looks like this:
Thursday, March 19, 2026 2:30 PM
The system has no way to know if that's 2:30 PM Eastern, Pacific, or any other timezone — so it defaults to UTC (Greenwich Mean Time). This means a "1 hour before" reminder for a 2:30 PM Eastern appointment would actually fire at 9:30 AM Eastern instead of 1:30 PM.
───
Recommended Format
The most reliable format is ISO 8601 with a timezone offset:
2026-03-19T14:30:00-04:00
This tells the system: "March 19, 2026 at 2:30 PM, Eastern Daylight Time (UTC-4)."
Other accepted formats:
• 2026-03-19T18:30:00Z — if your system already converts to UTC
• March 19, 2026 2:30 PM EDT — works, but the ISO format above is more reliable across all integrations
───
How to Check Your Setup
1. Create a test booking through your scheduling tool (GHL, Calendly, etc.)
2. Check the contact record in Sendblue and look at the value stored in your appointment time variable
3. Look for a timezone indicator — you should see something like -04:00, -05:00, EDT, Z, etc.
4. If you only see a date and time with no timezone (e.g., Thursday, March 19, 2026 2:30 PM), the format needs to be updated
───
Fixing the Format
The fix depends on where your appointment data comes from:
• GoHighLevel (GHL): Check your workflow mapping. GHL webhook payloads typically include timezone offsets — make sure the full timestamp (including the offset) is being passed to the Sendblue custom variable, not just the human-readable date string.
• Calendly: Calendly sends ISO 8601 by default in API responses.
Verify that the integration is mapping the full timestamp.
• Custom API integration: When setting the variable via the Sendblue API, format the value as YYYY-MM-DDTHH:mm:ss±HH:MM (e.g., 2026-03-19T14:30:00-04:00).
• If you can't change the format: As an alternative, you can set the contact_timezone field on each contact (e.g., America/New_York). This allows the system to correctly interpret times that don't include explicit timezone data.
───
Quick Reference
| ✅ This will work | ❌ This will cause issues |
| -------------------------- | -------------------------------- |
| 2026-03-19T14:30:00-04:00 | Thursday, March 19, 2026 2:30 PM |
| 2026-03-19T18:30:00Z | 2026-03-19 (no time) |
| March 19, 2026 2:30 PM EDT | 2:30 PM (no date or timezone) |
───
Need Help?
If you're not sure whether your appointment data
is formatted correctly, reach out to your Sendblue CSM and we'll take a look at your setup.