This is the most common and least honestly explained problem in Malaysian bulk SMS. Here is what is actually happening.
There are three separate events in the life of an SMS, and most dashboards blur them into one green tick:
| Stage | What it proves | What it does not prove |
|---|---|---|
| Submitted | Your provider accepted the message and billed you | Nothing about the telco |
| Accepted by operator | Maxis/CelcomDigi/U Mobile took the message | Nothing about the handset |
| Delivered (DLR) | The network reported success | That a human actually saw it |
Many aggregators report stage 1 or 2 as "delivered". So a green dashboard is compatible with zero messages arriving. If your provider cannot show you a number that differs between "sent" and "received", you are not looking at real delivery data.
If your messages show a brand name as the sender (for example MYSHOP) and that name
was never registered with the Malaysian operators, the network can silently drop it.
Since the national push against scam SMS, operators have become far stricter about
unregistered alphanumeric senders. No error is returned. You are still billed.
Fix: send over a registered shortcode, or
register your own sender ID.
Operators run keyword and pattern filters. Messages containing URL shorteners, certain
financial terms, or wording that resembles known scam templates get dropped at the network
layer regardless of who your provider is.
Fix: use your full domain instead of a shortener,
avoid urgency phrasing ("act now", "verify immediately"), and test the exact wording in a
small paid batch before scaling.
Deactivated, ported to a network your route does not cover, out of coverage, or a landline
that was typed into a mobile field. Old marketing lists decay roughly 20–30% per year.
Fix: clean your list, remove anything that has
failed repeatedly, and stop re-sending to numbers that never once delivered.
Android and iOS both file suspected spam into a separate folder. The message was delivered
— the recipient simply never saw a notification. This is invisible in every delivery report
that exists.
Fix: nothing technical will solve this. Sending
relevant messages to people who opted in is the only real defence.
If a message containing Chinese, Tamil or emoji is sent as GSM-7 instead of Unicode, every
non-Latin character arrives as ?. The message was technically delivered, but it
is unreadable. This is a provider-side configuration bug, not a network problem — and it is
more common than you would expect.
Fix: send yourself one message in the exact
language you plan to use, before you buy credit in bulk.
?Each test costs a few sen. Doing all five before spending on a campaign of 10,000 messages is the single highest-return habit in SMS marketing.
Nobody can guarantee delivery — operators make that call and they do not explain themselves. What a provider can do is be straight with you: show submitted and received as separate numbers, refund what never went out, tell you before you pay if your content is likely to be filtered, and let you test cheaply first.
We load free trial credit so you can run all five tests above before spending anything.