A balanced 2026 look at open-source and self-hostable shipping-label APIs — Karrio, EasyPost, Shippo, and Lifted ShipKit — with correct licenses, real pricing, and the “engine vs layer” distinction most roundups skip. We say plainly what ShipKit is and is not.
“Open-source EasyPost alternative” and “self-hosted shipping API” searches mostly return proprietary roundups. The honest picture is narrower: there is one genuine open-source carrier engine (Karrio), two dominant managed engines (EasyPost, Shippo), and a different category of tool — a checkout layer — that rides an engine and adds payments. Confusing those categories is where most comparisons go wrong.
| Tool | License | Self-host | What it is | Card payment built in | Notable |
|---|---|---|---|---|---|
| Karrio OSS | LGPL-3.0 (core) | Yes | Carrier-integration engine | No | ~760★; REST + GraphQL; the genuine self-hostable engine |
| EasyPost Proprietary | Proprietary | No (SaaS) | Managed carrier engine | No | 100+ carriers; free up to 3,000 labels, BYOCA $20/mo |
| Shippo Proprietary | Proprietary | No (SaaS) | Managed carrier engine | No | 40+ carriers; free 30 labels/mo, Pro from $17/mo |
| Lifted ShipKit OSS | MIT | Yes | Checkout layer on EasyPost | Yes — forced 3-D Secure | Rides EasyPost; adds a self-hostable label-buying checkout with mandatory 3DS |
A carrier-integration engine does the hard, unglamorous work: it holds accounts with USPS/UPS/FedEx/DHL and dozens more, normalizes their APIs, and returns rates, labels, and tracking. Karrio is the real open-source engine you can self-host; EasyPost and Shippo are managed engines you rent.
A checkout layer sits on top of an engine and handles the buyer-facing moment: showing rates, taking payment, and buying the label. Lifted ShipKit is a layer, not an engine — it rides EasyPost for carrier coverage and adds an open, self-hostable checkout with a payment step. Comparing ShipKit to Karrio head-to-head is a category error; they solve different halves of the problem, and you can even run both.
Each with its honest weakness and where a rival is the right call.
The genuine open-source, self-hostable carrier-integration engine — the direct answer to “an open-source EasyPost/Shippo.” Self-host it, connect carrier accounts, and hit a REST or GraphQL API for rates, labels, and tracking. Its core is LGPL-3.0; an ee/ directory holds a separately licensed enterprise edition (open-core).
Pick it for: owning your carrier integrations end-to-end with no per-label SaaS fee.
Trade-off: you run and maintain the engine (and carrier credentials) yourself; no built-in payment step.
A managed multi-carrier engine with broad coverage and a clean API. Free for up to 3,000 labels, then per-label pricing; bring-your-own-carrier accounts is $20/month. It is the backend many teams (including ShipKit) build on — but it is a hosted service, not something you can inspect or self-host.
Pick it for: the widest carrier coverage with zero infrastructure to run.
Trade-off: closed source, and you don’t control where it runs. Figures per easypost.com/pricing, 2026-07-23.
A managed shipping platform and API aimed at SMBs, with a dashboard plus programmatic access. Free Starter covers up to 30 labels/month; Pro starts around $17/month. Like EasyPost, it’s a hosted SaaS, not open source.
Pick it for: a low-volume store that wants a dashboard as much as an API.
Trade-off: closed source; label caps on the free tier. Figures per goshippo.com/pricing, 2026-07-23.
Be clear about what ShipKit is and isn’t: it is not a carrier engine. It rides EasyPost for carrier coverage and adds the piece the engines leave to you — an open, self-hostable label-buying checkout with a drop-in widget and forced 3-D Secure on every card charge, so the issuer authenticates the buyer before a label prints and chargeback liability shifts off you.
Pick it for: a payments-native shipping checkout where fraud and card liability matter. To own carrier integrations, use Karrio; for the widest coverage as a service, use EasyPost.
Shipping labels bought with stolen cards are a top chargeback category — real goods, shipped fast, disputed weeks later. Carrier engines (Karrio, EasyPost, Shippo) deliberately stay out of payments, which means the fraud and the card liability are yours to solve.
That gap is exactly what ShipKit fills: it forces 3-D Secure on every card charge, so the issuer authenticates the cardholder before the label prints and fraud/chargeback liability shifts to the issuer. If you’re assembling EasyPost + a payment processor yourself, this is the part worth studying — ShipKit is MIT-licensed, so the reference implementation is open.
Every license, star count, and language below was read from the GitHub REST API on July 23, 2026; pricing and carrier figures come from each vendor’s own pages on the same date. Open-source status means source published under an OSI/FSF-recognized license you can self-host and inspect. Figures change — check the primary source before you rely on a number, and tell us if anything here is out of date.
Lifted ShipKit is MIT-licensed and self-hostable: a drop-in label-buying widget on EasyPost, with forced 3-D Secure. Read the code or drop in the managed snippet.