Stop Getting Banned: How to Import Contacts and Send a WhatsApp Campaign the Right Way

You have an Excel sheet with 4,218 customer rows exported from your Shopify store or your retail POS in Karachi or Delhi. It is Thursday afternoon. You want to send a weekend discount code to all of them.
If you try to do this by copying and pasting messages on your phone, you will get thumb cramps by the fifty-first message. If you use a cheap Chrome extension or a random Android app that promises "unlimited free bulk sends," WhatsApp will likely ban your number before your biryani arrives for lunch.
There is a right way to do this that protects your phone number and actually gets your messages read. This guide explains how to format your contact list, choose the right sending method, and launch a campaign without getting your business account blacklisted.
The Three Ways to Send WhatsApp Campaigns (And What They Cost)
You cannot just upload a CSV to the standard WhatsApp app. You have three main options, each with distinct limitations and costs.
1. Unofficial Automation Tools and Chrome Extensions
These tools mimic a human clicking "send" on WhatsApp Web. They are cheap, usually costing between $10 and $25 a month.
The Catch: They violate WhatsApp’s Terms of Service. WhatsApp's automated systems easily detect the unnatural speed of these tools. If you send 500 messages in 10 minutes from a personal number, your account will be flagged and permanently banned. Do not use this method for your primary business number.
2. The WhatsApp Business App Broadcast Lists
This is the free, built-in feature on the standard business app you download from the Google Play Store or Apple App Store.
The Catch: You can only add 256 contacts to a single broadcast list. More importantly, the recipient must have your number saved in their phone book. If they do not have you saved, your message simply never delivers. For a cold list or a general customer database, this option is useless.
3. The Official WhatsApp Cloud API
This is the official method supported by Meta. It allows you to import thousands of contacts, send messages simultaneously, and use green-tick verified sender profiles.
The Cost: Meta charges you per conversation. A conversation is a 24-hour window that starts when your message delivers. The price depends on the recipient's country and the category of your message (Marketing, Utility, or Authentication).
| Recipient Country | Marketing Message Cost (Approx.) | Utility Message Cost (Approx.) |
|---|---|---|
| India (IN) | INR 0.78 per conversation | INR 0.35 per conversation |
| Pakistan (PK) | USD 0.024 per conversation | USD 0.012 per conversation |
To check the exact, up-to-date rates for every country, you can view the official Meta WhatsApp Business Price List.
Step 1: Clean and Format Your Contact List in Excel
The most common reason WhatsApp campaigns fail to send is bad data formatting. If your CSV file has formatting errors, the import tool will reject the entire sheet or skip random rows.
Open your spreadsheet and apply these three rules:
- Remove the leading zero: In Pakistan, numbers are often written as
03001234567. In India, they might start with098100.... You must strip that first zero. - Add the country code: Every number must start with the country code (92 for Pakistan, 91 for India). No plus signs (+), no spaces, and no dashes. A Pakistani number must look like this:
923001234567. An Indian number must look like this:919810012345. - Keep your columns simple: Your CSV should only contain the essential data you need. For example:
Phone,First_Name, andCustom_Variable_1(like an order number or discount code).
If your Excel sheet has thousands of numbers starting with 0, do not edit them manually. Use this Excel formula to convert a 10-digit number in cell A2 to the correct Pakistani format:
=CONCATENATE("92", RIGHT(A2, 10))
Once your numbers are clean, save the file. Choose CSV (Comma Delimited) (*.csv) or CSV UTF-8 (Comma Delimited) if your customer names contain Urdu, Hindi, or special characters.
Step 2: Create and Approve Your Template
When using the official WhatsApp API, you cannot send a custom, free-form text message to start a conversation. You must use a pre-approved template. This prevents businesses from sending raw spam.
You can create these templates inside your Meta Business Suite or through your API provider’s portal. If you use a tool like WA Link to upload your CSV, the software maps these columns automatically to your approved templates. While WA Link provides the interface to schedule these campaigns and track read rates, we do not bypass Meta's template approval rules—nobody can.
A typical marketing template looks like this:
"Hi {{1}}, your order {{2}} is ready! Use code EID20 for 20% off your next purchase. Click below to shop."
The numbers in double curly brackets are variables. When you upload your CSV, your sending tool will replace {{1}} with the customer’s name and {{2}} with their order number.
Pro Tip: Meta's automated systems approve templates within two minutes to two hours. To get quick approval, avoid using overly aggressive sales language in your template name, and always categorize it correctly as "Marketing."
Step 3: Upload and Run a Test Campaign First
Never import 5,000 contacts and hit "Send" immediately. If you made an error in your template variables, you will waste money and annoy your customers.
- Create a test CSV file containing only three to five phone numbers (your own, your business partner's, and a colleague's).
- Upload this small CSV to your campaign manager.
- Map the columns. Ensure the system knows that the "Phone" column in your CSV matches the "Recipient Phone" field, and "First_Name" matches variable
{{1}}. - Send the test campaign.
- Check your phone. Did the message arrive? Did the name display correctly? Did the link buttons work?
If the test looks correct on your phone, you are ready to upload the full list.
Three Mistakes That Will Get Your Account Suspended
Even when using the official API, Meta can still pause your templates or lower your sending limits if your customers complain.
1. Sending Without an Opt-Out Option
If a customer receives an unwanted message and cannot find an easy way to stop it, they will press the "Block" or "Report" button. If your report rate exceeds 1% to 2%, Meta will downgrade your phone number's quality rating from Green to Yellow or Red. Always include a quick-reply button that says "Opt-Out" or "Unsubscribe." It is better for a customer to opt out than to report your number to WhatsApp.
2. Exceeding Your Daily Messaging Limits
New WhatsApp API accounts start at Tier 1. This limits you to sending messages to 1,000 unique customers in a rolling 24-hour period. If you try to upload a list of 5,000 contacts on day one, your campaign will stop sending after the 1,000th message. Meta will automatically upgrade you to Tier 2 (10,000 messages per day) once you consistently send high-quality messages to your daily limit.
3. Using a Fresh Number with No Warm-Up
If you register a brand-new SIM card on the WhatsApp API and immediately send 1,000 marketing messages on the first morning, your quality score will drop. Warm up your number by sending utility messages, transactional updates, or messages to your most loyal customers first before blasting a cold promotional list.
Frequently Asked Questions
Can I use my existing personal WhatsApp number for API campaigns?
No. Once you register a phone number on the official WhatsApp Cloud API, that number can no longer be used on the standard WhatsApp or WhatsApp Business mobile apps. If you want to keep using your personal app, you must buy a new SIM card specifically for your API campaigns.
What happens if a customer replies to my campaign message?
When a customer replies to your template message, the 24-hour conversation window switches to a "user-initiated" session. You can reply with free-form text, images, or audio files for free within that 24-hour window. You will need a shared team inbox or a chatbot integration to read and reply to these incoming messages.
Why did my CSV import fail with "invalid format" errors?
This usually happens because of hidden spaces or non-numeric characters in your phone number column. Open your CSV in a plain text editor like Notepad. If you see commas inside your phone numbers, or if the numbers are written as +92 300-1234567, the import will fail. Clean the numbers so they are pure digits.
How long does it take for a campaign of 10,000 messages to deliver?
On the official Cloud API, messages are sent almost instantly. A batch of 10,000 messages typically delivers within 5 to 15 minutes, depending on the network speed of the recipient's mobile carriers. You can monitor the real-time delivery and read statuses in your provider's dashboard.