Handle Failed Texts with the Messaging Error (SMS) Trigger
When a text message cannot be delivered, the carrier returns an error code. The Messaging Error - SMS trigger lets a workflow respond to those failures automatically, so you can clean your list and protect your delivery rates.
What starts it
The trigger fires whenever a text to a contact ends in an undelivered state with an error code. You can leave the filter off to catch every failure, or limit it to specific codes.
Common codes you can filter on
- 30003: unreachable or out-of-service number.
- 30004: recipient blocked or does not want texts.
- 30005: number does not exist or is inactive.
- 30006: landline, unable to receive texts.
- 30007: carrier filtered the message as a violation.
- 21610: recipient replied STOP and opted out.
- 21211 / 21614: invalid or non-mobile recipient number.
- 30034, 30032, 30033: registration or verification problems with the sending number.
- 30023: daily message cap reached.
The dropdown lists every supported code with a short description.
Set it up
- Create a workflow and click Add New Trigger.
- Select Messaging Error - SMS and name it.
- Click Add filters, choose Error Code, and select one or more codes.
- Click Save Trigger.
- Add actions that suit the problem, then publish.
Example actions
- For landline or invalid number codes, add a tag such as "bad-mobile" and remove the contact from texting campaigns.
- For carrier filtering, add a tag, wait a few days, then retry with a rewritten message.
- For registration or cap errors, send an internal notification to your admin instead of acting on the contact.
Use a Condition step after one trigger to route different codes down different branches.
Good to know: Never retry codes tied to opt-outs; respect them by leaving the contact tagged as unsubscribed.
Was this article helpful?
