📨 Bulk & Mass SMS

Bulk SMS Sending
– Up to 10,000 Messages Per Day

Send mass SMS campaigns, notifications, and alerts in bulk using your Android phone. Flat €5/month — no per-message charges regardless of volume.

Start Free Trial See Pricing
10K
SMS per day (PRO)
€5
flat per month
€0
per message
300K
max SMS/month

Throughput & Limits by Plan

Plan Daily API Limit Monthly Estimate Price
FREE (Trial) 100 SMS/day ~3,000/month €0 (7 days)
PRO Monthly 10,000 SMS/day ~300,000/month €5/month
PRO Annual 10,000 SMS/day ~300,000/month €52/year (€4.33/mo)

* Carrier daily limits may also apply. Android native SmsManager is subject to the carrier's daily SMS policies.

Python Bulk SMS — Ready-to-Run Code

Loop through your recipient list and send each message via the REST API. Works on any machine with Python 3 installed.

Python 3 — Bulk SMS Loop with retry
import requests
import time

API_KEY  = "your_api_key_here"   # from SMS Gateway Master → Settings
ENDPOINT = "https://us-central1-sms-gateway-ae7e1.cloudfunctions.net/api_sms_send"
DELAY    = 0.3   # seconds between messages (adjust to carrier limits)

# ── Your recipient list ────────────────────────────────────────────────────────
recipients = [
    {"phone": "+40712000001", "message": "Hi Ana! Your order #1001 has shipped."},
    {"phone": "+40712000002", "message": "Hi Dan! Your order #1002 has shipped."},
    {"phone": "+40712000003", "message": "Hi Maria! Your appointment is tomorrow at 10:00."},
    # … add more rows, load from CSV with csv.DictReader, etc.
]

# ── Bulk send loop ─────────────────────────────────────────────────────────────
results = {"sent": 0, "failed": 0}

for item in recipients:
    payload = {
        "phoneNumber": item["phone"],
        "message":     item["message"],
        # "webhookUrl": "https://your-server.com/sms-delivery",  # optional
    }
    try:
        r = requests.post(
            ENDPOINT,
            headers={"X-API-Key": API_KEY, "Content-Type": "application/json"},
            json=payload,
            timeout=10,
        )
        data = r.json()
        if data.get("success"):
            print(f"✓ Queued → {item['phone']} | smsId: {data.get('smsId')}")
            results["sent"] += 1
        else:
            print(f"✗ Failed → {item['phone']} | {data}")
            results["failed"] += 1
    except requests.RequestException as e:
        print(f"✗ Error  → {item['phone']} | {e}")
        results["failed"] += 1

    time.sleep(DELAY)   # be polite to the API and your carrier

# ── Summary ───────────────────────────────────────────────────────────────────
print(f"\n✅ Done — sent: {results['sent']}, failed: {results['failed']}")

💡 Tip: Load recipients from a CSV file with csv.DictReader, or from a Google Sheet via the Sheets API. Download the full script at ready-to-use.html.

Built for Bulk Sending

SMS Gateway Master is designed to handle high-volume, automated sending reliably.

🔁 Retry on Failure

Delivery webhooks report failed messages. Implement retry logic in your script to re-send them automatically.

📊 Delivery Tracking

Every message gets an smsId. Track sent / delivered / failed status via webhooks. Log results to a spreadsheet or database.

⚡ WorkManager Reliability

The Android app uses WorkManager for background processing — messages continue sending even when the app is in the background.

💬 Personalised Messages

Each recipient can receive a different, personalised message. Build the message string dynamically in your code before sending.

🔒 Privacy-First

Message content is never stored in the cloud. All SMS route through your own Android device and carrier — no third-party message storage.

🛠️ Any Language

Python, PHP, Node.js, Ruby, Bash — any language that can make an HTTP POST request works. Ready-to-use scripts available for all platforms.

Bulk SMS FAQ

How many SMS can I send in bulk per day?
The PRO plan allows up to 10,000 SMS/day via the API (~300,000/month). The free trial allows 100 SMS/day. Note that your mobile carrier may also have its own daily SMS sending limits.
What is the cheapest way to send bulk SMS?
SMS Gateway Master at €5/month flat using your own Android phone and carrier. Compared to Twilio at $0.0075/SMS: sending 10,000 SMS on Twilio costs ~$75; on SMS Gateway Master it's €5 flat. For any volume above ~670 messages/month, SMS Gateway Master is cheaper.
How fast can I send bulk SMS?
The recommended rate is 1 message every 0.3–1 second to avoid carrier rate-limiting. At 0.3s/message, 10,000 SMS takes about 50 minutes to queue. The actual SMS delivery time depends on your carrier. We recommend spreading bulk sends over several hours for best deliverability.
Does SMS Gateway Master retry failed messages?
The app reports delivery status via webhooks. Failed messages return "status": "failed". Implement retry logic in your script: collect failed smsIds from webhook callbacks and re-send them. The Python example above can be extended with a retry queue.
Can I track which recipients received the bulk SMS?
Yes. Include a webhookUrl in each request. The app will POST a delivery status payload for each message: {"smsId": "...", "status": "delivered", "phoneNumber": "+40...", "timestamp": ...}. Log this to a database, Google Sheet, or any system to track delivery rates.

Start Sending Bulk SMS Today

7-day free trial. 100 SMS/day. No credit card. €5/month after trial.

Download on Google Play See Pricing