Twilio Error Codes Reference

Twilio error and warning codes by product — Voice, SMS, Video, Auth.

A searchable reference for Twilio error and warning codes across the REST API, Messaging, Voice, Verify and Video products — each with its product area, meaning and how to resolve it. Runs entirely in your browser.

What does Twilio error 30003 mean?

Error 30003 (Unreachable destination handset) is a Messaging delivery error meaning the carrier could not reach the recipient's phone — it may be powered off, out of coverage, or the number is unable to receive SMS. It is a final delivery status, not an API request error.

This is a searchable reference for Twilio error and warning codes across the products you actually integrate — the REST API, Programmable Messaging (SMS/MMS), Programmable Voice, Verify, and Video. Each entry shows the product area that raised the code, what it means, and how to resolve it, so you can tell a request mistake from a delivery failure at a glance.

How it works

Twilio organises error codes into numeric ranges that roughly map to a product and a moment in the request lifecycle:

1xxxx   Voice / TwiML retrieval and execution (e.g. 11200 HTTP retrieval failure)
21xxx   REST API request errors — synchronous, returned on the API call
30xxx   Messaging delivery errors — asynchronous, via status callbacks
60xxx   Verify / Authy (e.g. 60200 invalid parameter)
53xxx   Video room and participant errors

Synchronous errors (the 21xxx range) come back immediately with a non-2xx HTTP status and a code field; they mean your API request was malformed — a bad To number, missing parameter, or unverified caller ID. Asynchronous errors (the 30xxx range) arrive later as a MessageStatus callback with an ErrorCode; the API call succeeded but the carrier ultimately could not deliver the message.

Tips and example

Always wire up a status-callback URL for messaging so you capture 30xxx delivery errors — the initial API 201 Created does not mean the SMS was delivered:

21211 → fix the To number to valid E.164 (+14155551234)
21608 → trial account: verify the recipient number first
30003 → recipient unreachable (off / no coverage) — retry later
30007 → carrier filtering — register A2P 10DLC, clean content
11200 → make the TwiML webhook reachable and return valid TwiML

For US application-to-person SMS, most 30007 and 30034 blocks disappear once your 10DLC brand and campaign are registered with The Campaign Registry. Everything runs in your browser; nothing is uploaded.