Introduction
Sending an SMS campaign is just the first step. Understanding whether your messages actually reached customersβand why some didn'tβis crucial for optimizing your campaigns and maximizing ROI. That's where SMS delivery reports come in.
This comprehensive guide explains everything you need to know about SMS delivery reports: what they tell you, how to read them, what different status codes mean, and how to use this data to improve your campaigns and troubleshoot delivery issues.
Key Insight
A delivery rate below 95% indicates issues with your contact list quality, message content, or sender ID. Monitoring delivery reports helps you identify and fix these problems before they waste your budget.
What Are SMS Delivery Reports?
SMS delivery reports (also called delivery receipts or DLRs) are notifications from mobile network operators confirming whether your messages successfully reached recipients' phones. They provide essential feedback about your campaign's performance.
What Delivery Reports Tell You
- Delivery Status - Whether each message was delivered, failed, or is still pending
- Delivery Time - Exactly when the message reached the recipient's phone
- Failure Reasons - Why a message failed (invalid number, phone off, network issue, etc.)
- Network Information - Which mobile network processed the message (MTN, Glo, Airtel, 9mobile)
- Cost Per Message - How many credits each message consumed
Why Delivery Reports Matter
- Verify Campaign Success - Know exactly how many customers received your message
- Identify Issues - Spot problems with numbers, content, or sender IDs quickly
- Clean Your Database - Remove invalid numbers to save money and improve future delivery rates
- Calculate ROI - Understand true campaign reach and cost-per-delivered message
- Meet Compliance - Maintain records for regulatory requirements
- Optimize Timing - Analyze when messages are most likely to be delivered
Understanding Delivery Statuses
Every SMS has a delivery status that tells you what happened to the message. Here are the main statuses you'll encounter:
1. Delivered / Success β
Status: DELIVERED
The message successfully reached the recipient's phone and was accepted by their device.
What this means: Success! The recipient can read your message (if their phone is on and they have storage space).
Typical delivery time: 2-30 seconds from sending
2. Failed / Undelivered β
Status: FAILED
The message could not be delivered to the recipient's phone.
Common reasons:
- β’ Invalid or inactive phone number
- β’ Phone switched off for extended period (48+ hours)
- β’ Number doesn't exist or out of service
- β’ Recipient blocked your sender ID
- β’ Network technical issues
- β’ Phone memory full (rare)
3. Pending / Submitted β³
Status: PENDING
The message has been sent to the network operator but hasn't been delivered to the recipient's phone yet.
Common reasons:
- β’ Recipient's phone is currently switched off
- β’ Phone is out of network coverage
- β’ Network congestion or delays
- β’ Phone is in airplane mode
What to do: Wait 24-48 hours. Messages often deliver when phone is turned back on. After 48 hours, pending messages typically expire and are marked as failed.
4. Rejected / Blocked π«
Status: REJECTED
The network operator or recipient's phone rejected the message before attempting delivery.
Common reasons:
- β’ Recipient on DND (Do Not Disturb) list and you're using standard route
- β’ Sender ID not registered or approved
- β’ Message contains prohibited content (spam, fraud keywords)
- β’ Recipient blocked your sender ID or all promotional messages
- β’ Network operator filtering (anti-spam)
5. Expired β
Status: EXPIRED
The message remained pending for too long (typically 48 hours) and has expired without being delivered.
What this means: The recipient's phone was unreachable for an extended period. The message won't be delivered even if the phone comes back online. You may want to resend or try an alternative contact method.
Common Delivery Status Codes
Behind each delivery status is a specific code from the mobile network. Here are the most common ones:
| Code |
Status |
Meaning |
Action Required |
| 000 |
Delivered |
Message successfully delivered |
None - success! |
| 001 |
Failed |
Unknown subscriber / Invalid number |
Remove from list - number doesn't exist |
| 002 |
Failed |
Facility not supported |
Phone doesn't support SMS (very rare) |
| 003 |
Pending |
Subscriber absent (phone off or out of coverage) |
Wait 24-48 hours, may deliver later |
| 004 |
Rejected |
Blocked by operator or DND |
Use DND route or remove from list |
| 005 |
Pending |
Network congestion |
Wait - usually delivers within hours |
| 006 |
Failed |
Memory capacity exceeded |
Recipient's phone storage full - retry later |
| 007 |
Expired |
Validity period expired |
Message expired after 48hrs - resend if needed |
| 008 |
Rejected |
Sender ID not registered |
Register sender ID with provider |
| 009 |
Rejected |
Content blocked (spam/prohibited) |
Review message content, avoid spam keywords |
Note: Status codes may vary slightly between network operators. Your SMS provider translates these codes into user-friendly statuses.
Key Metrics to Track
Beyond individual message statuses, tracking aggregate metrics helps you understand campaign performance and identify trends:
1. Delivery Rate
Formula: (Delivered Messages Γ· Total Messages Sent) Γ 100
The percentage of messages that successfully reached recipients.
Example:
Sent: 10,000 messages
Delivered: 9,650 messages
Failed: 350 messages
Delivery Rate: 96.5%
Target: 95%+ is excellent. Below 90% indicates significant issues that need investigation.
2. Failure Rate
Formula: (Failed Messages Γ· Total Messages Sent) Γ 100
The percentage of messages that could not be delivered.
Acceptable: 5% or less. Higher failure rates waste budget and indicate list quality issues.
3. Pending Rate
Formula: (Pending Messages Γ· Total Messages Sent) Γ 100
The percentage of messages still awaiting delivery.
Note: Pending rate should decrease over 24-48 hours as phones come back online. High persistent pending rates suggest network issues.
4. Average Delivery Time
How long it takes for messages to be delivered from the moment they're sent.
- Excellent: 2-10 seconds (immediate delivery)
- Good: 10-60 seconds (normal network processing)
- Slow: 1-5 minutes (network congestion)
- Concerning: 5+ minutes (investigate delivery route quality)
5. Cost Per Delivered Message
Formula: Total Campaign Cost Γ· Delivered Messages
Your actual cost per successful delivery, accounting for failures.
Example:
Sent: 10,000 messages Γ β¦6 = β¦60,000
Delivered: 9,650 messages
Cost per delivered: β¦60,000 Γ· 9,650 = β¦6.22
Failed messages still cost you credits, so improving delivery rates reduces cost per delivered message.
6. Delivery by Network Operator
Track delivery rates separately for each mobile network (MTN, Glo, Airtel, 9mobile). This helps identify if one network consistently has lower delivery rates, suggesting routing or technical issues.
How to Read Your Delivery Report
Most SMS platforms provide delivery reports in a dashboard or downloadable format. Here's what to look for:
Campaign Summary Section
- Total Sent: How many messages you initiated
- Total Delivered: How many successfully reached recipients
- Total Failed: How many couldn't be delivered
- Total Pending: How many are still in queue
- Total Cost: Credits consumed
- Delivery Rate: Percentage successfully delivered
Detailed Message List
A table showing individual messages with columns like:
- Phone Number: Recipient's number (sometimes masked for privacy)
- Status: Delivered, Failed, Pending, etc.
- Network: MTN, Glo, Airtel, or 9mobile
- Sent Time: When you submitted the message
- Delivered Time: When it reached the recipient (if delivered)
- Status Code: Technical code from network operator
- Status Message: Human-readable explanation
- Credits Used: How many credits this message consumed
Charts & Visualizations
Good delivery report tools provide visual analytics:
- Pie Chart: Delivered vs Failed vs Pending distribution
- Bar Chart: Delivery rates by network operator
- Line Chart: Delivery timeline (when messages were delivered over time)
- Failure Breakdown: Why messages failed (invalid numbers, DND, phone off, etc.)
Troubleshooting Common Delivery Issues
Issue 1: Low Overall Delivery Rate (Below 90%)
Symptoms:
- β’ Large percentage of messages failing
- β’ Consistent delivery rate below 90%
- β’ High bounce rate across all campaigns
Common Causes:
- β’ Poor contact list quality (old, invalid, or purchased numbers)
- β’ Wrong number format (missing country code, extra digits)
- β’ Inactive or ported numbers not updated
Solutions:
- β Clean your contact list - remove old/invalid numbers
- β Verify number format (234XXXXXXXXXX for Nigeria)
- β Use phone validation service before sending
- β Remove numbers that consistently fail
- β Never buy contact lists - build organically with consent
Issue 2: High Rejection Rate (Status: Blocked/Rejected)
Symptoms:
- β’ Many messages marked as "Rejected" or "Blocked"
- β’ Higher rejection rate on certain networks
- β’ Status codes indicating DND or content filtering
Common Causes:
- β’ Recipients on DND (Do Not Disturb) list
- β’ Sender ID not registered or approved
- β’ Message content triggers spam filters
- β’ Using prohibited keywords
Solutions:
- β Register and approve your sender ID
- β Use corporate/DND delivery routes
- β Avoid spam keywords (FREE, WINNER, CLICK NOW, etc.)
- β Get explicit customer consent before messaging
- β Review message content for compliance
Issue 3: High Pending Rate That Doesn't Resolve
Symptoms:
- β’ Large percentage stuck in "Pending" status
- β’ Pending messages don't deliver even after 24+ hours
- β’ Slow delivery times across campaign
Common Causes:
- β’ Network congestion or technical issues
- β’ Low-quality routing or aggregator
- β’ Sending during peak hours (network overload)
- β’ Recipients' phones off for extended periods
Solutions:
- β Switch to a higher-quality SMS provider
- β Send during off-peak hours (avoid 9am-12pm, 5pm-8pm)
- β Contact your provider about route quality
- β Consider using premium direct operator routes
Issue 4: Delivery Variations by Network
Symptoms:
- β’ One network (e.g., MTN) has 98% delivery but another (e.g., Glo) has 70%
- β’ Consistent pattern of one network underperforming
Common Causes:
- β’ Provider has weak routing to specific networks
- β’ Network-specific filtering or restrictions
- β’ DND enforcement varies by network
Solutions:
- β Use a provider with direct connections to all networks
- β Ask provider to check routing to underperforming network
- β Consider network-specific sender IDs if allowed
Using Delivery Reports to Optimize Campaigns
1. Clean Your Contact List Regularly
Strategy: Remove consistently failing numbers to improve future delivery rates and reduce wasted spend.
- Export failed messages from delivery reports
- Identify numbers that fail across multiple campaigns
- Remove "Unknown Subscriber" and "Invalid Number" errors permanently
- Flag "Phone Off" numbers for retry in 30 days
- Segment DND numbers for corporate route delivery
Impact: A retailer reduced their contact list from 50,000 to 42,000 by removing consistently failing numbers. Their delivery rate improved from 88% to 97%, saving β¦420,000 per campaign in wasted SMS credits.
2. Identify Optimal Sending Times
Strategy: Analyze delivery times to determine when messages are delivered fastest.
- Check average delivery times by hour of day
- Avoid peak network congestion hours (9-11am, 5-7pm)
- Schedule important campaigns during low-congestion periods
- Test different sending times and compare delivery rates
3. A/B Test Sender IDs and Message Content
Strategy: Use delivery reports to compare performance of different sender IDs and message variations.
- Send same message with two different sender IDs to different segments
- Compare delivery and rejection rates
- Test message content variations to avoid spam filters
- Identify which sender IDs have highest delivery rates
4. Monitor Network Performance Trends
Strategy: Track delivery rates by network operator over time to spot degrading service.
- Create monthly reports of delivery rates per network
- Set alerts if any network drops below 92% delivery
- Switch providers if one network consistently underperforms
- Negotiate better routing with your SMS provider
5. Calculate True Campaign ROI
Strategy: Use actual delivered count (not sent count) to calculate accurate return on investment.
Example ROI Calculation:
Campaign Goal: Promote flash sale
Messages Sent: 20,000 Γ β¦6 = β¦120,000
Messages Delivered: 19,200 (96% delivery rate)
Sales Generated: β¦2,400,000
Cost Per Delivered: β¦120,000 Γ· 19,200 = β¦6.25
ROI: (β¦2,400,000 - β¦120,000) Γ· β¦120,000 = 1,900% return
Note: Using delivered count (19,200) not sent count (20,000) gives accurate reach measurement.
Best Practices for Delivery Report Management
1. Check Reports Within 24 Hours
Review delivery reports within 24 hours of sending to catch issues while they're fresh. Early detection allows you to:
- Resend to pending numbers if appropriate
- Quickly fix technical issues affecting delivery
- Respond to customer inquiries about non-delivery
- Identify and resolve sender ID or content problems
2. Export and Archive Reports
Keep records of all campaigns for compliance and analysis:
- Download CSV/Excel exports of delivery reports
- Store reports for at least 12 months (24 months for compliance-critical industries)
- Include reports in customer communication audit trails
- Use archived data for year-over-year performance comparisons
3. Set Up Automated Alerts
Configure alerts to notify you of delivery issues:
- Low Delivery Rate Alert: If campaign delivery drops below 90%
- High Failure Alert: If failure rate exceeds 10%
- Slow Delivery Alert: If average delivery time exceeds 5 minutes
- Network Issue Alert: If one network operator shows unusual failure patterns
4. Create Regular Performance Reports
Generate monthly or quarterly reports showing:
- Overall delivery rate trends
- Delivery rates by campaign type
- Network operator performance comparison
- Cost per delivered message over time
- Most common failure reasons
5. Integrate with Your CRM
Feed delivery data back into your customer database:
- Mark customers with failed deliveries for list cleaning
- Tag successfully delivered messages for follow-up tracking
- Update customer records with preferred contact methods
- Create segments based on SMS deliverability
Advanced Analytics & Insights
Delivery Heatmap by Time and Day
Create a heatmap showing which days and times have the highest delivery rates. This helps you schedule campaigns for maximum deliverability.
Cohort Analysis
Compare delivery rates across different customer segments:
- New vs existing customers
- Geographic regions
- Age demographics
- Customer lifetime value tiers
Predictive Delivery Scoring
Assign a "deliverability score" to each phone number based on historical performance:
- 100% Score: Always delivers successfully
- 75% Score: Sometimes pending, usually delivers eventually
- 50% Score: Frequently fails, consider removing
- 0% Score: Never delivers, remove from list
Cost Efficiency Analysis
Track cost per delivered message by:
- Campaign type (promotional vs transactional)
- Sender ID used
- Time of day sent
- Network operator
- Message length (pages)
Delivery Reports for Different Message Types
Transactional Messages (OTPs, Confirmations)
Target Delivery Rate: 98%+
Critical messages require near-perfect delivery. If delivery falls below 98%:
- Use premium direct operator routes
- Implement failover to backup SMS provider
- Consider alternative delivery (email, app notification) for failed messages
- Monitor in real-time with instant alerts
Marketing Campaigns
Target Delivery Rate: 94-96%
Marketing messages can tolerate slightly lower delivery rates. Focus on:
- Cost per delivered message efficiency
- Cleaning lists based on consistent failures
- Testing sender IDs and content for better delivery
- Segmenting high-deliverability vs low-deliverability contacts
Appointment Reminders
Target Delivery Rate: 96%+
Time-sensitive reminders need high delivery rates. Strategies:
- Send 24-48 hours in advance to allow for pending deliveries
- Follow up with phone calls for failed deliveries
- Track delivery and correlate with appointment show-up rates
Broadcast Announcements
Target Delivery Rate: 92-95%
Mass announcements prioritize reach over individual delivery. Best practices:
- Accept that some messages won't deliver due to inactive numbers
- Use multiple channels (SMS + email + social media) for critical announcements
- Focus on reaching majority, clean list afterwards
Working with Your SMS Provider
Questions to Ask Your Provider
To ensure you get quality delivery reporting:
- Real-Time Reports: "Do you provide real-time delivery status updates?"
- Report Detail Level: "Can I see individual message statuses and failure reasons?"
- Data Export: "Can I export delivery reports to CSV/Excel?"
- Retention Period: "How long do you store delivery report data?"
- API Access: "Can I access delivery reports via API for integration?"
- Status Codes: "Do you provide detailed network operator status codes?"
- Network Breakdown: "Can I see delivery rates by network operator?"
When to Switch Providers
Consider changing SMS providers if:
- Consistent delivery rates below 92% despite clean lists
- Delivery reports are delayed, incomplete, or unavailable
- High "pending" rates that don't resolve within 24 hours
- Lack of transparency about delivery issues
- Unable to export or access detailed delivery data
- Poor customer support for delivery troubleshooting
Why BulkSMS Nigeria Delivery Reports Stand Out
- β Real-Time Status Updates - See delivery status within seconds
- β Detailed Network Codes - Understand exactly why messages failed
- β Network Operator Breakdown - Compare MTN, Glo, Airtel, 9mobile delivery
- β Exportable Reports - Download CSV for analysis and record-keeping
- β API Access - Integrate delivery data into your systems
- β Visual Analytics - Charts and graphs for quick insights
- β 12-Month Data Retention - Historical analysis and compliance
- β 98%+ Average Delivery Rate - Industry-leading delivery performance
Conclusion
SMS delivery reports are not just confirmation that your messages were sentβthey're a goldmine of data that can dramatically improve your marketing effectiveness, reduce costs, and ensure you're reaching your customers reliably.
By understanding delivery statuses, tracking key metrics, troubleshooting issues proactively, and using delivery data to optimize campaigns, you transform delivery reports from a simple receipt into a powerful business intelligence tool.
Start monitoring your delivery reports closely, and you'll see immediate improvements in campaign performance and cost efficiency.
Get Comprehensive Delivery Reports with BulkSMS Nigeria
Track every message with real-time delivery reports, detailed analytics, and 98%+ delivery rates across all Nigerian networks.