Campaign Scheduling and Timezone Optimization in AcelleMail

When you send a campaign at "9am" — whose 9am? Yours, your subscribers'? AcelleMail's scheduler defaults to your account timezone. This guide walks the UI + timezone-aware patterns + send-time optimization.

The scheduling decision

When you launch a campaign, you pick one of:

Option Use when
Send now Immediate transactional (welcome, password reset); first test campaigns
Schedule for later All marketing campaigns; coordinate with business events
Send by subscriber timezone Global audience; want everyone to receive at the same LOCAL time

AcelleMail's scheduler defaults to the account-wide timezone. Subscriber-local timezones require per-subscriber timezone tagging.

The scheduling UI

Step 1: Open the schedule step

In the campaign builder, after completing setup + template, you reach the Schedule step:

Schedule step — send-now toggle

By default, "Send now" is selected. Toggle to "Schedule for later" to set a specific date+time.

Step 2: Pick the schedule time

Schedule later — date + time picker

Pick the date + time. The picker uses your account timezone (visible in the field label).

Step 3: Confirm the timezone

Settings → Account → Timezone:

Account timezone setting

This is what AcelleMail uses for all schedule calculations + display. Change it once when your account is created; rarely after.

Best practices for send time

Default rule: weekday mid-morning, recipient timezone

For most B2C and B2B audiences, the consistent winner is:

  • Weekday: Tuesday / Wednesday / Thursday (avoid Monday + Friday)
  • Time: 9:30am - 11:00am in recipient's timezone
  • Avoid: weekends, early morning (<7am), late afternoon (>4pm), midnight

For a US-East-Coast-dominant audience using account timezone of America/New_York:

Tuesday 09:30 ET
Tuesday 10:00 ET
Wednesday 10:00 ET
Thursday 09:30 ET

These windows hit recipients when they're starting their work day — open rates peak.

When to break the rule

Audience Better time
News junkies (financial, sports) Earlier — 6:30am ET catches morning commute
B2B SaaS / tech Tuesday 10am OR Friday 2pm (weekly wrap-up)
E-commerce promotions Saturday 9am for weekend shoppers
College students Sunday evening (homework time)
International (no clear majority) Multiple send waves per timezone band

Multi-timezone audience

If your audience is split US + EU + APAC, three patterns:

Pattern A: Send at "your" timezone (simplest)

Tuesday 10:00 ET
  → US East gets it at 10am local
  → US West gets it at 7am local (early)
  → London gets it at 3pm local (afternoon — different but workable)
  → Tokyo gets it at 11pm local (night — engagement drops)

Sub-optimal for non-US recipients but easy to ship.

Pattern B: Multiple send waves

Tuesday 09:30 PT  (West Coast US)
Tuesday 09:30 ET  (East Coast US)
Tuesday 09:30 GMT (London)
Tuesday 09:30 JST (Tokyo)

Each subscriber's timezone tag determines which wave they receive in. AcelleMail handles this via per-segment campaign launches OR via per-subscriber send-time-optimization (advanced).

Pattern C: Subscriber-local timezone

If your install supports per-subscriber timezone:

Tuesday 09:30 in subscriber's local timezone

Each subscriber receives at 9:30am THEIR time. AcelleMail's scheduler does the math.

Requires:

  • Per-subscriber timezone field on the list
  • Send-time optimization feature enabled (varies per install)

Common UI signals + fixes

Symptom Likely cause Fix
Schedule rejects "tomorrow 9am" Date is in past relative to account timezone Verify account timezone matches what you expect
Send happens 1 hour off expected time Daylight saving transition AcelleMail handles DST automatically; if off, confirm timezone setting (not "UTC offset")
Different recipients receive hours apart Send queue throttling spreading over time Expected for large sends; tune sending limit if too slow
Schedule shows in UTC despite account TZ set Browser session timezone different from account Reset by re-saving the schedule via the explicit picker
Campaign sends in the wrong week Time-of-day in account TZ vs subscriber TZ confusion Use ISO format dates to remove ambiguity
Subscriber-local timezone shows everyone at midnight UTC Per-subscriber timezone field empty Back-fill timezone column or fall back to account TZ

Send-time optimization

AcelleMail's send-time optimization (varies per install) uses each subscriber's past-open-time pattern to predict the best send time for them:

Subscriber A: opens at 9:30am ET routinely → schedule for 9:30am ET
Subscriber B: opens at 6:30pm PT (evening browse) → schedule for 6:30pm PT
Subscriber C: no clear pattern → use default 10:00 account TZ

If your install has this feature, enable in Settings → Sending → Send-time optimization.

How to pick the right time when you don't know your audience

  1. Test 3 windows over 6 weeks (Tuesday 10am, Wednesday 2pm, Sunday 9am)
  2. Compare open rates across the 3 cohorts
  3. Continue with the winner
  4. Re-test annually as audience behavior shifts
Advanced: per-segment scheduling, automated optimal-time selection, and avoiding holiday clashes

Per-segment scheduling:

Split your audience by behavior + schedule each segment optimally:

Engaged segment (open <7d ago):  Tuesday 9:30 ET (proven optimal)
At-risk segment (open >30d ago): Saturday 10am ET (different cadence)
New segment (signup <14d ago):   Welcome series — automation-triggered

Each segment gets a separate campaign with its own optimal schedule. Improves overall engagement vs. one-size-fits-all blast.

Automated optimal-time selection:

#!/bin/bash
# Daily-run script: identify optimal time per segment based on last 90 days
ACELLE_TOKEN="..."
LIST_UID="..."

for segment in engaged at-risk new; do
  # Query open events for this segment over last 90 days, group by hour-of-week
  best_time=$(curl -sH "Authorization: Bearer $ACELLE_TOKEN" \
    "https://acellemail.com/api/v1/lists/$LIST_UID/opens-by-hour?segment=$segment&days=90" \
    | jq -r '.peak_hour')

  echo "Segment $segment: peak engagement at $best_time"
  # Set campaign schedule via API or store for next manual launch
done

Avoiding holiday clashes:

Date Likely conflict
Thanksgiving week (US) Inbox flooded; low engagement
Black Friday / Cyber Monday Promotional inbox overflow
Christmas week Most B2B audiences ignore email
Local national holidays Per-region; check audience demographics
Religious holidays Per-region; check audience demographics

Skip these dates entirely OR send at unusual times to stand out (Christmas afternoon, when normal senders pause).

Programmatic timezone-aware sending:

# Get subscriber timezones from your data + bucket per region
sub_tzs=$(curl -sH "Authorization: Bearer $TOKEN" \
  "https://acellemail.com/api/v1/lists/$LIST_UID/subscribers/timezones" | jq -r '.')

# Schedule per-bucket campaigns
for tz in $sub_tzs; do
  schedule_time=$(calculate_optimal_time $tz 'Tuesday' '09:30')
  schedule_campaign $LIST_UID $tz $schedule_time
done

For ~50 timezones globally, the bucket count gets unwieldy. Most senders use 3-4 macro-regions (Americas, EMEA, APAC, India).

Avoiding "send drift":

If your campaign cadence is "every Tuesday 10am ET" and you stop tweaking:

  1. Holiday weeks (Thanksgiving, Christmas) skip
  2. DST shifts confuse the schedule by 1 hour
  3. After 18 months, you'll have weeks where you sent twice and weeks where you sent zero

Audit quarterly: confirm your weekly Tuesday actually happens every Tuesday. Catch drift via the campaigns index timestamp pattern.

Related articles

9 bình luận

5 bình luận

  1. v.petrova.ru
    confirming the A/B-test sample size guidance. We were testing too small for too long — switching to bigger batches over fewer cycles was the right call.
  2. joel.anders.se
    saved this. going to use as a reference for our next campaign cycle.
    1. admin
      thanks for the kind words. We try to keep these source-grounded so they age well.
  3. y.yamamoto
    The personalization-beyond-first-name section is what I needed. Most articles talk about it abstractly.
    1. admin
      Glad it landed. Drop suggestions in the comments and we'll incorporate them on the next refresh.
  4. akira.tnk88
    our open rate jumped from 18% to 24% after we restructured around these principles. took about 6 weeks to see the full lift
    1. admin
      useful field report. The 'kill -9 was the only fix' edge case is rare but real — we'll note it as a fallback.
  5. nadia.r.cl
    Any guidance on how this interacts with the time-of-day send optimization? Conflicts with our scheduled-bast pattern.
    1. admin
      Yes — strict alignment requires the From: domain to match exactly. Subdomain-level (`bounce.example.com` vs `example.com`) passes relaxed but fails strict. Most operators run relaxed; the rare strict-DMARC setups need explicit subdomain DKIM configuration.

More in Email Marketing