USPS
Ground Advantage
2 to 5 days$11.40
all-in · no surprises
GoatLabels adds Billy AI on every plan: paste order details and get a drafted label with the cheapest carrier quote preselected, with no sales call and no code to write.
Billy rate-shops USPS, UPS and FedEx, plus DHL on international lanes, and puts the cheapest workable option in front of you.
Whatever drafts the label, the same balance buys it — funded by card, Apple Pay, Google Pay, ACH, or crypto.
EasyPost gives engineers excellent primitives, and its Luma AI line works from shipping data rather than from order text. Code is the right trade when you have a team and a spec. It is the wrong one when the automation you need is 'read this order and draft the label', and nobody has a sprint free.
| GoatLabels | EasyPost | |
|---|---|---|
| Turning order text into a label | Paste it, dictate it, or drop a screenshot — Billy drafts the whole label for you to confirm. | Type it into the Create Label form, or parse it in your own code and call the API. |
| Choosing a carrier | Billy rate-shops the carriers on the lane and preselects the cheapest workable option; you can override it. | Your own logic over the rates response, or Luma AI's automatic selection, sold through sales. |
| Who can automate | Anyone who can type or talk. Billy runs in the dashboard on every plan. | Whoever writes the integration, plus CSV batches in the dashboard. |
| Cost of the AI layer | Included, unlimited, on Free and Pro alike — not a metered add-on. | Luma AI is quoted by sales and works from your shipping data; drafting a label from a pasted message is not on its feature list. |
| Underlying API | REST + JSON, Bearer auth, idempotency keys, signed webhooks, free and unlimited. | Mature, well-documented API with a large SDK ecosystem — their core strength. |
| Carrier coverage | USPS, UPS and FedEx rate-shopped on every domestic parcel; DHL on international lanes. | More than 100 carriers, including carriers we do not quote. |
EasyPost is a trademark of its owner and is not affiliated with GoatLabels. EasyPost's plans, fees, and AI products are dated and linked in the source block below; they change, so re-check before you decide.
Order text arrives in whatever shape a human typed it. Writing something to reliably pull a name, a street, a city, a postcode, and a parcel weight out of that is a project with a long tail of edge cases. Billy does it, hands back a draft, and a person confirms — which is the correct amount of trust for this job.
An API-first platform is only as automated as the code around it. Billy is working the moment you log in, on every plan, so the team gets the benefit before an integration exists — and keeps it for the orders the integration never covers.
This is not an AI product bolted to a different system. Billy creates the same shipment objects your integration reads, spends the same prepaid balance, and fires the same signed webhooks. The AI layer and the code layer are two ways into one platform.
Checked on from EasyPost's own pages. Plans, fees and policies change, so confirm on the vendor's current page before you decide. EasyPost is a trademark of its owner and is not affiliated with GoatLabels.
The pipeline is the same one an integration would run (an order arrives, the carriers on its lane are quoted, a label is bought against a prepaid wallet), except the first step accepts input that no API has a field for. Paste the message, drop the screenshot, or say the address out loud, and Billy fills in the addresses and package details, rate-shops USPS, UPS and FedEx (plus DHL on international lanes), and hands back a draft with the cheapest workable option preselected. You confirm, the wallet is debited, and the label prints. Store connectors and the REST API feed the same queue, so the automated path and the assisted path produce identical shipments and identical webhooks — which means adding Billy does not fork your data model.
Hey! 2x hoodies (M) 1x tee (L) 😅 Ship to: Maya R. Austin, TX 78701
Connectors, REST API, DMs, and screenshots — one queue, and Billy reads all of them.
Billy AI
Billy is included on every plan. Signed webhooks push tracking back to the store and to your stack.
Shopify, Etsy, WooCommerce, eBay and Wix sync into To Ship and push tracking back when you print, and your API integration feeds the same queue. Everything outside those channels, the DM, the phone order, the screenshot a wholesale buyer sent, becomes a drafted label through Billy instead of becoming a connector nobody has time to build.
The honest framing is that Billy does not replace an integration — it covers the work before and around one. Structured orders still flow through connectors and REST calls; unstructured ones get drafted instead of retyped, and both end up as the same shipment against the same prepaid balance.
Card, Apple Pay, Google Pay, ACH bank transfer, and crypto all top up the same balance, and Billy's drafts buy from it exactly as your API calls do. Nothing about the assistant creates a second billing path, and accepted voids credit the same wallet.
A DM, a comment thread, a voice note, a screenshot: Billy reads any of them and drafts the whole label, with the cheapest carrier quote preselected. It runs unlimited in the web app on every plan, including Free, and Pro adds it on Telegram.
Billy
LIVE
The assistant is not a metered add-on and neither is the API — there is no per-shipment platform fee on any plan. Free covers 50 shipments a month with Billy and the full REST API unlimited underneath it; Pro is a flat monthly fee for unlimited shipments and Billy on Telegram.
USPS, UPS and FedEx quoted live as all-in prices, DHL on international lanes, with the cheapest workable option preselected on every draft and every option still visible so a person can override it. The number shown is the exact amount that leaves your balance.
REST and JSON, one Bearer header, idempotency keys so a retried request never buys two labels, and signed webhooks for tracking and label events instead of polling. Everything Billy drafts is a normal shipment object your code can read, void, or act on.
Label ready
CL-1038 · Brooklyn, NY
When an order arrives as a message, someone becomes the parser — reading a DM on a phone and retyping it into a form on a laptop they are not sitting at. Billy takes the message itself, on the device already in their hand, and gives back a label to confirm.
Speaking is the fastest input at a packing bench and the one no shipping API accepts. Hold the mic, say who the parcel is going to, and Billy looks up the buyer, rate-shops the carriers on the lane, and queues the label against your prepaid balance, then answers questions about it afterwards. 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 on Pro.
Three carriers on the same parcel, each an all-in number that is the exact amount leaving your prepaid balance. Billy picks the cheapest one that still works and shows you the rest, so an assisted choice is an informed one rather than a black box.
Ground Advantage
2 to 5 days$11.40
all-in · no surprises
Ground
1 to 5 days$9.85
all-in · no surprises
Ground
1 to 5 days$11.20
all-in · no surprises
REST, JSON, one Bearer header. The assistant is a layer, not a substitute — every label Billy drafts is a normal shipment object with idempotency, signed webhooks, and an OpenAPI 3.1 spec behind it, so your engineers keep the control they would have had anyway.
POST /api/v1/shipments
Authorization: Bearer sk_live_…
Idempotency-Key: ord_8421
{
"to": { "name": "Joyce", "city": "Berlin", "country": "DE" },
"parcel": { "weight": 2.6, "weight_unit": "lb" },
"service": "fedex_intl_priority"
}
Free covers 50 shipments a month with the public API, the store connectors, and Billy all unlimited underneath it — the quoted label price is what you pay from a prepaid wallet. Pro is a flat monthly fee for unlimited shipments and Billy on Telegram. The assistant is not metered per draft on either plan.
Rate by plan
illustrativePro: one flat monthly plan, unlimited shipments
$0 / forever
The assistant and the API, both unlimited, before you pay anything.
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.
High-volume shippers can ask about custom pricing, which we review account by account. Compare it against what you pay on
ShippoPirate ShipShipStationLabel prices are quoted live from USPS, UPS and FedEx on domestic parcels and DHL on international lanes, shown as one all-in number, the same number that leaves your wallet, whether Billy drafted the label or your code did. EasyPost's plans and fees are in the dated source block on this page, linked to EasyPost's own pages. Full pricing details
If every order is already clean structured data, code is the better automation. These are the teams whose orders are not, and who do not have an engineer free to make them so.
TikTok Shop & live commerce
During a launch the bottleneck is data entry, not carriers. Drafting from pasted order text with the cheapest carrier quote preselected takes the slowest step out of the night.
Etsy & independent creators
Connected stores flow through connectors; the market stall order and the wholesale email get drafted by Billy into the same queue, without a channel-specific import path.
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
Still comparing? GoatLabels vs EasyPost covers who owns the carrier account, EasyPost pricing explained walks the fee math, and migrating an integration off EasyPost maps the endpoints one by one.
Fund a wallet with card, Apple Pay, Google Pay, ACH, or crypto, paste in the next order that arrives as a message, and compare the drafted label and its all-in rate against what you were about to build.
No card required. No contract. No per-shipment platform fee.
Updated