GoatLabelsGoatLabels
Service × weight tier × zone, then the modifiers.

The anatomy of a shipping rate


Once you can read one, you can shrink one.

A shipping rate is a lookup: service, times billable weight tier, times zone — the distance band between origin and destination ZIPs — plus modifiers for the address, the season, and your account. Two sellers pay different totals for the same box because they enter that lookup at different rate tiers.

Four rate matrices, one quote list

USPS, UPS, FedEx, and DHL each run their own lookup on your parcel — the same weight and zone land in four different cells, which is the whole reason comparing pays.

UPSFedExDHLUSPS4 lookups
The matrixService × tier × zone.
Zone foundFrom your origin ZIP.
Modifiers on topAddress, season, account.

Commercial tier pricing, no account required

Labels here are priced at commercial tiers and paid from a prepaid wallet — card, Apple Pay, Google Pay, ACH, or crypto — as one all-in number.

VisaMastercardAmerican ExpressApple PayGoogle PayBitcoinEthereumTether (USDT)
One walletQuote equals debit.
All-in quoteModifiers included.
Ledger linesEvery label itemised.

The base lookup: service, weight tier, zone

Strip every complication away and a shipping rate is a table lookup. Each carrier maintains a matrix per service: rows are weight tiers, columns are zones, and the cell where your parcel's row meets its column is the base price. Three inputs select the cell. The service is your choice. The weight tier is the bracket your parcel's billable weight falls into — note tier, not weight, because a parcel two ounces into the next bracket pays the whole bracket. And the zone is the distance band between where the parcel starts and where it ends up.

The tier detail is worth pausing on, because it is the first place sellers can act on this page. Rates do not slope smoothly with weight; they step. Shaving a parcel from just over a bracket boundary to just under it — lighter box, less void fill — buys the previous cell of the matrix, and that saving repeats on every parcel of that shape you ever ship. Which weight the lookup actually uses is its own subject: carriers bill the greater of actual and dimensional weight, andthe package size and weight limits pageowns the divisors, the thresholds, and the measuring technique.

Zones explained: how distance becomes a number

Zones are how carriers turn geography into a column index. Rather than pricing every ZIP-to-ZIP pair, each carrier groups distances into bands — nearby destinations in the low zones, cross-country in the high ones — and publishes a chart keyed to the origin. That wordorigin is the part most explanations skip: zones are relative. There is no such thing as an address that is simply zone 7; it is zone 7 from you. A seller in Ohio and a seller in Oregon shipping to the same buyer in Georgia are reading different columns of the same matrix, and their costs differ before either has chosen a box.

Two practical consequences follow. First, averages lie: your true shipping cost depends on where your buyers cluster relative to you, which is why two shops with identical products and boxes can have structurally different shipping economics. Second, zone spread is a comparison lever — carriers do not step their prices across zones identically, so the cheapest carrier in zone 2 is frequently not the cheapest in zone 8. Quoting all four carriers per parcel is how you make the zone work for you instead of merely happening to you, and the carrier-by-carrier crossover mechanics live onthe cheapest ground shipping services page.

The modifiers: where the quote grows after the base

The base cell is where the price starts, not where it ends. On top of it land modifiers, and they sort cleanly into three families. Address modifiers depend on where the parcel lands: a residential destination, a harder-to-reach delivery area, the classification the carrier assigns to the exact address on the label. Seasonal modifiers are calendar-driven: during peak periods carriers switch on temporary per-parcel fees between published dates, and the same label costs more in December than in May. Account modifiers depend on who is asking — fuel-linked percentages, minimums, and the discounts attached to the account doing the buying. The trigger-by-trigger detail isthe shipping surcharges page'sterritory; what matters here is the shape. A modifier is not a penalty — it is a priced fact about the delivery. The failure mode is only ever learning about it after the sale.

This is also why a quoted-at-purchase, all-in price and a rate card give such different impressions of the same carrier. The rate card shows base cells; the delivery includes the facts. A live quote that resolves the address, applies the calendar, and folds in the account-level percentages is showing you the finished number the rate card cannot.

Retail vs commercial tiers: why the same box prices twice

Everything above — the matrix, the zone, the modifiers — exists at least twice, because carriers publish parallel price levels for the same physical service. The retail tier is what a walk-up customer pays at the counter. Commercial tiers are what accounts, platforms, and resellers pay, and they are lower because the carrier's cost of acquiring that parcel is lower. Nothing about the box, the route, or the delivery van changes. The only variable is which tier the buyer of the label entered the lookup at, and that single fact is the largest controllable gap in small-parcel shipping.

The gap is also the easiest one to close, because tier access no longer requires volume. A label bought through a platform that passes commercial tiers through is priced at those tiers from the first parcel — no carrier account, no negotiation, no minimum. That is precisely what GoatLabels does across USPS, UPS, FedEx, and DHL, with the result shown as one all-in figure; the broader economics of buying labels this way live onthe cheap shipping labels page. The table below makes the whole page concrete by decomposing one real parcel at both tiers, side by side.

Rate componentRetail tierCommercial tierWhat is happening
Base lookup: ground service, 3 lb tier, zone 5$12.75$9.10Same cell of the same matrix — service by weight tier by zone — read at two different tiers.
Destination modifier: residential deliveryincluded$0.00–$5.55Postal-network services price residential in; UPS and FedEx add it as a line item, so the badge on the address matters.
Seasonal modifier (off-peak on the verification date)$0.00$0.00Zero for most of the year, then switched on between published dates in the fourth quarter.
Account modifier: fuel-linked percentageincludedincluded in quoteIndexed weekly by the express carriers; a live quote folds it in, a printed rate card cannot.

Worked example — one 3 lb, zone-5 ground parcel, decomposed at both tiers.The figures above are illustrative of a mid-2026 ground shipment and exist to show the shape of the decomposition, not to be your quote: every carrier revises its matrices at least annually and its fuel-linked percentages far more often, and your parcel selects different cells. Verified against the carriers' published retail and commercial rate charts on 2026-08-15; re-checked at each carrier's annual rate announcement by the named marketing owner recorded with this page. For a current number, quote your real parcel — it takes less time than reading a rate card.

The lookup, running

Four matrices read at once, four finished numbers back.

Everything this page decomposes happens in the seconds between an order arriving and a price appearing. The packed parcel supplies the weight tier, your origin and the buyer's ZIP supply the zone, the validated address supplies the delivery category, the calendar supplies whatever seasonal component is open, and the account level decides which tier the lookup is read at. Four carriers run that whole sequence in parallel and hand back one all-in figure each.

1
A parcel and a destination in
The only two things the matrix needs
order_5581

Shipping to 214 Ridgeline Rd — it is a house, not a shop, if that changes anything.

Store order
Destination sets the zone column
Marketplace order
Different ZIP, different column
What selects the cell
Service
Your choice, per parcel
Weight tier
The bracket, not the ounces
Zone
Counted from your origin ZIP
Delivery category
Residential or commercial
Paste the order or drop a screenshot

Zones are relative to where you ship from, so the same destination is a different column for a different seller. That lookup happens for you the moment the destination is known — there is no chart to keep on the wall.

2Billy AI

Resolves every input before the lookup runs.

Billy AI
  • Reads a pasted order or a screenshot into a shipment with its weight and dimensions
  • Validates the destination and badges it residential or commercial, because that feeds a modifier
  • Runs the same parcel through all four carriers' matrices instead of one habitual carrier's
  • Included on every plan, so reading four rate cards is never your job
Tier, zone, and category resolved.
3
Four all-in numbers, no rate card
Base cell plus every modifier, folded in
Paid from the prepaid wallet
Card, Apple Pay, Google Pay, ACH, or crypto
all-in
USPS
Commercial-tier label bought
The finished number, not the base cell
all-in

A rate card shows base cells; a quote shows the finished price. The exact quoted amount leaves your balance, and a carrier reweigh — the one thing that can still move afterwards — posts as its own ledger entry rather than an unexplained difference.

Same matrix, whatever sold it

The zone is set by the buyer, never by the storefront.

Shopify, Etsy, WooCommerce, and TikTok Shop sync into the To Ship queue, and every order is priced by the same lookup: your origin against the buyer's ZIP, the packed parcel's weight tier, the delivery category on the validated address. A platform's own shipping tab may show you a different number, but it is reading a different tier — not a different distance.

Shopify logoShopify
Etsy logoEtsy
WooCommerce logoWooCommerce
TikTok Shop logoTikTok Shop
Amazon logoAmazon
eBay logoeBay
Squarespace logoSquarespace
Wix logoWix
Walmart logoWalmart
Shopify Plus logoShopify PlusSoon
Square logoSquare
BigCommerce logoBigCommerce
Magento logoMagento
Zapier logoZapierSoon
NetSuite logoNetSuiteSoon
Ecwid logoEcwidSoon
Temu logoTemu
Shein logoSheinSoon
ChannelAdvisor logoChannelAdvisorSoon
SkuVault logoSkuVaultSoon
Zoho Inventory logoZoho InventorySoon
Patreon logoPatreon
The lookup, done for you

You do not need to read four matrices.
You need the four finished numbers.

Everything this page decomposes — tier, zone, modifiers, account level — is folded into one all-in figure per carrier before you pay a cent.

The quote is the debit,
to the cent

One prepaid wallet, funded by card, Apple Pay, Google Pay, ACH, or crypto, is charged exactly the all-in number you saw at quote time. Every label is its own ledger line, so your real cost per parcel — base plus every modifier — is a fact you can read, not an average you reconstruct from invoices.

Wallet balance
$1,247.36USD
AI

The address resolved
before the lookup runs

Because address modifiers hinge on classification, the destination is validated at quote time and badged residential or commercial before payment. The rate you compare carriers on is computed against the delivery category the carrier will actually apply — not against a guess that gets corrected later.

BillyLIVE
Where's the package to Maya?
It's in transit via UPS. Expected Friday, Aug 7.
UPS
1Z8923A6B05G4123456
In transit
Austin, TX → Dallas, TX
Ask Billy anything...

Commercial tiers,
from parcel one

Labels are priced at commercial tiers across all four carriers with no monthly minimum to print — the tier gap this page describes is closed by default, whether you ship two parcels a month or two hundred a night.

Shipment summary
UPS Ground$12.49
Insurance$0.75
Fuel surcharge$0.32
Total$13.56

Four matrices,
quoted side by side

USPS, UPS, FedEx, and DHL each run their own lookup on the same weight, dimensions, and destination, and the four finished prices sit next to their delivery windows. The carrier that wins zone 2 rarely wins zone 8 — with four columns on screen, that stops mattering.

Compare rates
UPSUPS$12.48
FedExFedEx$13.22
DHLDHL$14.10
USPSUSPS$11.79
Duties & taxes paid

Rate anatomy,
as an endpoint

The same quote engine is a REST call: send the parcel and destination, get every carrier's all-in figure back in JSON. Unlimited calls on every plan, with signed webhooks for what happens after purchase.

POST /v1/shipments
{
"to": { "name": "Maya" },
"from": { "name": "Alex" },
"service": "ups_ground",
"label_format": "pdf"
}
Webhook delivered
GoatLabels mobile shipments queue showing all-in carrier prices
Billy quoting a weighed parcel against four carriers on mobile

Four lookups done

CL-1051 · zone resolved from your origin

Four rate matrices, one thumb

The finished number, on the phone beside the scale.

Nobody cross-references four zone charts standing at a packing table, and nobody should have to. Weigh the packed box, confirm the destination, and read four finished prices with their delivery windows next to them — the entire decomposition on this page, resolved at the moment you actually need it.

Weigh the packed parcel and enter real dimensions — the tier is selected from those, not from the item.
The destination is validated and badged, because the delivery category feeds a modifier on some carriers.
Four all-in numbers come back with base cell, zone, and modifiers already folded in.
Delivery windows sit next to the prices, so the cheapest service that still hits the date is visible.
Buy from the prepaid balance and the exact quoted figure is what leaves it.
Billy is included, not a paid tier

Say the box and the town. Get four finished prices.

Reading a rate matrix out loud is nobody's idea of a workflow. Hold the mic, say what the parcel weighs and where it is going, and Billy resolves the zone from your origin, validates and classifies the destination, and reads back what each of the four carriers comes to as a single all-in number. It remembers your saved box sizes, so the weight tier is chosen from a real measurement rather than a guess. Included on every plan. This is the real product, not a render.

goatlabels.io/dashboard/shipments — Billy
Billy reading back a parcel's carrier quotes and tracking history over the purchased labels list

Listening

"What does the packed box come to going to Austin?"

Out for delivery

CL-1051 · Austin, TX · commercial tier

Speaks plain English · resolves the zone from your origin ZIP · reads four all-in numbers back · included on every plan, never a pricier tier.

Four lookups, side by side

The same parcel lands in four different cells.

Each carrier runs its own matrix, so identical weight and identical distance still produce different prices and different delivery windows. These columns show finished figures — base cell, zone, and every applicable modifier already folded in — and the column you pick is what leaves your prepaid balance. Figures are illustrative, in the same register as the worked decomposition above; quote your real parcel for a current number.

Denver, CO → Austin, TX1.4 lb10×7×4 in
Cheapest cell for this parcel
USPS

USPS

Ground Advantage

2–5 days

$7.40

$1.20 of Premium insurance included

all-in · modifiers already folded in

UPS

UPS

Ground

3–4 days

$10.80

$1.20 of Premium insurance included

all-in · modifiers already folded in

FedEx

FedEx

Home Delivery

2–4 days

$11.40

$1.20 of Premium insurance included

all-in · modifiers already folded in

No rate card to cross-referenceVoid → credit straight back to your walletMulti-currency display
Public API v1

The whole lookup, one request.

Everything this page explains — tier, zone, address classification, seasonal and account modifiers — collapses into a single quote call that returns four finished numbers. Compare them in code, pick a winner per parcel, and buy with the same key. Unlimited calls on every plan.

One request quotes USPS, UPS, FedEx, and DHL on the same parcel
Each response line is all-in — base, zone, and modifiers already folded
Residential and commercial classification returned with the validated address
OpenAPI 3.1 spec, signed webhooks, idempotency keys — no SDK lock-in
Read the API docs Get a free API key$0 on every plan
curl https://api.goatlabels.io/api/v1/quotes
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"
}
Commercial tiers without the account

Two plans. Commercial tiers on both, from parcel one.

The largest controllable gap on this page is which tier the lookup is read at, and closing it used to take volume, an account, and a negotiation. Free covers 50 shipments a month at commercial-tier pricing across all four carriers; Pro is a flat monthly plan with unlimited shipments and cheaper label pricing on top of that.

Pro

Most popular
$40/ month
Unlimited shipments — no monthly cap
Label pricing that scales down further as your volume grows
Billy AI on Telegram — quote a parcel without opening the dashboard
API access still free and unlimited

Volume pricing

illustrative
less volumemore volume

more volume → lower per-label rates

Free

$0 / forever

Read the matrix at commercial tiers from the very first parcel, and owe nothing in a quiet month.

Commercial-tier pricing across USPS, UPS, FedEx, and DHL — no carrier account required
50 shipments a month, no monthly minimum to print
Every quote all-in: base cell, zone, and applicable modifiers already folded in
The address validated and classified before payment, because the category feeds a modifier
REST API with unlimited calls; fund by card, Apple Pay, Google Pay, ACH, or crypto

Billy is not an upsell

The assistant that turns a pasted order into a quoted parcel — weight, dimensions, validated destination, four lookups — runs unlimited in the web app on Free. Pro adds Billy on Telegram.

Web, every planTelegram, Pro

API free on every plan

GET /api/v1/shipments

200 OK · plan: free

Unlimited calls on Free — still unlimited on Pro.

Bring the rates you read today

On Pro we will work with you to beat the label rates you are already getting from

ShippoPirate ShipShipStation
No contractsNo carrier account to openStart in seconds
USPSUPSFedExDHL

Every price here is quoted live from USPS, UPS, FedEx, and DHL as one all-in number with the applicable modifiers already inside it, and that exact amount leaves your prepaid balance. Carriers revise their matrices and their fuel-linked components on their own schedule, so a live quote is the only current number. Full pricing details

Where the anatomy bites hardest

Four sellers reading four different columns.

Same lookup, same wallet, same four finished numbers, whether you ship twice a week or twice a minute. These are the four shapes of seller for whom one part of the decomposition dominates everything else.

Sellers sitting just over a weight bracket

Where the tier, not the ounce, decides

Tier, not weight

Rates step rather than slope, so a parcel a couple of ounces into the next bracket pays for the whole bracket. A lighter box or less void fill buys the previous cell, and that saving repeats on every parcel of that shape you ever ship.

4 matrices per parcel all-in figures commercial tiers
goatlabels.io/dashboard/shipments
GoatLabels shipments queue showing all-in carrier prices per parcel

Sellers whose buyers are far away

Where the zone column dominates

Zones are relative to your origin, so two shops with identical products and identical boxes can have structurally different shipping economics. Carriers do not step across zones identically either — the winner near home is frequently not the winner across the country.

The zone is counted from you

No address is simply zone 7 — only zone 7 from somewhere

Sellers quoting postage from a message

Committing to a price before the cell is known

what would postage be to Austin?
Four finished numbers · quoted, not guessed

Anyone still paying counter prices

Where the tier is the entire difference

2

price levels for one physical service — retail at the counter, commercial through a platform

Rate anatomy, answered

What are shipping zones and how do I find mine?
A zone is the distance band between the origin ZIP and the destination ZIP, counted from wherever you ship from — so the same destination sits in different zones for different sellers. Each carrier publishes a zone chart keyed to your origin ZIP prefix, and any label tool that quotes live rates has already looked the zone up for you; the number is baked into the price you see.
Why is the same box cheaper for big companies?
Because they enter the rate lookup at a different tier. Carriers publish a retail tier for walk-up customers and commercial tiers for accounts and platforms that aggregate volume, and the discount is applied to the base lookup before any modifier lands. The box, the service, and the zone are identical — the tier is the only variable, which is why buying through a platform that passes commercial tiers through closes most of the gap.
What is billable weight?
The greater of the parcel's actual weight and its dimensional weight — the full mechanics, divisors, and how to measure live on the package size and weight limits page.
Are online label prices different from post office prices?
Usually, yes — a label bought online is typically priced at a commercial tier while the counter charges the retail tier for the same service, and the cheap shipping labels page covers how to make sure you are on the right side of that line.
Why did my quote change between yesterday and today?
Most likely a modifier moved, not the base rate: seasonal fees switch on and off on published dates, and a corrected address can land in a different delivery category — the full trigger list lives on the shipping surcharges explained page.
Real sellers, real words

Sellers who stopped reading rate cards.

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.
E

Early customer · TikTok

TikTok Shop seller

TikTok Shop
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.
E

Early customer · Etsy

Etsy maker

Etsy
The API is what every shipping API pretends to be. Idempotency that actually works.
S

Sasha R.

Staff engineer, marketplace

API user
Commercial tiers. All-in quotes. No monthly minimum.

Stop reading rate cards.
Start reading quotes.

Enter one real parcel and see the finished number from all four carriers — tier, zone, and every modifier already included.

Sign up in seconds. No card required to see your quotes.