Skip to content

SMS Delivery Checklist (First 10 Minutes)

When SMS delivery failures occur, follow this checklist to quickly isolate the cause.

Immediate Checklist

  1. Check Phone Number Status: Is the number active?
  2. Review Opt-out Lists: Is the recipient on a suppression or STOP list?
  3. Analyze Message Content: Does it contain spam keywords or suspicious URLs?
  4. Check Rate Limits: Are you exceeding your throughput (MPS) limits?
  5. Verify Number Format: Is the recipient number in correct E.164 format?

Essential CLI Commands

# Check phone number status
az communication sms number list --connection-string "<your_connection_string>"

# Get the latest delivery reports for a specific message
# Replace message-id with the actual ID from your logs
az communication sms get-delivery-report --message-id "<message_id>" --connection-string "<your_connection_string>"

Key KQL Queries

Run this in Log Analytics to see recent delivery failures and their reasons:

ACSSMSDeliveryReportEvents
| where TimeGenerated > ago(1h)
| where DeliveryStatus == "Failed"
| summarize Count=count() by DeliveryStatusDetails, To
| order by Count desc

Immediate Triage Questions

  • Is the failure happening for all carriers or just one?
  • Are you sending international messages from a local number?
  • Is your ACS resource in a region that supports the destination?

See Also

Sources

  • Azure Communication Services SMS Troubleshooting Documentation
  • Global SMS Carrier Best Practices