Android App: How to schedule campaigns by timezone

Featured illustration for Android App: How to schedule campaigns by timezone

Android App: How to schedule campaigns by timezone. Actionable guide on how to schedule campaigns by timezone in context of android sms gateway app. Include prerequisites, steps, limits, and internal links. Priced by devices and SMS send volume; BYO phone and operator credit.

Written by the SMS Gateway team for operators who run phones and airtime themselves — not for theoretical cloud SMS demos.

InformationAndroid SMS GatewayHow-ToHub D
Article
Published
September 13, 2025
Updated
October 10, 2025
Reading time
16 minute read

Key Takeaways

  • Schedule promotional SMS in the recipient’s local window, not your office wall clock.
  • Store a timezone (IANA name) or a UTC offset you refresh — not “send at 9” with no zone.
  • US TCPA-style quiet hours are commonly 8 a.m.–9 p.m. local; other markets have their own windows. Confirm current law with counsel.
  • API `scheduleAt` is ISO-8601 UTC and refused beyond 38 days. Convert local send time to UTC in your backend.
  • A scheduled job still needs a charged, paired phone. The calendar is not a radio.
  • Service pricing is based on device count and total SMS sent through the gateway. You need a working Android phone with a SIM and SMS credit from your mobile operator. Operator message costs are yours—we do not sell carrier SMS balance.

Search intent for android sms gateway app how to schedule campaigns by timezone is almost always a scar: a “9 a.m. launch” that woke the West Coast, or a reminder that landed during Friday prayers because someone stored wall-clock time in the HQ city. The Android app will fire whatever UTC instant you give it. It will not infer courtesy.

Scheduled SMS is available from Starter upward in the product. The control plane queues the job; your SIM still spends operator credit when the radio sends. Service pricing is based on device count and total SMS sent through the gateway. This spoke belongs under the app guide and the scheduled SMS feature— not as a second overview.

Quiet hours are a property of the recipient, not of the laptop that clicked Send.
One UTC fire time is three local clocksUTC 13:00New York 9:00Los Angeles 6:00
Same job. Three local readings. Quiet hours attach to the city, not the dashboard.

The 9 a.m. that arrives at 2 a.m.

Dashboards lie politely. You see 09:00 because that is when you sat down. The handset on a nightstand in another offset sees whatever local time that UTC converts to. Promotional SMS in the US is the classic trap: TCPA-style rules are commonly described as 8 a.m.–9 p.m. recipient local. Confirm current obligations with counsel; the FCC’s consumer materials on unwanted texts are a starting point, not a substitute for a lawyer: FCC guide on unwanted calls and texts.

Transactional reminders are not a free-for-all either. A shipping ping at 01:10 still trains people to block the number — and on a gateway that number is your real MSISDN.

What to store per recipient

You need a timezone you can convert. Best: IANA name captured at signup or from a trusted profile. Acceptable: map country or area code to a default zone and let support override. Weak: a numeric offset with no DST rules. Useless: “send at 9” with no zone at all.

Recipients move. A student who signed up in Dhaka and now studies in Toronto will keep getting the old window until you refresh the zone. Put a yearly audit on the list, or an in-app prompt when the device locale disagrees with the stored zone.

Quiet hours by region

This table is an ops starting grid, not legal advice. Always check the current statute and operator code for the market you send into.

AudienceWorking assumptionStoreDo not
US promotionalOften 8 a.m.–9 p.m. local (TCPA-style window)IANA zone or NPA→zone mapFire HQ 9 a.m. at Pacific numbers
EU / UK marketingConsent + reasonable hours; PECR/GDPR still applyCountry + zoneHide commercial intent as a “service ping”
South Asia OTPEvent-driven, not a campaign clockNothing on the schedulerBatch codes for “morning peak”
Appointment remindersLocal afternoon-before or morning-ofClinic timezone + patient zone if they travelOne blast at staff closing time

scheduleAt is UTC

The public send contract uses ISO-8601 UTC on scheduleAt, refused beyond 38 days. Convert in your backend. Do not send a naive local string and hope. Live fields belong in the SMS API documentation. Shape of the call:

curl -X POST "https://app.sms-gateway.app/api/v1/messages" \
  -H "Authorization: Bearer $SMS_GATEWAY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"to":["+14155552671"],"text":"Reminder: your invoice is due tomorrow.","type":"sms","scheduleAt":"2026-09-01T09:00:00Z"}'

# Times are ISO-8601 UTC unless the string carries an offset.
# scheduleAt is refused beyond 38 days. PATCH /campaigns/{id} can re-time a campaign.

Campaigns in the panel can be re-timed. Long drip sequences should be rolling windows, not a 90-day pile the API will refuse.

DST and the missing hour

Spring-forward deletes a local hour; fall-back duplicates one. If you stored “Sunday 02:30 America/New_York” you need a rule: skip, or slide to 03:30. Libraries that speak IANA zones (not hand-rolled offsets) are the boring fix. Test the weekend of the change with a staff canary, not with 40,000 customers.

The phone still has to be awake

A perfect UTC timestamp on an offline handset is a delayed send. Delayed sends miss the quiet window. Before a campaign, check last-seen, battery, and queue depth. Keep a spare charged device on multi-device plans so a single OEM killer does not dump the whole list at 11 p.m.

Pace the radio. Scheduling 8,000 rows for the same second is a blast wearing a calendar. Stagger by zone, then by a few seconds inside the zone, so OEM rate ceilings and carrier fair-use do not fold the wave. See the load-test how-to if you are guessing at SMS/min.

Do not schedule login codes

OTP is a response to a user action. Expiry is measured in minutes. Putting codes on the campaign clock mixes lanes and burns the SIM’s reputation when a promotional template shares the device. Isolate OTP hardware. That rule shows up in every honest gateway runbook because teams keep violating it.

How to schedule a campaign

  1. Tag each contact with a timezone. IANA name (America/New_York) from signup, area code map, or address. Refresh when they move.
  2. Pick a local send window. Promotional: inside quiet hours for that zone. Transactional reminders: still avoid midnight unless the user asked.
  3. Convert to UTC. Compute the next in-window instant, store ISO-8601 UTC on scheduleAt or the campaign clock.
  4. Cap the horizon. Stay inside 38 days for API scheduleAt. Split long drip programs into rolling windows.
  5. Prove the radio. Canary a staff number in a far zone. Confirm DLR and that the phone was online at fire time.
  6. Honor STOP. Promotional lanes need opt-out handling. A scheduled blast does not get a pass.

Consent and STOP still apply. Wire auto-reply and STOP on promotional lanes. Bulk lists belong on bulk SMS with consent.

Checklist

  • Each recipient has a timezone you can convert.
  • Local window written down (promo vs reminder).
  • UTC conversion tested with a far-zone canary.
  • scheduleAt within 38 days for API jobs.
  • Phone online, charged, last-seen fresh at T-minus 30 minutes.
  • OTP not on this device pool.
  • STOP honored; retries budgeted as operator airtime.

Next steps

Open scheduled SMS, confirm the contract in Developer Center, and read how an Android SMS gateway works if anyone on the thread still thinks the cloud holds the radio.

Jump to the live product docs for this topic—not another long-form article.

FAQ

Frequently asked questions

Direct answers about android sms gateway app how to schedule campaigns by timezone.

Can I enter “9:00” in the panel and assume every recipient sees morning?

Only if every number is in that same zone. Multi-region lists need per-contact timezone (or a mapping from country/NPA) and a send time converted to UTC.

Does scheduled SMS include operator credit?

No. When the job fires, the SIM spends airtime like any other send. You need a working Android phone with a SIM and SMS credit from your mobile operator. Operator message costs are yours—we do not sell carrier SMS balance. Free is 300 SMS lifetime — not a campaign budget.

How far ahead can I schedule via API?

scheduleAt is refused beyond 38 days. Campaigns can be re-timed in the panel. Live fields live in Developer Center.

Should OTP use the scheduler?

No. Login codes are event-driven. Queueing a 2FA code for “tomorrow 9:00” is how you expire the code before it sends.

What if the phone is offline at fire time?

The job waits on the device. Recipients may then get the text outside the quiet window you planned. Alert on last-seen before a campaign fires.
Keep learning

Topically related guides—chosen by subject overlap, not a fixed sitewide footer.

Information
android sms gateway app how to avoid spammy wording

Android App: How to avoid spammy wording

Android App: How to avoid spammy wording. Actionable guide on how to avoid spammy wording in context of android sms gateway app. Include prerequisites, steps, limits, and internal links. Priced by devices and SMS send volume; BYO phone and operator credit.

Aug 5, 202516 min
Read article
Information
android sms gateway app how to choose prepaid vs postpaid sims

Android App: How to choose prepaid vs postpaid SIMs

Android App: How to choose prepaid vs postpaid SIMs. Actionable guide on how to choose prepaid vs postpaid SIMs in context of android sms gateway app. Include prerequisites, steps, limits, and internal links. Priced by devices and SMS send volume; BYO phone and operator credit.

May 17, 202616 min
Read article
Information
android sms gateway app how to design otp templates

Android App: How to design OTP templates

Android App: How to design OTP templates. Actionable guide on how to design OTP templates in context of android sms gateway app. Include prerequisites, steps, limits, and internal links. Priced by devices and SMS send volume; BYO phone and operator credit.

Dec 31, 202516 min
Read article

Browse the full Android SMS gateway knowledge base or return to how an Android SMS gateway works.

Get started

Test the gateway on your own Android phone

Install the app, pair one device, and validate your API flow before choosing a paid plan.

You supply the phone, SIM, and operator SMS credit.