You hit "send" on your quarterly hygiene recall at 6:00 PM local time. Front desk is winding down, the list is 4,200 overdue patients, and 6 PM feels safe — nobody's asleep, nobody's mid-dinner-rush. Except your practice server is in Denver, and 34% of that list has a phone number tied to the Eastern time zone. For them it's 8:00 PM. Push the send an hour later to catch the after-work crowd, and you've now texted Eastern patients at 9:00 PM — past the 8 PM quiet-hours wall in several states, and squarely inside TCPA exposure territory.
Full disclosure: I work for Ready, an SMS platform with per-recipient quiet-hours enforcement built in — which is exactly the thing this post argues you need. I'll show the math either way and be honest about what the enforcement does and doesn't cover.
The rule you're actually breaking
The TCPA restricts telemarketing calls and texts to the window of 8:00 AM to 9:00 PM in the recipient's local time zone. That's federal. Layered on top, a number of states run tighter windows for their own residents — Florida's mini-TCPA, for example, has historically been read to cap sends at 8:00 PM local, and other states have their own quiet-hours statutes.
Two things make recall campaigns uniquely exposed here:
- **The window is the recipient's local time, not yours.** Your scheduler thinks in one clock. Your patients live on several.
- A recall reminder can read as marketing. A pure "you're due for your cleaning" nudge tied to prior treatment is usually fine, but the moment it drifts toward "book now, chairs are filling up" it starts to look like solicitation — and solicitation is exactly what quiet-hours rules target. We wrote about that fuzzy line in A Recall Text and a Promo Text Need Different Consent, and it's worth the read before your next blast.
The practices most at risk aren't sloppy ones. They're the growing ones — the multi-location group, the practice near a state border, the clinic that inherited a patient list from an acquired location two states over.
Where the list actually lives
Here's the trap in one number. Take a mixed regional practice — say a Denver-based group that acquired a Kansas City office and has snowbird patients who winter in Florida. A realistic timezone spread on a 4,200-contact recall list:
| Recipient time zone | Share of list | Contacts | When your 6 PM MT send lands for them |
|---|---|---|---|
| Mountain (your local) | 48% | 2,016 | 6:00 PM — fine |
| Central | 30% | 1,260 | 7:00 PM — fine |
| Eastern | 18% | 756 | 8:00 PM — over Florida's 8 PM cap for FL residents |
| Pacific | 4% | 168 | 5:00 PM — fine |
Now nudge the whole batch to 7:00 PM MT because open rates look better after dinner. Your 1,512 Eastern-and-Central after-work targets are now getting texts at 9:00 PM and 8:00 PM respectively — and the Eastern block just crossed the 9 PM federal line.
A single scheduled send treats a list that spans four clocks as if it were one. There is no send time in Mountain that's compliant for every recipient once your list is national.
What one bad send actually costs
TCPA statutory damages run $500 per violating text, and up to $1,500 per text where the violation is found willful. Those are per-message numbers, and they're what makes a batch send dangerous rather than merely careless.
Run it on the example. Say 300 of those Eastern-timezone patients get a recall text at 9:15 PM and one of them is the kind of person who keeps receipts:
- 300 texts sent outside the permitted window
- At the $500 floor: $150,000 in theoretical exposure from a single send
- At the willful $1,500 ceiling: $450,000
You will almost certainly never see the full number — most recall texts to real, consenting patients never generate a complaint. But "we'll probably be fine" is not a compliance program, and it takes exactly one litigator on your list to turn a routine Tuesday blast into a demand letter. That's the same logic behind screening for known litigators before you send — see the three separate lists compliance teams confuse.
Why "just schedule it earlier" doesn't fix it
The instinct is to move the send to, say, 4:00 PM MT so even Eastern patients get it by 6:00 PM their time. Two problems:
- You've traded compliance for performance. A 4 PM recall lands mid-workday for most of your list. Recall response is already a grind — often somewhere in the low-teens to 30% booking range for overdue patients, from what practices tend to report — and firing into the dead-air of a workday afternoon doesn't help.
- **You still haven't solved the floor.** The 8 AM start matters too. Schedule a Monday morning recall for 7:30 AM MT to catch people before work, and your Pacific patients get pinged at 6:30 AM — before the 8 AM window opens for them.
A fixed clock can't win a game played on four clocks. The only real fix is to stop scheduling by your time and start scheduling by each recipient's time.
Per-recipient quiet-hours enforcement
This is the part Ready is built to handle, so I'll be specific about the mechanic rather than vague about the benefit.
Ready enforces quiet hours based on the recipient's area, not the sender's. You schedule the recall once. For any contact whose local time falls outside the permitted window at the moment of send, the message is held and delivered when their local window opens — instead of firing into a 9:15 PM violation. You're not building four separate campaigns segmented by area code and babysitting four send times. You queue it once and the platform staggers delivery so each patient gets the text inside their own legal window.
It travels with the rest of the compliance stack, which for a recall campaign matters because quiet hours is only one of the walls you can hit:
- Automatic STOP / opt-out handling — a patient who replied STOP to last quarter's recall is suppressed automatically, and the opt-out propagates so a different campaign can't re-text them.
- Consent / attestation capture — opt-in is recorded for bulk sends, so you have an audit trail if the recall-vs-marketing question ever comes up.
- Litigator / DNC scrubbing — via the standalone TCPA & DNC litigator scrub at $0.005 per contact, you can screen known litigators off the list before the blast goes out.
Honest framing: none of this makes you lawsuit-proof, and it doesn't replace your own consent hygiene or a signed BAA where PHI is involved. Quiet-hours enforcement reduces one specific, mechanical, and completely avoidable source of exposure. The sender is still ultimately responsible — this just removes the "we sent it at the wrong local time" mistake from the table.
A practical checklist before your next recall blast
If you take nothing else from this, run the list:
- Do you actually know the timezone spread of your list? Pull it. Border practices and acquired-location practices are almost always more spread out than they assume.
- Are you scheduling by your clock or theirs? If it's yours, you're guessing.
- Is the copy a reminder or a solicitation? Treatment-tied recall reminders sit on safer ground; "book now" promo language pulls you into stricter quiet-hours and consent territory. The annotated recall template pack walks the wording line.
- Have you scrubbed for STOP and litigators? One suppressed litigator is cheaper than one $1,500 text.
- Do you have a re-consent trigger for stale patients? Consent doesn't expire, but the relationship it's tied to can — a patient you haven't seen in three years is a different risk profile than one from last quarter.
The practical takeaway
The multi-timezone quiet-hours trap isn't exotic. It's the default failure mode of every practice that grew past one metro and kept scheduling recalls off the front-desk clock. The fix isn't more discipline at the scheduling screen — it's letting the platform stagger delivery so each patient gets their text inside their own 8-to-9 window.
If you want to see how per-recipient quiet-hours enforcement, STOP handling, and litigator scrubbing fit together for a recall campaign, you can look at the details on Ready's product page or start with the 2,500 free credits and run a small recall batch against a real timezone spread before you commit. Either way — pull your list's timezone breakdown first. You'll probably be surprised how much of it isn't on your clock.