USPS
Priority Mail Intl
10–15 days$18.30
$10.00 of taxes & duties included
all-in · no surprises
Shippo's per-label platform fee scales linearly with volume, while GoatLabels charges only the rate-shopped carrier price from your prepaid wallet — the gap widens with every label.
USPS, UPS, FedEx, and DHL — the cheapest of the four is the number you pay.
Card, Apple Pay, Google Pay, ACH, or crypto — one balance, spent at carrier price.
We will not print their number here, because their pricing moves and a stale figure helps nobody. Take today's fee from their pricing page, call it f, and read down the column — the shape of the cost is the point, and the shape is a straight line.
| Monthly volume | GoatLabels | Shippo |
|---|---|---|
| 100 labels a month | The rate-shopped carrier price on each of the 100. Nothing else. | 100 × f on top of the carrier rates, every month, before a single parcel moves. |
| 500 labels a month | Still just the carrier price per parcel. The tool does not get more expensive because you got busier. | 500 × f — five times the fee for the same software doing the same job. |
| 2,000 labels a month | Carrier price per parcel, and Pro's cheaper label pricing pulls it further down as volume grows. | 2,000 × f, plus whatever tier that volume puts you on. |
| A month you ship nothing | Zero. The wallet sits funded and untouched until you print. | No fees, but the plan underneath still bills — check their current tiers. |
Shippo is a trademark of its owner and is not affiliated with GoatLabels. Their fees and tiers change — take f from their current pricing page rather than from any figure quoted elsewhere.
Per-label pricing is designed to look trivial at the moment you read it, because you read it next to one label. You do not pay it once. You pay it on every parcel you will ship this year, and the total is a straight line with your volume on the x-axis.
Success is the trigger. Double your orders and the platform charge doubles, though the software did not change and no extra work was done for you. A prepaid wallet has no term that scales with your growth.
The only fair comparison is what actually leaves your account per parcel. Here the quote and the debit are one number: the rate-shopped carrier price, with no platform fee appended after you confirm.
The reason a per-label fee is easy to overlook is that it lands somewhere you are not looking — after the quote, on a statement, in a monthly total nobody itemises. This pipeline is built so there is nowhere for a charge to hide. An order arrives from a store sync, the REST API, a pasted DM, or a screenshot, and Billy fills the addresses, the package details, and the service before handing the draft back. You see four all-in carrier quotes, you pick one, and exactly that amount leaves your prepaid wallet — topped up with card, Apple Pay, Google Pay, ACH, or crypto. There is no platform fee line, no monthly minimum to print, and no reconciliation between what you were quoted and what you were charged, at a hundred labels a month or at two thousand.
Hey! 2x hoodies (M) 1x tee (L) 😅 Ship to: Maya R. Austin, TX 78701
Connectors, REST API, DMs, and screenshots — one queue, no import mapping.
Same number quoted, same number debited — multiply it by your volume and it stays true.
Shopify, Etsy, WooCommerce, and TikTok Shop sync into To Ship and get tracking pushed back when you print, and none of those channels carries a different per-label price. Paste an Instagram or Facebook DM, or a screenshot of one, and Billy builds the label with no connector at all — also at the plain carrier rate.
Via AI tiles: an order that never became a record still becomes a label.
Once nothing is charged per label, your shipping spend is simply the sum of your carrier rates — a number you can lower by rate shopping rather than by negotiating a tier. Everything below exists to make that sum smaller, not to add another line to it.
Card, Apple Pay, Google Pay, ACH bank transfer, and crypto all top up the same balance, and every method buys identical rates, carriers, and features. Void a shipment and the credit lands back in the wallet, not into a fee nobody refunds.
Billy reads a DM, a comment thread, a voice note, or a screenshot and drafts the whole label. Unlimited on the free plan, because a tool that charges you per use is the same trap as a tool that charges you per label.
Fund the wallet, pay per label at the carrier price, and ship nothing in February without paying for February. The only lever that changes your cost is which carrier you pick, which is the lever you actually control.
Live all-in rates side by side, and the number you see is the exact amount that leaves your balance. Rate shopping four carriers on every parcel is the compounding that works in your favour — the same multiplication as a per-label fee, pointed the other way. If you need a carrier outside that list, Shippo's broader network is the reason to stay.
REST and JSON, one Bearer header, idempotency keys so a retry cannot double-buy a label, and signed webhooks for tracking and label events instead of polling. High volume is exactly when metered pricing bites, so there is none here.


Label ready
CL-1038 · Brooklyn, NY
Volume math is only half the story — the other half is whether the workflow survives the volume. Every quote, confirm, and print here works from the phone at the packing table, and the price per parcel is identical whether you print one or a pallet's worth.
What did that one cost, what have I spent this week, where is it now — the questions a per-label fee makes annoying to answer, because the software charge and the postage charge live in different places. Here they do not. Hold the mic and ask; Billy rate-shops USPS, UPS, FedEx, and DHL, queues the label against your prepaid balance, and reads the all-in number back. This is the real product, not a render.

Listening
"Where's Maya's package?"
Out for delivery
CL-1039 · Austin, TX · by 6 PM
Plain English in — names, addresses, weights, carriers, services · nothing to import and nothing to map · reads the all-in rate back before a cent leaves the wallet · phone, browser, or Telegram.
Three carriers on the same parcel, each an all-in number that is the exact amount leaving your prepaid balance. That equality is what makes the volume math trivial: multiply the quote by your parcel count and you have your bill. Nothing arrives the day after with an adjustment on it, and voiding a shipment credits the wallet.
Priority Mail Intl
10–15 days$18.30
$10.00 of taxes & duties included
all-in · no surprises
Intl Connect Plus
3–5 days$22.80
$11.00 of taxes & duties included
all-in · no surprises
Express Worldwide
1–2 days$26.20
$12.20 of taxes & duties included
all-in · no surprises
REST, JSON, one Bearer header. Real idempotency keys so a retried request cannot double-buy a label — which at two thousand labels a month is a cost control, not a nicety — signed webhooks instead of polling, and errors that name what to fix. Unlimited calls on every plan.
POST /api/v1/shipments
Authorization: Bearer sk_live_…
Idempotency-Key: ord_8421
{
"to": { "name": "Joyce", "city": "Berlin", "country": "DE" },
"parcel": { "weight": 1.2, "weight_unit": "kg" },
"service": "fedex_intl_priority"
}
Free covers 50 shipments a month with the public API, the store connectors, and Billy all unlimited underneath it — we make a little on each label instead of charging a fee for one. Pro is a flat monthly fee for unlimited shipments, cheaper label pricing, and Billy on Telegram: a fixed cost that gets cheaper per parcel as you grow, which is the opposite of a per-label fee. Neither one is a minimum you have to hit before a label prints.
Volume pricing
illustrativemore volume → lower per-label rates
$0 / forever
Enough to run the numbers on your own volume before you commit.
The assistant that reads a DM, a screenshot, or a voice note into a drafted label runs unlimited in the web app on Free. Pro adds Billy on Telegram.
GET /api/v1/shipments
200 OK · plan: free
Unlimited calls on Free — still unlimited on Pro.
On Pro we will work with you to beat the label rates you are already getting from
ShippoPirateShipShipStationLabel prices are quoted live from USPS, UPS, FedEx, and DHL and shown as one all-in number — the same number that leaves your wallet. Shippo's fees and tiers move, so take the multiplier from their current pricing page rather than from a figure on ours. Full pricing details
A per-label charge is a percentage of profit, not a percentage of revenue, so it lands hardest on the sellers with the least room. These are the shapes where the math turns decisive soonest.
TikTok Shop & live commerce
A drop is where a per-label fee compounds fastest — a thousand parcels in a weekend is a thousand multiplications. Pre-fund the wallet, print all night at carrier rates, then pay nothing through the quiet weeks after.

Etsy & independent creators
When the item is cheap, the fee is a visible slice of the margin on every single order. Rate-shopping four carriers with nothing added on top is where that slice goes back.
One queue, connector or not
Order #1024 · pasted from a comment thread
The orders that never became JSON
REST and the UI, one balance
1
wallet behind the API and the dashboard
A video took off and I had 80 TikTok Shop orders by morning. I printed every label from my phone on the bus to the post office.
Early customer · TikTok
TikTok Shop seller
I run my Etsy shop from the kitchen. The AI reads the order, picks the carrier, the label prints. That's the whole workflow now.
Early customer · Etsy
Etsy maker
The API is what every shipping API pretends to be. Idempotency that actually works.
Sasha R.
Staff engineer, marketplace
Want the wider comparison? Read GoatLabels vs Shippo, see what free shipping software gives up, or read how label pricing works here.
Fund a wallet with card, Apple Pay, Google Pay, ACH, or crypto, buy one label at the rate-shopped USPS, UPS, FedEx, or DHL price, and compare the debit against the same parcel with a platform fee on it.
Sign up in seconds. No card required. No monthly minimum.