On Ready, a text costs $0.0075/segment plus a $0.0045 carrier fee per segment, and every segment you send or receive is billed that way. On top of that, each sender pays fixed monthly costs: $10 per 10DLC brand, $20 per campaign and $2 per phone number. That's the honest shape of SMS API pricing everywhere: usage per segment, plus a small fixed base per sender that most pricing pages leave out.

The headline per-text number on a pricing page is usually the smallest part of the decision. What moves your bill is how many segments a "text" turns into, whether replies are billed, what registration costs per customer, and which compliance features are included or charged extra. This post breaks a text into those line items with our real prices, works through a month of sending, and says plainly where a raw CPaaS costs less per segment.

How SMS API pricing is built: the five line items

Almost every SMS API bill, ours included, is made of the same parts. Providers group them differently, which is why two "per-message" prices are hard to compare.

  1. Per-segment rate. The provider's charge for moving one segment. On Ready this is $0.0075/segment on Standard, one flat rate.
  2. Carrier fee. US carriers charge a fee per message on registered 10DLC traffic. We bill it as a separate line, $0.0045 per segment. Some providers fold it into their headline price and some add it later. We wrote a full breakdown of that fee in the line item most providers bake into their per-message price.
  3. Registration fees. A2P 10DLC requires a registered brand and campaign before carriers will deliver your traffic reliably. On Ready that's $25/mo for registration.
  4. Number rent. $2 per phone number per month.
  5. Optional extras. Compliance scrubbing, landline validation and iMessage, each metered separately and only billed if you switch it on. Local presence has a listed price of $0.0015 for each segment of a delivered text.
Line itemReady priceBilled perOn by default?
Messaging rate (Standard)$0.0075/segmentSegment, sent or receivedYes
Carrier fee$0.0045SegmentYes
Brand registration$10/monthBrandRequired to send at scale
Campaign registration$20/monthCampaignRequired to send at scale
Phone number$2/monthNumberYes
TCPA/DNC scrubbing on sends$0.003SegmentNo
Landline validation on sends$0.003SegmentNo
Standalone TCPA & DNC scrub$0.005Contact scrubbedPay as used
Local presence$0.0015For each segment of a delivered textNo
Brand vetting (optional)$79 Standard / $179 EnhancedOne-timeNo
iMessage line$99/month + $0.06/segmentLine, then segmentNo
EnterpriseCustom, talk to usNoneNone

When we say "all-in" for a segment ($0.0075 plus the $0.0045 carrier fee), that figure excludes the compliance surcharge. Scrubbing and landline validation each add $0.003 per segment when they're switched on for an account, and both are off by default.

Segments, not messages: the multiplier hiding in every quote

Carriers meter segments, so every SMS API bills by segment, even when the pricing page says "per message." The rules:

  • A single segment is 160 GSM-7 characters.
  • Longer messages split into segments of 153 characters each, because each part carries a small header.
  • One emoji, or any other non-GSM character, switches the whole message to unicode: 70 characters for a single segment, 67 per part for multipart.

Here's what that does to a real message. A 140-character appointment reminder in plain text is 1 segment. Add one emoji and the same 140 characters become 3 segments: 140 ÷ 67 rounds up to 3. You just tripled the cost of that text without changing the price list.

Before sending, Ready swaps curly quotes, long dashes and ellipses for their plain equivalents. Text pasted from a doc editor won't quietly flip to unicode on those characters, but an emoji still will. If you want the per-segment price to mean anything, count characters before you count cents.

What registration and numbers cost per sender

Registration is a fixed cost, so it matters more the more senders you have.

For one business sending its own texts, the math is small. There's no setup fee. The charge when you submit is the first month, $25 for registration. After that, the monthly is $25 for registration + $2 for each number. With one number that's $27 a month before you send anything. Most approvals take 2 to 7 days.

For a platform that texts on behalf of its customers, the math changes. Each customer gets a sub-account with its own numbers and its own registration, because carriers want to know which business is actually texting. A platform with 50 customer sub-accounts, each with one brand, one campaign and one number, carries 50 × ($25 for registration + $2 number) = $1,350 a month.

That is the brand, campaign and number fees 50 times over, every month, in registration and number rent.

That's not a Ready quirk. Any compliant setup on 10DLC carries per-brand and per-campaign fees, whoever handles the paperwork. Before you set your own pricing, decide whether you pass that cost to customers as a line item or absorb it into a plan fee. We cover who registers what in 10DLC for SaaS platforms.

Two notes on timing. An account can send up to 500 texts a month before it registers, at its normal per-text rate. After that it has to register. An account that bought its number before registering sends on Ready's shared registration at the same per-text rate while its own registration is in review.

A worked monthly example

Here's one sub-account's month, with the assumptions stated. This is an illustrative example, not a customer.

Assumptions:

  • One brand, one campaign, two numbers
  • 8,000 appointment reminders, each under 160 plain characters (1 segment each)
  • 2,000 promo texts at 175 characters with one emoji (unicode: 175 ÷ 67 rounds up to 3 segments each)
  • 1,500 inbound replies, 1 segment each
  • No scrubbing, validation or local presence switched on

Segments:

  • Reminders: 8,000 × 1 = 8,000
  • Promos: 2,000 × 3 = 6,000
  • Replies: 1,500 × 1 = 1,500
  • Total: 15,500 segments

Costs:

  • Messaging rate: 15,500 × $0.0075 = $116.25
  • Carrier fee: 15,500 × $0.0045, itemized separately on the bill
  • Registration and numbers: $25/mo for registration and $2/mo per number for 2 numbers
  • Monthly total: $350.00 + 15,500 × $0.0045

Same month, with the promo rewritten

Cut the emoji and trim the promo to 155 plain characters, and it drops to 1 segment. The promos go from 6,000 segments to 2,000, which saves 4,000 segments:

4,000 × $0.0075 = $30 saved on the messaging rate, plus 4,000 × $0.0045 in carrier fees.

That's nearly a quarter of the usage bill, and the price list didn't change. In this example, copy editing saved more than any rate negotiation would.

Same month, with the compliance options on

Now suppose this sender switches on scrubbing and landline validation. Both apply to outbound segments, and there are 14,000 in the original example (8,000 + 6,000):

  • Scrubbing: 14,000 × $0.005 = $70.00
  • Landline validation: 14,000 × $0.003 = $42.00

Those are real additions, so switch them on where they pay for themselves. Lists from older or mixed sources are the usual case.

One cost runs the other way. Opt-outs, numbers on your Ban list and known landlines are refused up front and not charged. Campaign and drip texts sent during the recipient's quiet hours wait up to 24 hours for the window; an API or one-to-one text is held only if the window opens within 6 hours, otherwise it is refused with 409 QUIET_HOURS_BLOCK. A held text is charged only when it sends.

Local presence

Local presence sends from the account's number closest to the contact's area code. It has a listed price of $0.0015 for each segment of a delivered text. Every number still sits on the registered 10DLC campaign. Local presence chooses among your registered numbers; it doesn't get around registration.

Where a raw CPaaS costs less per segment, and what you build instead

Here's the honest comparison. Twilio's list rate is about $0.0083 per segment. GoHighLevel's LeadConnector is about $0.0083 per message, roughly $0.0128 all-in. Both are lower than our $0.0075/segment plus carrier fee. On the 15,500 segments above, Twilio's rate alone is about 15,500 × $0.0083 ≈ $129, against our $310.

If you have engineers to spare and plan to build the messaging layer yourself, a raw CPaaS is a sensible choice, and you should run that math. Check their carrier-fee and registration line items too, so you compare like with like.

What the gap pays for on Ready is the work around the send:

  • Registration in-app. Brand and campaign registration through the dashboard or API, per sub-account, with most approvals taking 2 to 7 days.
  • Sub-accounts. Each customer gets its own numbers and registration under one API key structure.
  • Compliance by default. Automatic STOP handling that applies across campaigns, quiet-hours holds based on the recipient's area, and consent attestation recorded per bulk send and per API send that sets consent_attested: who sent, to how many, and when. That attestation is not a per-contact consent record. Keeping each recipient's opt-in time, wording and page is still your job.
  • Optional scrubbing and validation you switch on per account, instead of integrating a separate vendor.
  • A full platform. Inbox, CRM, pipeline, automations and a native GoHighLevel integration, alongside the API.

Compliance remains the sender's responsibility. These features reduce risk; they don't remove it. For the line-by-line version of this comparison, see Ready vs Twilio in 2026.

Extras that change the per-text math

MMS

Pass a media_url to POST /v1/messages and the text goes as a picture message. MMS is priced differently from plain SMS, so check the pricing page before you make pictures the default.

iMessage (the iMessage line)

An iMessage line costs $99 a month plus $0.06 a segment for each text sent. Replies are also $0.06 a segment, and reactions are free. It needs no 10DLC registration. Each line can start up to 50 new conversations a day, and texts to Android phones go out from your regular number. They bill at the regular price if you already had a number; if the iMessage line came with its green number, your texts bill at 6 cents a segment once you register or send through GoHighLevel.

At $0.06 a segment, an iMessage line makes sense for high-value conversations, not campaigns. Campaigns and drip campaigns send from regular numbers anyway. More in blue bubble texting for business and the iMessage line docs.

Brand vetting

Brand vetting is $79 Standard or $179 Enhanced, one-time. It can raise your trust score and T-Mobile daily cap, which runs from about 2,000 to about 200,000 messages a day by tier. The cap only moves if the new score crosses a tier, and vetting doesn't change per-second throughput. Standard registration is all most senders need.

How billing actually works on Ready

Billing is prepaid credits through Stripe, and to send any text you need a card and a number ($2 a month, the first month charged when you get it). Carrier fees are itemized separately from the messaging rate, so you can reconcile them line by line.

The first 20 texts are free. They're one-to-one sends; a campaign is paid from the first text. The free texts end the moment a registration is paid for, so use them to test before you register.

To send, POST /v1/messages takes to, body and consent_attested. For many recipients, POST /v1/messages/bulk takes the same body with an array of numbers. Send an Idempotency-Key header on each request so a retry never bills you twice. Docs: messages, bulk messages and the quickstart.

The practical takeaway

To estimate any SMS API bill, including ours:

  1. Count segments, not messages. Check your real templates for emoji and length.
  2. Add inbound replies if the provider bills them. We do, at the same rate.
  3. Add carrier fee per segment.
  4. Add fixed costs per sender: brand, campaign, numbers.
  5. Add only the extras you'll actually switch on.

If the cheapest per-segment rate wins for you and you'll build registration and compliance yourself, a raw CPaaS is a fair pick. If you'd rather pay for those parts to be done, you can create an account and send your 20 free texts to test before you register.

FAQ

How much does an SMS API cost per text? On Ready, a text costs $0.0075 per segment plus a $0.0045 carrier fee per segment. A plain message under 160 characters is one segment. Longer messages or messages with emoji become several segments, and each one is billed.

Why is my SMS bill higher than the per-message price? Usually because messages split into more segments than you expected, or because inbound replies and carrier fees are billed on top. One emoji drops the segment limit from 160 characters to 70, which can triple the cost of a text. Fixed registration and number fees also add to the total.

Do I pay for incoming SMS replies? On Ready, yes. Replies you receive are billed like sent texts, at the per-segment rate plus the carrier fee. Plan for that when you budget two-way conversations.

What does 10DLC registration cost? On Ready, 10DLC registration is $25 a month, with no setup fee. The first month, $25, is charged when you submit, and each number adds $2 a month. Most approvals take 2 to 7 days.

Is Twilio cheaper than other SMS APIs? Twilio's list rate of about $0.0083 per segment is lower than many SMS APIs, including ours. You build registration flows, opt-out handling, quiet hours and scrubbing yourself, or add them from other vendors. Compare the full monthly cost, not just the segment rate.