How to check message status
In any conversation, click a message to see its delivery status:
- Sent ✓ — delivered to the provider
- Delivered ✓✓ — received by the customer's device
- Failed ✗ — error occurred; click to see the error code
For a broader view, go to /analytics → Message Delivery to see failure rates by channel.
Common WhatsApp failures
Error: message outside 24-hour window
What happened: You sent a free-form message to a customer who last messaged more than 24 hours ago.
Fix: Use a pre-approved WhatsApp template for this message. In the reply box, click Templates and select an appropriate one.
Error: invalid phone number
What happened: The phone number is not on WhatsApp, or is formatted incorrectly.
Fix: Verify the number is in E.164 format (e.g., +12025551234) and is registered on WhatsApp. Use the WhatsApp phone number check API to validate before sending.
Error: template not approved
What happened: You're trying to use a template that Meta hasn't approved yet.
Fix: Check the template status in /settings/channels → your channel → Templates. See WhatsApp template not approved.
Common SMS failures
Error: 30006 - Landline number
What happened: The destination number is a landline and cannot receive SMS.
Fix: Verify the customer's number is a mobile number. Remove landlines from your contact list.
Error: 30007 - Carrier violation
What happened: The carrier filtered the message as potential spam.
Fix:
- Shorten the message if it's long
- Avoid marketing language in transactional messages
- Register your number as a 10DLC campaign (US) for better deliverability
Error: 30003 - Number out of service
What happened: The destination number is disconnected or no longer in use.
Fix: Update your contact record with the customer's current number.
Common email failures
Bounced: invalid mailbox
What happened: The email address doesn't exist.
Fix: Update the contact with the correct email. Remove invalid emails from your mailing lists.
Spam filtered
What happened: The receiving server classified your message as spam.
Fix:
- Verify your domain's SPF, DKIM, and DMARC records are correct in Resend
- Avoid spam trigger words ("free", "winner", "urgent")
- Ensure your unsubscribe link is present
Checking the delivery log
Go to /settings/channels → your channel → Delivery Log for a detailed history of every message attempt, including provider error codes and timestamps.
Was this article helpful?
Let us know if this answered your question or if you need more help.
Send feedback