Skip to main content

Send Bulk WhatsApp Messages Without Getting Banned

Coreintermediate10 minutes11 min read

Reach 1,000+ contacts safely. Built-in anti-spam throttling prevents bans. Personalization, rate limits & campaign monitoring included.

WhatsApp bans are instant and permanent — one spam complaint from the wrong bulk send and you lose access to 2 billion users forever. Competitors offer "fast" bulk messaging that triggers bans in hours. MoltFlow's anti-spam throttling (included on all paid plans) has saved customers thousands in lost accounts by mimicking human sending patterns, randomizing delays, and enforcing safe rate limits. This guide shows you how to reach hundreds or thousands of contacts without risking your number.

What You'll Need

Before starting, make sure you have:

  • A connected WhatsApp session — Your WhatsApp account must be connected and showing "WORKING" status. See our 2-minute connection guide if you haven't done this yet.
  • Business or Growth plan — Bulk sending with anti-spam protection is a premium feature (starts at $39/month). The Free plan only allows individual messages. Upgrade here to unlock bulk messaging and prevent costly bans.
  • A contact group with recipients — You'll need at least one custom contact group. See our custom groups guide if you need help creating one.

Important: WhatsApp's terms of service prohibit spam. Only send messages to contacts who have opted in or have an existing relationship with you. Unsolicited bulk messaging can result in a permanent ban.

Why Accounts Get Banned

WhatsApp's anti-spam systems are sophisticated and constantly evolving. They flag accounts that exhibit spam-like behavior patterns, including:

  • Identical messages sent rapidly — Sending the exact same text to many recipients within seconds triggers spam detection
  • High send rates — More than 200-300 messages per hour from a new account raises red flags
  • Generic, impersonal content — Messages that look like mass marketing (no personalization, generic greetings)
  • High block/report rates — If recipients block or report your messages, WhatsApp will ban your number

MoltFlow solves these problems with three key protections (included on all paid plans):

  1. Automatic throttling — Randomized delays between messages (5-10 seconds default) mimic human sending patterns
  2. Message personalization — Variable substitution ensures each recipient gets a slightly different message
  3. Configurable rate limits — You control maximum hourly and daily send rates based on your account's age and reputation

Why this matters: Customers report recovering $5,000-$20,000 in business value by preventing WhatsApp account bans. A banned number loses access to all contacts, chat history, and Business API credentials permanently.

Let's walk through the safe way to send bulk WhatsApp messages.

Step 1: Create a Contact Group

Navigate to Dashboard > Outreach > Custom Groups in your MoltFlow dashboard (available on Business and Growth plans).

If you haven't created a contact group yet, click "Create Group" and follow these steps:

  1. Enter a descriptive name (e.g., "Newsletter Subscribers", "VIP Customers", "Product Launch List")
  2. Optionally add a description to remind yourself what this group is for
  3. Click Create

Now add your recipients to the group. You have two options:

Option A: Manual entry

Click "Add Members" and enter phone numbers one by one. Format: country code + number with no plus sign or spaces (e.g., "1234567890" for a US number).

Option B: CSV import

Prepare a CSV file with a phone column header and one phone number per row. Click "Import CSV" and upload your file. MoltFlow will validate all numbers and skip any invalid ones.

Example CSV:

text
phone
1234567890
9876543210

Using the API, you can create groups and add members programmatically:

bash
# Create group
curl -X POST https://apiv2.waiflow.app/api/v2/custom-groups \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"name": "VIP Customers", "description": "High-value contacts"}'

# Add members (use group_id from response above)
curl -X POST https://apiv2.waiflow.app/api/v2/custom-groups/{group_id}/members/add \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"contacts": ["1234567890", "9876543210"]}'

Once your group has at least one member, you're ready to create a bulk send campaign.

Step 2: Compose Your Bulk Message

Navigate to Dashboard > Outreach > Bulk Send and click "Create Campaign".

You'll see a campaign creation form with these fields:

  • Campaign name — For your reference (e.g., "Black Friday Sale Announcement")
  • Session — Select your connected WhatsApp session
  • Target group — Choose the custom group you created in Step 1
  • Message body — The text to send to all recipients

The key to avoiding spam detection is personalization. MoltFlow supports these variables:

  • {name} — Recipient's saved contact name (falls back to phone number if no name is saved)
  • {phone} — Recipient's phone number

Example message with personalization:

text
Hi {name}! 👋

Just wanted to let you know we're running a special promotion this weekend. Reply "YES" if you'd like to hear the details.

Thanks!

When sent to a contact named "Alice" with phone "1234567890", she receives:

text
Hi Alice! 👋

Just wanted to let you know we're running a special promotion this weekend. Reply "YES" if you'd like to hear the details.

Thanks!

This personalization serves two purposes:

  1. Defeats spam detection — Each message is slightly different, so WhatsApp doesn't see identical duplicates
  2. Improves engagement — Personalized messages get higher response rates and fewer blocks/reports

Keep your message under 500 characters for best deliverability. Longer messages work, but shorter messages are less likely to trigger spam filters.

Step 3: Configure Send Rate and Throttling

In the campaign creation form, you'll see Throttling Settings. These control how fast MoltFlow sends messages.

MoltFlow's default settings are designed to maximize safety:

  • 1 message every 5-10 seconds (randomized delay) — Mimics human sending speed
  • Max 200 per hour — Conservative rate for new accounts
  • Max 1,000 per day — Safe daily limit

You can adjust these settings, but slower is always safer. Here are recommended limits based on account age:

Account AgeMessages/HourMessages/DayNotes
New (0-30 days)50-100500-1,000Start slow to build reputation
Established (1-6 months)150-2501,500-3,000Gradually increase if no issues
Mature (6+ months)300-5005,000-10,000High-volume accounts only

Warning: Setting send rates above these limits significantly increases ban risk. WhatsApp can detect automation patterns and will ban accounts that send too aggressively.

If your campaign has 1,000 recipients and you set 100 messages/hour, the campaign will take 10 hours to complete. This is intentional — slow, steady sending protects your account.

Using the API, you can configure throttling when creating a campaign:

bash
curl -X POST https://apiv2.waiflow.app/api/v2/outreach/bulk-sends \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Black Friday Sale",
    "session_id": "YOUR_SESSION_ID",
    "group_id": "YOUR_GROUP_ID",
    "message": "Hi {name}! Special offer inside...",
    "throttle_per_hour": 100,
    "throttle_per_day": 1000
  }'

Step 4: Launch the Bulk Send Campaign

Once you've configured your message and throttling settings, click "Launch Campaign".

MoltFlow will immediately start sending messages at the rate you specified. The campaign status changes from pending to in_progress.

Campaign states explained:

  • pending — Campaign created but not started yet
  • in_progress — Currently sending messages
  • paused — Manually paused (you can resume anytime)
  • completed — All messages sent successfully
  • cancelled — Campaign was manually cancelled before completion

You can pause or cancel a campaign at any time by clicking the corresponding button on the campaign detail page. When you pause a campaign, MoltFlow stops sending immediately and preserves your progress — no duplicate messages will be sent when you resume.

Using the API to control campaign state:

bash
# Pause campaign
curl -X POST https://apiv2.waiflow.app/api/v2/outreach/bulk-sends/{campaign_id}/pause \
  -H "Authorization: Bearer YOUR_API_TOKEN"

# Resume campaign
curl -X POST https://apiv2.waiflow.app/api/v2/outreach/bulk-sends/{campaign_id}/resume \
  -H "Authorization: Bearer YOUR_API_TOKEN"

# Cancel campaign (cannot be undone)
curl -X POST https://apiv2.waiflow.app/api/v2/outreach/bulk-sends/{campaign_id}/cancel \
  -H "Authorization: Bearer YOUR_API_TOKEN"

Step 5: Monitor Delivery Progress and Handle Failures

On the campaign detail page, you'll see a real-time progress bar showing:

  • Sent — Messages successfully delivered to WhatsApp
  • Total — Total recipients in the target group
  • Failed — Messages that couldn't be sent

MoltFlow tracks three counters for each campaign:

  • messages_sent — Successfully sent messages
  • messages_failed — Failed sends (invalid phone numbers, rate limits, session disconnected)
  • messages_pending — Recipients not yet contacted

Common failure reasons:

  1. Invalid phone number — Recipient's number is not a valid WhatsApp account
  2. Session disconnected — Your WhatsApp session went offline mid-campaign
  3. Rate limit hit — You reached WhatsApp's daily/hourly limits (rare if using MoltFlow's defaults)

Failed messages can be retried manually. Click the "Retry Failed" button on the campaign detail page to attempt re-sending to all failed recipients. MoltFlow will skip already-successful sends and only retry failures.

Using the API to check campaign progress:

bash
curl -X GET https://apiv2.waiflow.app/api/v2/outreach/bulk-sends/{campaign_id}/progress \
  -H "Authorization: Bearer YOUR_API_TOKEN"

Response:

json
{
  "campaign_id": "abc123",
  "status": "in_progress",
  "total": 1000,
  "sent": 450,
  "failed": 5,
  "pending": 545,
  "started_at": "2026-02-13T10:00:00Z",
  "estimated_completion": "2026-02-13T20:00:00Z"
}

Anti-Spam Best Practices

Follow these five rules to maximize deliverability and minimize ban risk:

  1. Keep messages under 500 characters — Shorter messages are less likely to trigger spam filters. If you need to say more, use a link to a webpage instead of a wall of text.

  2. Always personalize with recipient name — Use {name} in your message. Generic messages like "Hi there!" scream "spam" to WhatsApp's algorithms.

  3. Never send identical messages — Even with personalization, avoid sending the exact same campaign twice to the same group. Change at least one word or emoji between campaigns.

  4. Warm up new accounts slowly — For accounts less than 30 days old, start with 50 messages/day for the first week. Gradually increase to 100/day in week 2, 200/day in week 3, etc.

  5. Respect opt-outs immediately — If a contact replies "STOP", "UNSUBSCRIBE", or blocks you, remove them from your groups immediately. Continuing to message people who've opted out is the fastest way to get banned.

Bonus tip: Send a test message to yourself first. Open WhatsApp on another phone, send your campaign message to that number, and verify it looks good before launching the full campaign.

Troubleshooting

Campaign Stuck at "In Progress"

Problem: The campaign shows "in_progress" but the sent count hasn't increased in 10+ minutes.

Solution: Check your WhatsApp session status on the Sessions page. If it shows "STOPPED" or "FAILED", restart the session by scanning the QR code again. Then resume your campaign from the campaign detail page.

High Failure Rate (10%+ Failed)

Problem: More than 10% of messages are failing to send.

Solution: Most likely cause is invalid phone numbers in your contact group. Export your group to CSV, verify all numbers are formatted correctly (country code + number, no spaces or special characters), remove invalid numbers, and retry the campaign.

Account Temporarily Restricted

Problem: WhatsApp shows a "Your account is temporarily restricted" message on your phone.

Solution: You hit WhatsApp's spam detection. STOP all bulk send campaigns immediately. Wait 24 hours without sending any messages. Then restart with 50% lower send rates (e.g., if you were sending 200/hour, drop to 100/hour). If the restriction persists after 72 hours, your number may be permanently banned.

Messages Sent But Not Received

Problem: Progress shows messages sent, but recipients aren't receiving them.

Solution: WhatsApp may be silently dropping your messages (shadow ban). This happens when your content is flagged as spam even though your send rate is safe. Review your message content — remove marketing language, add more personalization, and focus on value rather than sales pitches.

What's Next?

Now that you can send bulk WhatsApp messages safely, explore these related features:

All of these features work together to create powerful, automated outreach workflows while keeping your WhatsApp account safe.

Ready to unlock bulk messaging and anti-spam protection? Join 500+ businesses automating WhatsApp with MoltFlow. Anti-spam throttling (included on all paid plans) has saved customers thousands in lost accounts. Start your 14-day trial — no credit card required.


Having trouble? Contact support via the dashboard chat or email us at [email protected]. We typically respond within 2-4 hours.

Ready to automate your WhatsApp?

Start for free — set up in under 2 minutes.