Bulk & marketing SMS
Bulk SMS at wholesale prices
Up to 1,000 recipients per request, on the route you choose, at its rate per segment. Do-not-contact numbers are suppressed before routing, so a blocked number is never billed.
- Bulk sends by API
- Suppression built in
- Wholesale pricing
In short
Send to up to 1,000 numbers in one request, from a numeric or alphanumeric sender.
Numbers on your do-not-contact list are skipped before routing, every message has a status you can look up, and you pay the route rate per segment rather than a retail bundle.
What you can do
Bulk sends
Up to 1,000 recipients per request and 1,600 characters per message.
Your choice of route
Pick the route each bulk send or campaign goes out on, by tier and price.
Branded sender IDs
Alphanumeric senders where the destination allows them, numeric where it does not.
Do-not-contact list
Suppressed numbers are blocked before routing and never billed.
Message history
The status of every message, by API.
From list to launch
A campaign out of the door in four steps
The route, the list, the message and the budget are all settled before the first message leaves, and nothing goes to a number on your do-not-contact list.
- Step 1
Pick the route
Choose an SMS route on the marketplace by destination, tier, A2P support, sender ID type and price per message, and buy it in a few clicks.
- Step 2
Load the list and your opt-outs
Upload your audience and duplicates and invalid numbers are set aside. Paste or upload opt-outs to your suppression list, up to 10,000 numbers at a time.
- Step 3
Write it and set a budget
Set the sender ID and message, or load a saved template. The form counts segments per recipient and estimates the cost, and a spend cap guards the total.
- Step 4
Launch and watch it run
Start the campaign from the Dialer and watch it work through the list. Pause whenever you need to, and it picks up where it left off.
Bulk sends by API
A thousand messages, one request, a line for each
Post up to 1,000 recipients to the bulk endpoint, each with its own message of up to 1,600 characters, so personalisation happens in your stack and sending happens in ours. The reply accounts for every recipient on its own line: its status, segments, cost and message ID, or the reason it was not sent. A number on your do-not-contact list costs nothing, and if your balance runs short part-way through, the remaining recipients are marked skipped, so you always know exactly where the batch stopped.
- Recipients, sent, failed and total cost at the top of every reply
- Opted-out numbers listed with their reason and a cost of $0.00
- Sent over a route you bought, at its per-segment rate
| To | Status | Segments | Cost | Detail |
|---|---|---|---|---|
| +44 7700 9001181 segment · Hi Sam, your 20% code is ready | Sent | 1 | $0.0316 | Hi Sam, your 20% code is ready |
| +44 7700 900142Opted out: on your do-not-contact list | Failed | · | $0.0000 | Opted out: on your do-not-contact list |
| +44 7700 9001572 segments · Longer offer with delivery details | Sent | 2 | $0.0630 | Longer offer with delivery details |
| +44 7700 9001711 segment · Refused by the route, charge reversed | Failed | 1 | $0.0000 | Refused by the route, charge reversed |
| +44 7700 9001861 segment · Hi Priya, your 20% code is ready | Sent | 1 | $0.0316 | Hi Priya, your 20% code is ready |
SMS campaigns
Campaigns with a budget that holds
Prefer a dashboard to a script? Run the send as an SMS campaign in the Dialer, beside your voice campaigns. Pick the route, sender ID and message, and the review step shows the recipients, segments and estimated cost before you start. While it runs, you watch sent and failed counts climb against the list. A spend cap you set pauses the campaign by itself when it is reached, with a notification telling you why, and a balance that reaches zero pauses it too instead of churning through refused sends.
- Concurrency and a pause between sends to pace the campaign
- Saved message templates, reused across campaigns
- A completion email with messages sent and the spend
Pauses by itself at the spend cap, or if the balance reaches zero.
Compliance built in
Opt-outs honoured on every message, not every export
Suppression is not a spreadsheet you have to remember to re-import before each send. Your do-not-contact list is checked against every message at the moment it is sent, whether it comes from a single API send, the bulk endpoint, an SMS campaign or an SMPP bind, and platform-wide blocks apply on top. A suppressed number is turned away before it is routed or charged, so it is never messaged.
- Paste or upload up to 10,000 numbers at once, with duplicates reported
- Every entry shows its source and whether it is yours or platform-wide
- Export the list as CSV whenever an audit asks for it
- The same list protects your voice campaigns in the Dialer
| Number | Scope | Source | Added |
|---|---|---|---|
| +44 7700 900218Added 14 Sep 2026 | Mine | Upload | 14 Sep 2026 |
| +44 7700 900377Added 12 Sep 2026 | Mine | Manual | 12 Sep 2026 |
| +44 7700 900402Added 14 Sep 2026 | Mine | Upload | 14 Sep 2026 |
| +1 555 0142Added 2 Sep 2026 | Platform | Manual | 2 Sep 2026 |
- Single API sends
- Bulk API sends
- SMS campaigns
- SMPP binds
Everything a sender needs
Reach, control and proof in one place
Built for teams that send promotions, reminders and lifecycle messages at volume, and answer for every one of them.
Routes by destination
SMS routes listed per destination with their tier, A2P or P2P support, sender ID type and price per message, so reach and cost are chosen together.
Branded senders
Send from your brand name on routes that carry alphanumeric sender IDs, or from a number where the route calls for one.
Every language, priced right
Messages in any script are counted in their real encoding before sending, so a campaign in Arabic or Greek is billed on its true segment count.
Personal, per recipient
Each recipient in a bulk request carries its own text, so names, offers and links are merged in your own stack before anything is sent.
Smart Routing for one-off sends
Outside a campaign or bulk request, a single send can pick the cheapest, best quality or balanced route for its destination automatically.
A status for every message
Look up any message by ID for its status, cost and reference, or page through everything you sent by date range.
Embargoed destinations refused
Messages to embargoed destinations are rejected before routing or billing, on every API send, so a stray number in a list is stopped before it goes anywhere.
Test before you send
Run a bulk request on a test key and every message is routed, priced and simulated against sandbox credit, with nothing delivered.
More messages out of the same budget
Marketing SMS lives or dies on cost per message and on trust. Both are designed in.
- Platform fee
- 2%, capped at $0.001
- Prepaid from
- $5, card or crypto
- Contract
- None, no monthly minimum
Wholesale rates, retail reach
Buy the route the way carriers do, at its listed per-segment rate, plus a fee capped at $0.001 a message. At campaign volumes, the gap between a wholesale rate and a retail bundle is your margin.
Compliance on the send path
Suppression is enforced where messages are sent, on every way into the platform, so a forgotten re-import can never message a number already on your list.
A budget that is a ceiling, not a forecast
A prepaid balance, a spend cap on each campaign and an automatic pause at zero mean a campaign pauses at the figure you set instead of running on.
SMS beside voice, on one list
SMS campaigns run in the same Dialer as voice and AI agent campaigns, share one suppression list and one balance, and report into one account.
Side by side
Bulk SMS, the usual way and this way
| Topic | A typical bulk SMS service | On PacketExchange |
|---|---|---|
| Pricing | A typical bulk SMS service: Retail bundles or credit packs, priced per message by the provider | On PacketExchange: The route's wholesale rate per segment, plus a fee capped at $0.001 |
| Opt-outs | A typical bulk SMS service: An export, re-imported before each send | On PacketExchange: Checked against every message at send time, on every way in |
| Budget | A typical bulk SMS service: Known once the invoice arrives | On PacketExchange: Estimated before launch, capped per campaign, paused at a zero balance |
| Routes | A typical bulk SMS service: One undisclosed route for every destination | On PacketExchange: Chosen per destination by tier, A2P support, sender ID type and price |
| Personalisation | A typical bulk SMS service: Merge fields inside the provider's editor | On PacketExchange: Your own text for each recipient in every bulk request |
| Proof | A typical bulk SMS service: A percentage on a dashboard | On PacketExchange: Status, segments and cost for every message, by API |
| Channels | A typical bulk SMS service: SMS in one tool, voice in another | On PacketExchange: SMS, voice and AI agent campaigns in one Dialer, on one balance |
Built for
Who runs traffic on it
Promotions
Offers, launches and seasonal campaigns.
Lifecycle messaging
Onboarding, re-engagement and win-back flows.
Reminders
Renewals, appointments and abandoned-cart nudges.
Pricing
Pay per segment. Suppressed numbers cost nothing.
- platform fee per message
- 2%
- fee cap per message
- $0.001
- for a suppressed number
- $0
Every message is billed at the route's per-segment rate plus a platform fee of 2% of that amount, capped at $0.001 per message. For example, 10,000 one-segment messages on a $0.0310 route come to $316.20, fees included.
No monthly fee, no contract and no minimum. Top up from $5 by card or crypto or from $100 by bank wire, and put a spend cap on each campaign.
What you pay for
Route rate per segment
Listed on every SMS route before you buy it.
Platform fee
2% of the carrier cost, capped at $0.001 per message.
Suppressed numbers
Blocked before a route is chosen, so there is no charge.
Refused by the route
Charged before hand-off and reversed in full.
The campaign form shows the segments per recipient and an estimated total before you launch.
Questions
What marketing and CRM teams ask
The questions buyers ask before they start. Anything not covered here is in the help centre, or ask the team directly.
How many recipients can I send to at once?
Do opted-out numbers cost anything?
Is the suppression list a national do-not-contact registry?
Can I send with my brand name?
What stops a campaign overspending?
Can I schedule a send?
How do I see what happened to each message?
How much does a long message cost?
Send your next campaign at wholesale rates
Open a free account, pick an SMS route for your market, load your opt-outs and set a spend cap. You pay per segment, and nothing for the numbers you suppress.

