MMS charges, MMS not arriving, and how it really differs from SMS
Published
On this page
Key takeaways
- The real difference between MMS and SMS is the route: SMS needs no data connection, while MMS travels over a data connection.
- An MMS charge can mean three separate costs: the carrier plan, data usage, and the platform cost of sending at scale.
- Enterprise MMS is billed per message successfully submitted to the carrier, regardless of whether the recipient ever taps download.
- The most common reason an MMS never arrives is mobile data being off with only Wi-Fi on.
- When sending MMS through the X Lead Connect API, image dimensions must not exceed 800 × 800 px.
After years in messaging, the questions we get about MMS come down to four. Customers ask them, colleagues ask them, and so does anyone who has just seen an odd-looking message on their phone.
| Question | The situation behind it |
|---|---|
| What is MMS, and what is a multimedia message? | A message arrived that looks different from usual |
| How is MMS different from SMS? | Deciding whether this is worth caring about |
| Does MMS cost anything? What is an off-net transmission fee? | An unexplained line on the bill |
| Why won’t an MMS arrive? | The image is stuck spinning and never downloads |
We have already answered the first one — What is MMS? How it differs from SMS, what it costs, and when to use it. This piece takes the other three, because they are the ones nobody answers properly, and they are exactly what you need to understand before sending MMS at scale.
The real difference between MMS and SMS: they take different routes
Most articles will tell you MMS carries pictures and SMS carries text. True, but beside the point. The point is that the two do not travel the same way.
| SMS | MMS | |
|---|---|---|
| Transport | The carrier’s signalling channel — no data connection needed | The handset uploads over a data connection to the carrier’s MMSC; the recipient’s handset downloads from theirs |
| Content | Plain text, 160 characters per segment (70 with any Unicode) | Text plus image / animation / short video, and long text stops being chopped into segments |
| What the recipient must do | Nothing, it appears | May have to tap “download”, and needs data at that moment |
| How it fails | Usually number, routing or list problems | All of the above, plus the data leg |
| Enterprise billing unit | Per segment | Per message |
In one line: SMS fails on signal or list problems; MMS can additionally fail on the leg that moves the media. Everything below grows out of that.
(On why SMS bills per segment and why Chinese characters cut you to 70, see SMS billing segments and Unicode.)
Charges: three different costs, routinely conflated
People searching “MMS charge” may be asking about any of three unrelated things.
1. The carrier plan
A consumer handset sending an MMS is usually charged per message, and on-net versus off-net can be priced differently — which is where terms like “off-net transmission fee” come from. Receiving may be free, or may just consume data, depending on the plan.
Only your own tariff can answer the amount. We do not quote carrier pricing on anyone’s behalf — check your plan or your statement.
2. Data usage
The media in an MMS moves over a data connection. Some plans carry MMS on a dedicated APN and exclude it from your data allowance; others simply count it. That is why data can tick down when you have not opened a browser.
3. The platform cost of sending at scale
This one is unrelated to the two above. Sending MMS through a platform is billed per message successfully submitted to the carrier — regardless of whether the recipient had data on, or ever tapped download.
That distinction matters and it catches people out: billing happens at the moment of successful submission, not at the moment of reading. The mechanics are in the next section.
If your message is plain text but long, “one MMS or three SMS segments” is a real arithmetic question — we did the maths in A smarter way to save when a message runs past two SMS segments.
Six reasons an MMS never arrives
Ordered by how often we actually see them.
| # | Cause | What it looks like | How to confirm |
|---|---|---|---|
| 1 | Mobile data off, Wi-Fi only | SMS is fine, MMS hangs on download | Turn mobile data on and retry |
| 2 | Wrong APN settings | Starts failing after a SIM swap, new handset or network reset | Compare against the carrier’s published APN |
| 3 | File over the carrier’s size limit | Sends fine, arrives broken or not at all | Compress the asset; enterprise limits below |
| 4 | Auto-download disabled | Just a greyed-out “download” button | The messaging app’s MMS settings |
| 5 | iMessage / RCS confusion | Fine between iPhones, breaks cross-platform | Blue bubbles are iMessage; only green ones are SMS/MMS |
| 6 | Corporate network or VPN | Disproportionately common on company-issued devices | MMS must reach the carrier’s MMSC; a VPN that reroutes it breaks delivery |
Point 5 deserves a sentence more. iPhones have supported RCS since iOS 18 and Android has been largely RCS between handsets for years, so a growing share of “looks like MMS” rich messages are actually RCS. For enterprise sending in Hong Kong, though, SMS and MMS remain the widest-reaching, verifiably-delivered common denominator — business RCS coverage is still being built out. We are not going to tell you RCS has replaced MMS, because for Hong Kong business sending it has not.
Two ways a business can send MMS
One: the dashboard, and you are sending within minutes
Most customers never touch the API. The whole job runs from the UFOSEND / X Lead dashboard: upload the list, drop in the image, write the copy, pick a send time. The interface walks through it in order, and a first-time user is usually sending within a few minutes. Results, per-message delivery status and link clicks all come back to the same dashboard. For a tour of the dashboard and its reports, see Inside the SMS platform — dashboard and reporting.
If the requirement is “push this month’s offer”, the dashboard is enough. No engineer required.
Two: the API, so your own systems can send
The API is for when an order system, CRM or membership platform needs to trigger MMS automatically — an e-voucher when an order completes, a birthday offer that goes out on the day.
What follows is the actual X Lead Connect specification, not generic “industry guidance”. Sending one MMS is POST /v1/mms/send, one recipient per call:
| Parameter | Required | Notes |
|---|---|---|
country_code | Yes | Region code, 1–3 digits, no leading zeros |
mobile | Yes | Recipient’s mobile number, maximum 10 digits |
sender | No | Sender name, 3–11 alphanumeric characters. Required in regions supporting Sender ID |
subject | Yes | Message subject |
text | Yes | Message body text |
image | No | Image object with source, value and mime_type. Required in some regions |
send_also_ofca_registrants | No | Defaults to false, Hong Kong delivery only |
Hard limits on the image:
sourceis eitherbase64orurlmime_typesupportsimage/jpeg,image/pngandimage/gif- Dimensions must not exceed 800 × 800 px
Full parameter reference, response examples and code snippets in six languages are in the X Lead Connect API documentation; integration and quickstart are on the SMS API page.
”Submitted” is not “delivered”
The synchronous response only means the platform accepted the request and handed you a ref_id. The real outcome comes back in two callbacks.
First callback (send request report) — this is what decides billing.
rc = 100, statusSMD: a valid send, submitted to the carrier, chargedrc = -100: not charged. Common reasons areIM(incorrect country/mobile number),OFCA(number filtered as a Hong Kong do-not-call registrant),IUL(on the unsend list),IP(insufficient points),IS(sender name invalid or unregistered)
Second callback (delivery report / DLR) — the carrier’s final state: DELIVRD, EXPIRED, UNDELIV, REJECTD or UNKNWN.
If your reporting only records the synchronous response, it is telling you how many HTTP requests you issued. The full breakdown is in SMS DLR status codes explained.
Hong Kong compliance: what send_also_ofca_registrants really means
An MMS to a Hong Kong mobile number is a commercial electronic message in law, regulated by the Unsolicited Electronic Messages Ordinance exactly as SMS is — sender information, an unsubscribe facility, honouring unsubscribes within 10 working days, and no sending to numbers on the do-not-call registers.
send_also_ofca_registrants defaults to false, meaning the platform screens registered numbers out for you by default. Setting it to true is a declaration that you hold those recipients’ consent — and the burden of proving it sits with you, not the platform. It is not a “boost deliverability” switch.
The full checklist is in Hong Kong promotional messaging compliance checklist.
FAQ
Does MMS need mobile data to be received?
Yes. The media travels over a data connection. On Wi-Fi only with mobile data off, the notification may arrive but the download will fail.
Am I charged for receiving an MMS?
It depends on your plan. Most plans charge per message sent; receiving may only consume data. Check your own tariff — there is no universal answer.
Which costs more, MMS or SMS?
Message for message, MMS usually costs more than a single SMS segment. But once a message runs to three or more segments, one MMS is often cheaper and will not be split.
Why do some people get my picture message and others don’t?
Usually the recipient’s device or network state differs: data off, wrong APN, auto-download disabled, or they are on iMessage with another iPhone user while you are not.
Is there a character limit on MMS?
The text is not segmented the way SMS is at 160/70 characters, but for readability and compatibility keep the body to a few hundred characters and the subject much shorter.
What are the image limits for enterprise MMS?
On X Lead Connect: JPEG, PNG or GIF, no larger than 800 × 800 px, supplied as base64 or a URL.
Will RCS replace MMS?
That is the long-term direction, and iPhones have supported RCS since iOS 18. But for business sending in Hong Kong, RCS channel coverage is still being built out, and SMS and MMS remain the widest-reaching option with per-message delivery reporting.
Do I need a registered Sender ID to send MMS to Hong Kong numbers?
The sender parameter applies in regions that support Sender ID, and the name must be registered on your account first — otherwise the first callback returns IS. The Hong Kong # Sender ID process is in The complete # Sender ID application walkthrough.