Skip to content
← Help center

Troubleshooting

Member says an automated email or text never arrived

Check a workflow’s timing, trigger, run status, and message delivery.

Club staff · 4 min read

Follow these steps at your club’s own website. Available screens and actions depend on your account’s role and the programs your club has enabled.

Symptom

A member says they never received an automated message they expected. A renewal reminder, a follow-up after a waitlist offer, an onboarding email, or similar. These come from workflows (Reach → Messages → Workflows), not from a person hitting send.

First check: how long ago was the trigger?

Workflow triggers fire in near-real-time for immediate steps: the triggering action enqueues the event on commit, and the queue consumer sends the first (zero-delay) step's email or creates its task within seconds (shipped 2026-08-19, tickets #275–#277). Delayed steps (wait-N-days ladders) are bounded too: a five-minute campaign-cron sweep also advances any run whose wait has elapsed (shipped 2026-08-20, #278), so a delayed step normally lands within about 5 minutes of its due moment instead of waiting for the top of the hour. The hourly sweep still runs as a backstop for the rare case where a faster path misses a run. Worst case is still under an hour, never lost. So: an immediate message more than a few minutes late, or a delayed message more than about ten minutes late, is worth a look. Usually it just means a faster path missed and the hourly backstop will still catch it within the hour.

If it's been well over an hour

  1. Open the workflow (Reach → Messages → Workflows) and check its status.

  2. Paused: new households stop enrolling; nothing will fire until it's re-enabled. Someone paused it on purpose or by mistake.

  3. Status: error: the workflow hit its daily send or task limit (200 sends/workflow/day, 1000 sends/org/day for email; 100 tasks/workflow/day) and auto-disabled itself. It recovers on its own within 24 hours; no action needed unless the underlying volume spike is itself a problem.

  4. Enabled, nothing obviously wrong. Move to the run check below.

If the missing message was a text (SMS)

Stop here: SMS workflow actions cannot succeed in production today, no matter what the workflow or the member's settings say. The platform hasn't wired up SMS sending yet, so every Send a text step fails closed with "SMS isn't configured for this org yet." No workflow text is going out to anyone right now. Tell the member to expect email only until this changes.

Check comms opt-out

A workflow's "opt out" step can only turn a member's messaging off. Never back on. If this household was opted out of email or SMS at some point (by a workflow, or by staff), a workflow cannot silently opt them back in; that has to be reversed by hand on the household record (household → People → Edit member → Email opt-in / SMS opt-in checkboxes). If the member says they used to get these messages and stopped, check whether their opt-in checkbox is off.

Finding the actual run

Open the workflow's own Runs tab to see whether it ran for this household, when, and what happened on each step (recipients, tasks created, any error). If you don't see it there, check the household's own timeline. A run can also be reached from a link on the household record.

What to tell the member

"Automated messages usually go out within moments of the triggering action; scheduled follow-ups typically land within a few minutes. If it's been more than an hour with nothing, we'll check your account directly."

When to escalate to an admin

  • The workflow shows enabled, more than a few hours have passed, and there's no rate-limit or opt-out explanation.

  • No run appears on the household's timeline at all, and the triggering action definitely happened.

  • The member insists they're opted in and never asked to be removed, but the opt-in checkbox is off.

Known issues

  • Immediate steps are near-real-time since 2026-08-19; delayed steps are bounded to about 5 minutes since #278 (shipped 2026-08-20), with the hourly sweep as a rare backstop.

  • SMS workflow actions are wired end to end in the runner, but still can't send until Twilio is provisioned for the org (Doppler TWILIO_* secrets configured with real, non-placeholder values). Until then every send_sms step fails closed with "SMS isn't configured for this org yet (Twilio not provisioned)".