Summarize this documentation using AI
Overview
Send messages in users' time zones in Customer.io is how you stop blasting everyone at the same moment and start landing in inboxes when customers are actually likely to buy. For D2C, this is especially valuable for cart recovery, replenishment, and winback where timing matters as much as the offer.
Example: a shopper in Los Angeles abandons checkout at 9:30pm, while a shopper in New York abandons at the same time. If you send a “Still thinking it over?” SMS at 8:00am local time, both customers get a morning nudge, not a middle-of-the-night interruption.
Propel helps teams operationalize time zone sending across complex flows, so you can scale without breaking attribution or deliverability (if you want help, book a strategy call). Learn more about Customer.io.
How It Works
Send messages in users' time zones in Customer.io works by using each person’s stored time zone to schedule message delivery relative to their local clock, rather than your workspace time.
At a practical level, you need two things:
- A reliable time zone value on the customer profile (either explicitly set, or inferred from geolocation data depending on your setup).
- A campaign or workflow step that schedules delivery using the person’s time zone (often paired with time windows like “only send 8am to 8pm local”).
In high-volume D2C programs, this becomes a control layer. You can run one global cart flow, but still deliver messages at the right local time, and avoid late-night SMS that drives opt-outs. If you are running orchestrated email plus SMS, you can also keep channel order consistent (email first in the morning, SMS later in the afternoon) across regions. Implementation details vary by setup, but the core mechanics are supported directly in Customer.io.
Step-by-Step Setup
Send messages in users' time zones in Customer.io is straightforward once your profile data is clean and you decide where you want local-time control (cart, post-purchase, winback, or all of the above).
- Confirm you have a time zone per person. Audit a sample of customer profiles and verify the time zone field is present and populated for most active customers.
- Decide your source of truth. Choose whether time zone is set from shipping/billing country and state logic, from device/app data, or from Customer.io geolocation capture (do not mix sources without a rule for precedence).
- Standardize the format. Ensure your time zone values follow a supported format (for example, IANA time zones like America/Los_Angeles). Consistency matters more than perfection.
- Backfill where possible. For existing customers, backfill time zones using last known shipping address region, last known IP-based location, or a data warehouse enrichment.
- Add time windows to sensitive channels. For SMS and push, set a local-time send window (example: 9am to 8pm) to reduce opt-outs and complaints.
- Apply local-time scheduling in key automations. Update cart abandonment, browse abandonment, post-purchase review requests, replenishment, and winback to send in the customer’s time zone.
- Set a fallback plan. If time zone is missing, decide whether to send in workspace time, delay until daytime, or route to email only.
- QA with test profiles across time zones. Create internal test profiles with different time zones and verify the same journey sends at different real-world times.
When Should You Use This Feature
Send messages in users' time zones in Customer.io pays off when your conversion rate is sensitive to timing, which is most D2C revenue moments.
- Cart recovery at scale: If you sell across multiple US time zones (or globally), local-time sends prevent the “3am cart reminder” that tanks SMS performance and increases opt-outs.
- Product drops and limited inventory: For launch emails, you can still coordinate a global moment, but follow-ups (waitlist reminders, “back in stock” nudges) perform better in local daytime.
- Post-purchase education and cross-sell: “How to use it” content and accessories recommendations tend to get more engagement when they hit during daytime browsing hours.
- Reactivation and winback: Customers who have not purchased in 60 to 180 days respond better to messages that arrive when they are likely to be scrolling, not sleeping.
Operational Considerations
Send messages in users' time zones in Customer.io works best when your data flow and orchestration rules are explicit, otherwise you end up with inconsistent delivery timing and misleading test results.
- Segmentation depends on data hygiene: If 20 to 40 percent of profiles have missing or invalid time zones, your “local-time” program becomes two different programs. Track coverage as a KPI.
- Time zone can change: Mobile shoppers travel. If you update time zone from device/IP too aggressively, you can create confusing behavior (a customer gets messages at different times week to week). Pick a stable rule, often shipping region for email, device for push.
- Holdout tests need time alignment: If your control group sends immediately but your treatment group waits for a local window, you are testing timing plus message. Keep the comparison fair.
- Revenue attribution windows shift: Local-time delays can push conversions into a different day. Align reporting to “hours since send” and not just calendar date.
Implementation Checklist
Send messages in users' time zones in Customer.io is easiest to roll out when you treat it like a data and governance project, not just a toggle.
- Time zone field exists on the person profile and is consistently formatted
- Coverage benchmarked (percent of active customers with a valid time zone)
- Documented source of truth and update rules (shipping-based, device-based, IP-based)
- Fallback behavior defined for missing time zone
- Local-time send windows set for SMS and push
- Cart, browse, post-purchase, replenishment, and winback flows updated
- QA plan includes test profiles across at least 3 time zones
- Reporting adjusted to account for scheduled delays
Expert Implementation Tips
Send messages in users' time zones in Customer.io becomes a real revenue lever when you pair it with intent signals and channel strategy, not just blanket scheduling.
- Use “next best local window” for carts created late at night: In retention programs we’ve implemented for D2C brands, a common pattern is to send email immediately (quiet channel), then schedule SMS for the next local morning. This protects SMS list health while keeping recovery fast.
- Split timing by product category: Consumables often convert well with morning replenishment nudges, while fashion and impulse categories can spike in the evening. Use time zone sending plus send-time testing by category.
- Keep post-purchase messages human: Schedule “How did it go?” and review requests for local early evening when customers are more likely to have opened the package, especially for beauty and home goods.
Common Mistakes to Avoid
Send messages in users' time zones in Customer.io can backfire when teams apply it without thinking through edge cases.
- Relying on a messy time zone field: Invalid values lead to unpredictable sends. Clean and standardize before rollout.
- Changing time zone too frequently: If you overwrite time zone on every session, customers who travel may get messages at odd hours. Stabilize with a precedence rule.
- Forgetting about global promotions: Some campaigns should land at the same moment (example: “drop is live”). Use time zone sending for follow-ups, not necessarily the launch trigger.
- Testing without controlling for delay: If Variant A sends now and Variant B sends at 9am local, you are testing two variables. Design experiments so timing is consistent.
Summary
Use time zone sending when you care about purchase intent and list health, especially for cart recovery, post-purchase, and winback. It improves engagement by meeting customers when they are awake and ready to buy, while reducing complaints and opt-outs in Customer.io.
Implement with Propel
If you want time zone sending to work reliably across email, SMS, and push, Propel can help you design the data rules and update your Customer.io flows quickly. book a strategy call.