Bulk SMS Best Practices: How to Plan Campaigns That Deliver
Bulk SMS best practices for planning campaigns: list hygiene, timing and quiet hours, message structure, opt-out, delivery reports and pre-send testing.
By OmniChannels.ai Editorial Team · Reviewed by BroadNet Messaging Solutions Team
SMS & OTP
Short answer
A good bulk SMS campaign starts with a clean, consented list, uses a registered sender ID, and sends one clear message per campaign at a time allowed in each destination market. Put the brand and the point first, keep the text within a known number of segments, include an opt-out, test on real handsets, then send in batches and read delivery reports by operator before scaling up.
On this page
- What makes a bulk SMS campaign succeed?
- How do you prepare a clean SMS list?
- When should you send bulk SMS?
- How should a bulk SMS be structured?
- How should opt-outs work?
- How do you test a bulk SMS campaign?
- How should you read delivery reports?
- Worked example: a UAE retailer's weekend campaign
- Common mistakes and limits
- How OmniChannels.ai helps
Key takeaways
- List hygiene, meaning valid formats, no duplicates, no opted-out numbers and recent consent, has more effect on delivery and cost than any copywriting change.
- Quiet hours and permitted sending times are set by each market's regulator or operators, so check local rules rather than applying one global window.
- Each SMS segment is billed, so encoding and length should be checked before sending, especially for Arabic text and emoji.
- Every marketing SMS should identify the sender and offer a simple way to opt out, and opt-outs must be honored across all future sends.
- Delivery reports read by country, operator and error code reveal list, route and content problems that an overall delivery rate hides.
This guide is for marketing and CRM teams planning promotional or informational SMS campaigns to thousands or millions of recipients. It sets out the decisions to make before, during and after a send, so campaigns reach handsets, respect local rules and produce results you can measure.
What makes a bulk SMS campaign succeed?
Four things decide the outcome: who you send to, when you send, what the message says and whether you learn from the delivery data. Copywriting matters least of the four if the list or timing is wrong.
| Factor | What goes wrong | What good looks like |
|---|---|---|
| Audience | Old, purchased or unconsented numbers | Recent, consented, deduplicated, opt-outs removed |
| Sender | Unregistered or shared sender ID | Registered brand sender ID for promotional traffic |
| Timing | Outside permitted hours or at a poor moment | Within local rules, aligned to the call to action |
| Message | Vague, long, unexpected encoding | Brand first, one action, known segment count |
| Measurement | Only "sent" counted | Delivery, opt-out and conversion by segment |
How do you prepare a clean SMS list?
List hygiene is the cheapest way to improve delivery and cost, because every message to an invalid or unwilling recipient is paid for and can count against your sender's reputation.
List hygiene checklist
- Normalize numbers to international format with country code, for example +9665XXXXXXXX, and reject entries that fail basic format rules for their country.
- Remove duplicates, including the same number written in different formats.
- Suppress opt-outs from every channel and every previous campaign, not just the last one.
- Check consent records: when and how each person opted in, and for what type of messages. Our opt-in and consent guide covers this in depth.
- Retire stale numbers: contacts with repeated permanent failures or no engagement for a long period. Numbers are reassigned by operators, so old data reaches the wrong people.
- Validate where it pays off: for large or old lists, a number lookup can identify invalid and inactive numbers before you pay to message them. See our HLR lookup guide.
- Never use purchased lists. Beyond the legal risk, they generate complaints that can get a sender ID blocked.
When should you send bulk SMS?
Send within the hours each destination market permits, then at the moment your call to action makes most sense. Quiet hours are market-dependent: some regulators or operators restrict promotional SMS to daytime windows, and some restrict particular days or periods.
- Check local rules per country with your provider and the regulator, for example the TDRA in the UAE and the CST in Saudi Arabia. Do not apply one global window to a multi-country list.
- Schedule by recipient time zone, not your office's. A list spanning the GCC, Egypt and Europe covers several zones.
- Respect cultural calendars: Ramadan shifts daily routines and the hours people are active, while public holidays change shopping patterns.
- Match the offer: same-day offers early enough to act on, event reminders the day before, flash sales when the stock is actually available.
- Avoid peaks you create yourself: if your support team or website cannot absorb a spike, send in waves.
Transactional messages, such as OTPs and order updates, are triggered by the customer and generally follow different rules from promotional sends. Keep them on separate sender IDs where markets require it.
How should a bulk SMS be structured?
Put the brand and the point in the first line, give one action and finish with an opt-out. The recipient decides from the lock-screen preview, so the first 40 to 60 characters do most of the work.
A reliable structure:
- Sender identity: the registered sender ID plus the brand name in the text, if the sender ID is not obvious.
- The value: what the recipient gets, in concrete terms.
- The deadline or condition: date, time, quantity or eligibility.
- One action: a link, a reply keyword or a code.
- Opt-out: a short instruction such as a reply keyword.
Example (English, GSM-7): "Rawda Home: 20% off bedding until Thu. Shop: rawda.ae/b20 Reply STOP to opt out" sits comfortably within one 160-character segment.
Check length and encoding before sending
Each segment is billed. Under the 3GPP SMS specification a single message carries 140 octets, which gives 160 characters in the GSM 7-bit alphabet or 70 in Unicode (UCS-2). Longer messages are split into segments of 153 or 67 characters. One Arabic letter, curly quotation mark or emoji switches the whole message to Unicode. Our character limits guide explains how to write efficiently in Arabic and English.
How should opt-outs work?
Every marketing SMS should identify the sender and give a simple, free way to stop further marketing, and opt-outs must be honored promptly across every future campaign. The UK ICO, for example, says senders must give people the chance to opt out in every subsequent message, must not hide their identity, and, for texts, can offer a free stop message to a code number.
- Use a clear mechanism: a reply keyword where two-way SMS is supported, or a short link to a preference page.
- Process opt-outs centrally so a customer who opts out of one campaign is not messaged by the next.
- Confirm once, if at all, and never use the confirmation to market.
- Keep records of when and how each opt-out was received.
How do you test a bulk SMS campaign?
Test on real handsets on each major operator in your target markets before sending to the full list, then send in stages.
Pre-send checklist
- Message renders correctly on Android and iOS, in both Arabic and English versions.
- Segment count matches the expected cost.
- Sender ID arrives as registered, not replaced with a number.
- Personalization fields are filled; no empty names or raw placeholders.
- Links open the right page on mobile, with tracking parameters.
- Opt-out instruction is present and works.
- Scheduled time is correct for each recipient time zone.
- A seed list of internal numbers is included in the send.
Then send a small first wave, check delivery reports and opt-out rates, and release the rest.
How should you read delivery reports?
Read delivery reports by country, operator and error code, not as a single percentage. The overall rate hides the problems you can fix. Our guide to message delivery statuses defines each status.
| Pattern in delivery reports | Likely cause | Action |
|---|---|---|
| One operator fails, others fine | Sender ID not registered there, or route issue | Raise with provider; check registration |
| Failures spread across operators | Old or invalid numbers | Clean list; validate before next send |
| Many messages stuck as sent, not delivered | Handsets off, or route not returning reports | Wait for validity period; question route quality |
| High delivery, near-zero clicks | Content, timing or relevance problem | Test offer and send time |
| Opt-outs spike after send | Frequency or relevance too high | Reduce frequency; segment better |
Worked example: a UAE retailer's weekend campaign
"Rawda Home" (synthetic), a furniture retailer, plans a weekend sale for 180,000 contacts across the UAE and Oman.
- List: after deduplication, suppression of opt-outs and removal of numbers with repeated permanent failures, the send list is noticeably smaller and cheaper.
- Sender and timing: a registered promotional sender ID is used; sends are scheduled within the permitted window confirmed for each country.
- Content: separate Arabic and English versions are written; the Arabic version is edited to fit two Unicode segments.
- Test and waves: seed numbers on each operator confirm the sender ID and link. A first wave of 10 percent goes out; delivery is checked by operator before the remainder is released.
- Review: results are compared by language, operator and segment, and the learnings feed the next campaign.
Common mistakes and limits
- Sending to everyone instead of the segment the offer suits.
- Ignoring encoding, which silently multiplies cost.
- Using the transactional sender ID for promotions, risking suspension.
- Copying another market's rules; quiet hours, consent and sender rules vary.
- Treating "sent" as success. Only delivery and conversion data show results.
- Limits: regulations and operator policies change. This guide describes practice, not legal advice; confirm current rules with the regulator and your provider before each new market.
How OmniChannels.ai helps
OmniChannels.ai lets you run SMS campaigns alongside WhatsApp, Telegram and email, with Excel or CSV upload, preview, scheduling and duplicate filtering. Campaigns support Arabic and English. Delivery reports, with summary and advanced views, filters and CSV export, show results by recipient so you can clean lists and compare sends. SMS is delivered through BroadNet Technologies, a telecom messaging company with SMS operator connectivity, and billing runs on a prepaid wallet. Learn more about our SMS channel.
Frequently asked questions
What is the best time to send bulk SMS?
There is no universal best time. Start with what is allowed: many markets restrict promotional SMS to daytime hours, and some restrict sending on specific days. Within the permitted window, choose a time linked to the action you want, such as before lunch for food offers or the evening before an event. Test two time slots on comparable segments and keep the winner.
How often can I send marketing SMS?
Frequency should match what customers agreed to and what they find useful. Rising opt-out rates after each send are the clearest sign you are sending too often. Many brands send promotional SMS far less frequently than email because SMS is more intrusive. Transactional messages such as order updates are separate and should follow the customer's actual activity.
Do I need to include an opt-out in every SMS?
For marketing messages, best practice is yes, and many jurisdictions require a simple way to refuse further marketing. The UK ICO, for example, says marketers must give people the chance to opt out in every subsequent message. Transactional messages such as OTPs usually do not carry opt-out text, but they must not contain marketing either.
Why is my bulk SMS delivery rate low?
The usual causes are invalid or outdated numbers, unregistered or blocked sender IDs, content filtered by operator firewalls, and handsets that stay switched off until the message expires. Break delivery reports down by operator and error code. One operator failing points to sender ID or route problems; failures spread evenly suggest list quality.
Should bulk SMS include links?
Links are fine when they are expected and trustworthy. Use your own branded domain where possible, because generic public link shorteners are commonly abused by phishing and may be filtered by operators. Keep the link at the end, avoid multiple links and make sure the landing page works on mobile before sending.
Sources
Keep reading
More guidesSMS & OTP
RCS Business Messaging Explained: Verified Senders and Rich Cards
RCS Business Messaging explained: verified sender agents, rich cards, carousels and suggested replies, device and operator support, and how SMS fallback works.
8 min read
SMS & OTP
SMS Character Limits: GSM-7, Unicode, Arabic and Emoji Explained
SMS character limits explained: GSM-7 vs UCS-2, 160 and 70 characters, 153 and 67 per segment, and why Arabic and emoji raise cost. Write SMS that fit.
8 min read
Marketing
Automated Appointment Reminders on WhatsApp and SMS: A Guide
Automate appointment reminders on WhatsApp and SMS for clinics, salons, hotels and services: timing, templates, confirm and reschedule buttons, and fallback.
8 min read
