A single bulk SMS send can reach 100,000 phones in minutes, which means a single mistake also reaches 100,000 phones in minutes. Wrong segment encoding, an unregistered campaign, a list with no consent proof, or a 9:30 p.m. send to the wrong timezone can each turn a campaign into a compliance incident. This 25-point checklist covers list, compliance, content, technical, timing, and post-send verification so you catch every failure mode before it ships.
Section 1: List Hygiene and Consent (1-6)
1. Every number is in E.164 format. Leading +, country code, no spaces or punctuation. Malformed numbers bounce and waste sends. Normalize with our bulk SMS CSV format guide.
2. The list is deduplicated. Normalize first, then dedupe on the phone number. Triplicate messages to one person generate STOP replies and spam complaints.
3. Invalid, landline, and deactivated numbers are removed. Run the file through validation before every major send. Numbers churn constantly, and texting dead lines burns budget. See our bulk phone number validation workflow.
4. Consent is documented per contact. You should be able to answer, for any row, when and how that person opted in. opt_in_date and opt_in_source columns are the practical standard.
5. The suppression list is applied. Opt-outs from prior campaigns, internal DNC entries, and hard bounces must be excluded before, not after, the send.
6. Purchased or third-party data has a consent basis. If the list did not come from your own opt-in flows, verify the seller's consent chain and keep the documentation. Lists without provable consent are the highest-risk sends you can run.
Section 2: Compliance and Registration (7-11)
7. Your 10DLC brand and campaign are approved. Unregistered A2P traffic on 10-digit long codes has been blocked by U.S. carriers since February 1, 2025. Sending without registration means your messages simply do not arrive 10DLC registration requirements.
8. The campaign use case matches the message content. Marketing copy on a transactional campaign (or vice versa) violates your registration and risks both rejection and filtering. When in doubt, re-read our 10DLC rejection reasons.
9. Opt-out handling is live. Recipients must be able to reply STOP and be removed. Test the keyword on your own number before the campaign, "we support STOP" is not the same as STOP actually working.
10. Quiet hours are respected per recipient timezone. Federal law bars solicitations before 8 a.m. or after 9 p.m. recipient local time; Florida, Oklahoma, and Maryland tighten this to 8 p.m. Use our SMS quiet hours by state table to set your send windows.
11. Frequency caps are enforced. Florida and Oklahoma limit solicitations to three per 24 hours on the same subject matter, counted across all your sending numbers. Centralize the counting, rotating numbers does not reset it.
Section 3: Message Content (12-16)
12. The sender is identified. Every message should make clear who it is from, brand name at the start or a registered sender ID. Anonymous-feeling texts get deleted or reported.
13. The message fits the segment budget. A 162-character GSM message costs two segments; one emoji can flip the whole message to Unicode and triple the segment count. Check every template with free SMS character counter before finalizing.
14. Links are correct and use your domain. Shortened or mismatched links trigger carrier filters and erode trust. If your campaign registration says "no embedded links," do not include any.
15. Personalization variables have fallbacks. Hi {first_name} becomes Hi when the field is empty. Set defaults (Hi there) or filter out rows missing required fields.
16. The call to action is singular and clear. One message, one ask. "Shop now," "Reply YES to confirm," "Tap to track", pick one and make the next step frictionless.
Section 4: Technical and Sending Setup (17-20)
17. The sending number/campaign is warmed and healthy. A brand-new number blasting 100k messages invites carrier filtering. Ramp volume progressively if the sender identity is new.
18. Throughput matches the list size and window. Check your campaign's messages-per-second limit against your send window. A 100k list at 10 MPS needs nearly three hours. Start the send early enough to finish inside quiet hours.
19. Test messages render correctly on iOS and Android. Send to test devices on at least two carriers. Check line breaks, link previews, emoji rendering, and that long messages concatenate in the right order.
20. Delivery webhooks and reporting are monitored. Confirm delivery receipts, failure codes, and opt-out events flow into your dashboard before the send, not after you need them.
Section 5: Timing and Targeting (21-23)
21. The send is scheduled in recipient-local time. Segment by timezone and schedule each cohort separately. A single "8 p.m. ET" blast hits Pacific recipients at 5 p.m. (fine) but a single "8 p.m. PT" blast hits Eastern recipients at 11 p.m. (a violation).
22. The timing suits the message. Flash sales convert in the early evening; appointment reminders perform the morning before; B2B messages belong in business hours. Match send time to the action you want.
23. No conflicting campaigns overlap. Check the calendar, two campaigns hitting the same segment on the same day cannibalize attention and risk breaching frequency caps.
Section 6: Post-Send Monitoring (24-25)
24. Someone watches the first 30 minutes. Delivery rate, error spikes, and opt-out velocity in the first half hour reveal list or content problems while you can still pause the send.
25. Results are logged against the checklist. Record delivery rate, opt-out rate, and any complaints next to the campaign's checklist copy. The log turns this from a ritual into a system that gets sharper every send.
Making the Checklist Stick
Print this page, or copy the 25 items into your project tracker, and require a sign-off before any send above a threshold you set (many teams use 10,000 recipients). The items that most often get skipped under deadline pressure, suppression lists, STOP testing, and timezone segmentation, are also the ones that cause the most expensive failures.
If you are building campaigns at scale, our free SMS tools collection includes the character counter and link generators referenced above, and our phone number databases ship in clean, send-ready CSV format so items 1 through 6 start half-done.
Frequently Asked Questions
How often should I re-validate my list?
Before every major campaign at minimum. As an illustrative rule of thumb, teams sending monthly often re-validate monthly, but set the cadence from your own bounce data, not from a slogan.
What is a good opt-out rate benchmark?
There is no universal "good" number; it varies by industry, list source, and message type. Track your own trend per campaign type and investigate sudden spikes. A spike usually means a list, frequency, or relevance problem.
Should the checklist differ for transactional campaigns?
The list-hygiene, technical, and timing sections apply equally. Compliance items shift (consent basis differs for transactional messages), but quiet hours, sender identification, and STOP handling still deserve verification.
Who should sign off on the checklist?
Whoever owns the send, typically the campaign manager, plus a second pair of eyes on compliance items for large or regulated sends. Two signatures catch what one misses.
Can I automate parts of this checklist?
Yes: format validation, dedupe, suppression-list application, STOP testing, and timezone segmentation can all be scripted or handled by your platform. Keep human sign-off on consent basis, campaign registration match, and final content.
What is the single most-skipped item?
In practice, applying the suppression list and testing STOP on a live number. Both take under five minutes and both prevent the failures that generate complaints and fines.
