Compare your sends with your own sends, not with a published figure
Any benchmark you find for SMS conversion is an average across stores that sell different things at different prices to lists built in different ways, so it cannot tell you whether your programme is working.
The reasons it varies are structural rather than incidental. A store selling something for twenty dollars converts a text far more easily than one selling something for four hundred. A list built from a discount popup contains people who joined for a code. A list built from restock alerts contains people who wanted a specific product. Those two lists will produce results that are not remotely comparable, and neither of them is doing anything wrong.
So build your own baseline. Take your last several campaigns, record the conversion rate for each, and use the range as your reference. Do the same separately for each flow. After a couple of months you have a number that actually means something, because it holds constant everything a published benchmark cannot.
The question that follows is more useful anyway. Not whether the rate is good, but whether the revenue from the send exceeded what it cost to send it, plus the margin you gave away in the offer.
Decide what you are dividing by before you compare anything
Three different numbers all get called the SMS conversion rate, and comparing one against another is the most common reason a report looks wrong.
Orders divided by messages delivered is the strictest and the most useful for judging a campaign. It includes everyone who received the message and did nothing, which is the honest denominator.
Orders divided by clicks is much higher and describes something else entirely. It tells you whether the landing page did its job once someone was interested. Useful, but not the same measurement.
Orders divided by messages sent, rather than delivered, quietly includes numbers that never received anything. If your list has stale numbers, this understates you, and the gap between sent and delivered is worth watching in its own right as a sign of list quality.
Pick one, use it everywhere, and note it on the report. Then be careful with the attribution window. SMS platforms credit an order to a message within a set period after a click, and a longer window flatters the number. If you shortened or lengthened that setting, your history is no longer comparable with itself.
Flows and campaigns are two different measurements
Never judge them together. A flow triggered by something the customer just did will convert far better than a broadcast, and averaging the two produces a number that describes neither.
Flows fire at the moment of relevance. An abandoned cart text goes to someone who was buying minutes ago. A back-in-stock alert goes to someone who asked to be told. A shipping notification reaches someone who is already thinking about the order. These convert well because the timing does the work, and their volumes are small.
Campaigns go to a list on your schedule, whether or not the recipient was thinking about you. They will always convert at a lower rate, and that is not a failure.
So report them separately and set separate expectations. Then look at where the volume actually is. Most stores find that flows produce a high rate on few messages, while campaigns produce most of the total revenue on many messages. Both matter, and improving them means different work: flows are improved by timing and triggers, campaigns by relevance and segmentation.
What actually moves the number
Four things change SMS conversion more than the wording of the message, and they are worth working through in order.
List quality first. A list built from people who wanted something specific converts better than one built from a blanket discount offer, and no amount of copywriting closes that gap. If your rate is poor across every send, look at how the numbers were collected.
Segmentation second. Sending one offer to everyone means most recipients get something irrelevant. Splitting by what someone last bought, how recently, and whether they have ever ordered turns one weak send into three reasonable ones.
The landing page third. A text has almost no room to explain, so the page it opens has to continue the message exactly. If the text mentions a specific product, the link should open that product, not the homepage or a general sale page. This single mismatch wastes more SMS clicks than anything else.
Timing fourth. SMS suits things that are time-sensitive, and quiet hours apply based on where the recipient is. A message that arrives at the wrong hour converts badly and costs you subscribers.
Read conversion next to cost, because every message is billed
SMS is the one channel where sending has a direct, per-message cost, so a conversion rate on its own can hide an unprofitable programme.
Work out revenue per message sent and cost per message sent for every campaign. The gap between them, after the margin given away in any offer, is what the send actually produced. A campaign with a respectable conversion rate can still lose money if it went to a large list, carried a generous discount, and sold a low-margin product.
That arithmetic argues for smaller, better-targeted sends. Removing the least engaged part of the list from a campaign usually raises the conversion rate and lowers the cost at the same time, which is unusual among marketing decisions.
Also watch the opt-out rate on every send, and treat it as a cost. An SMS list is small, expensive to build and slow to replace, so a send that converts adequately while removing a chunk of subscribers has borrowed from next quarter. Set a level of opt-outs you are not willing to exceed, and if a send crosses it, change the segmentation or the frequency rather than the copy.
Worked example, not a result
Reading one SMS campaign properly
- Messages delivered
- 5,000
- Clicks
- 350
- Orders
- 60
- Conversion on delivered
- 1.2 percent
- Conversion on clicks
- 17 percent
- Revenue at a $70 average order
- $4,200
- Messages cost at $0.02 each
- $100
- Opt-outs
- 35
Worked example, not a result