Blog / Marketing

Seven SMS marketing mistakes that cost small businesses money

October 22, 2026·6 min read·By Kodefoundry

These are ordered roughly by how much they cost, not by how often they happen.

1. Texting people who never opted in

Statutory damages under the TCPA run from $500 per message. There is no version of this that ends well, and "they were already a customer" is not a defence for marketing messages.

2. Sending to a list full of duplicates

You pay twice to annoy one person. At a 9 percent duplicate rate, which is unremarkable for a phone book that has synced across Gmail and iCloud for years, that is 9 percent of every campaign budget spent generating complaints. The iPhone's own duplicate tool will not find most of them, because it matches names rather than numbers.

3. Ignoring message length

161 characters costs double what 160 does. Emoji are worse: a single emoji switches the whole message to a different encoding and drops the per-segment limit from 160 characters to 70. One smiley face can triple the cost of a campaign.

4. Local number formats

Numbers saved as 07700 900123 rather than +447700900123 fail at send time, after you have been billed for the attempt on some platforms. This is the single largest cause of the gap between "sent" and "delivered" in first campaigns.

5. Sending at the wrong hour

An international list on a single schedule means someone gets a promotional text at 3am. The opt-out rate tells you about it immediately, and in some jurisdictions it is a compliance issue rather than a courtesy one.

6. No identification in the message

The recipient does not have your number saved. An unidentified text reads as a scam, and in 2026 people are correctly suspicious. Say who you are in the first five words.

7. Treating SMS like email

Weekly newsletters work in an inbox and fail on a lock screen. SMS tolerates low frequency and high relevance. Invert that and people block the number, which is permanent in a way an email unsubscribe is not.

The common thread

Five of these seven are list problems rather than message problems, and all five get solved before the CSV exists. Cleaning on the phone, merging duplicates properly and exporting in the right format costs about thirty seconds with Pluck, against an afternoon in a spreadsheet.

The opt-out list is not optional plumbing

Re-uploading a fresh export over a platform's existing list can resurrect people who opted out. Most platforms suppress these automatically, some do not, and the ones that do only work if you upload rather than send through a separate API path.

Check this explicitly before your second campaign. The first one cannot get it wrong, the second one can.

Sending from a number nobody can reply to

Short codes and some sender IDs are one-way. If your call to action implies a conversation and the channel cannot carry one, you have built a dead end into the campaign.

Measuring the wrong thing

Delivery rate tells you the plumbing works. Reply rate, click rate and opt-out rate tell you whether the campaign worked. A 99 percent delivery rate on a message that nobody acted on is a successful failure.

Texting too often, because the first one worked

The most common path to a dead list is a campaign that performs well, followed by a decision to run it weekly. SMS tolerance is far lower than email tolerance and the punishment is permanent: a blocked number cannot be won back with better copy.

Twice a month is a reasonable ceiling for most small businesses. If you have more to say than that, say it by email.

Exporting the list the slow way

This is a cost rather than a risk, but it is the reason most people run fewer campaigns than they planned. If getting a clean list takes an afternoon in a spreadsheet, you will do it once and then stretch that stale file across months.

Numbers go out of date, new customers never make it in, and the campaign gets worse every time you reuse the file. Making the export quick is what makes the list current.

Get Pluck for iPhone

Pluck does the steps in this guide on your iPhone, with no server, no account, and no analytics. Group your contacts by country, find duplicates the iOS tool misses, and export to CSV, Excel, TXT, or vCard.

Download Pluck on the App Store