Blog / Tutorial

A checklist for your first bulk SMS campaign

October 22, 2026·6 min read·By Kodefoundry

The order matters here. The first four items stop you wasting money or breaking the law. The rest are craft.

Before you touch a platform

Confirm you have documented consent for every number on the list. Not a plausible argument for consent, a record. If you cannot produce the date and the mechanism for a given contact, that contact does not go in this campaign.

Then clean the list. Remove duplicates, drop anyone with no mobile number, and convert everything to E.164. Doing this after you upload means doing it twice.

Platform setup

If you are sending in the US on a standard 10-digit number, register for A2P 10DLC before anything else. Unregistered traffic gets filtered quietly and your delivery report will not tell you why.

Set your sender ID or number, and check it displays sensibly on both iOS and Android. Then send a test to your own phone and to one colleague on a different carrier.

The message itself

Identify your business in the first few words. The number means nothing to the recipient, so an unidentified text reads as spam before they finish the first line.

Keep it under 160 characters if you can. Past that it splits into multiple segments and bills as multiple messages, which turns a $32 campaign into a $64 one without changing a thing about the result.

Include an opt-out. STOP is the convention and most platforms handle it automatically, but confirm yours does rather than assuming.

Timing

Schedule in the recipient's timezone, not yours. If the list spans countries, split it first. Country grouping at export time means you get one file per market and can schedule each sensibly.

After the send

Read the delivery report rather than the send report. The send report tells you what was queued. The delivery report tells you what arrived, and the gap between the two is where every data problem shows up.

Numbers that failed with an invalid-format error go back on the list to fix, not in the bin. They are usually real people whose number was saved in local format.

Send to yourself first, on two carriers

Carrier filtering is not uniform. A message that arrives on Verizon can be dropped on T-Mobile, particularly if it contains a shortened link. Test on at least two networks before committing the whole list.

Shortened links from public shorteners like bit.ly are heavily filtered because spammers use them. A branded short domain, or the full URL, gets through far more often.

Start with a slice

Send to 10 percent of the list first and read the delivery report before releasing the rest. If something is wrong with the formatting or the sender configuration, you find out at a tenth of the cost.

Have the reply path ready

People will reply. If your number cannot receive messages, or nobody is watching the inbox, you have spent money generating conversations you then ignore. Decide before you send who reads replies and how fast.

Keep the file

Save the exact CSV you uploaded. When a number bounces or someone claims they never opted in, the file you sent is the record of what you actually did.

Check what the link preview shows

Messaging apps expand links into a preview card pulled from the page's Open Graph tags. If the destination has no OG image or a stale title, your campaign looks broken in the thread even when the message is fine.

Open the link on a phone before you send, and fix the destination page's tags rather than the message if the card looks wrong.

Decide what success means before you send

Write the number down first: replies, clicks, bookings, whatever the campaign is for. Deciding afterwards means grading your own homework against whatever the result happened to be.

A campaign with no target is impossible to call a failure, which sounds comfortable and means you learn nothing from it.

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