Head to head · Shipment tracking · October 2026 research run

Karrio vs TrackingMore

Karrio scores 48.9 (D) on agent readiness against TrackingMore's 41.8 (E), and leads in every scored category. Both do shipment tracking.

Best shipping and fulfilment APIs for AI agents · All 45 shipping comparisons

Which one, for what

Karrio D

Best for A team that wants to host its own multi-carrier API with its own carrier contracts and can maintain a Django and PostgreSQL stack.

Ahead on

  • Reliability, 76 against 65
  • Schema & documentation, 68 against 31
  • Security & auth, 44 against 31
  • Payments & pricing, 40 against 23
  • Maintenance & community, 29 against 19

Also in its favour

  • Open source

Watch for

No release since 2026.1.32 on 23 June 2026, 107 days before this check, and fix pull requests opened in September 2026 were still open

TrackingMore E

Best for An agent that reports where a parcel is across many carriers from a tracking number, with a cheap per-tracking price.

Also in its favour

  • A hosted endpoint, with nothing to install
  • No incidents deducted, where Karrio loses 7 points for them

Watch for

The API reference renders by script and no OpenAPI file, llms.txt or Markdown docs were found

Why the edge

Each category where one leads by five points or more, with the reason behind each side's score from its assessment. The numbers are in the table below; this is what they stand for.

Schema & documentation Karrio +37

Karrio 68

schemas/openapi.yml is OpenAPI 3.0.3 at version 2026.1.32, with 65 paths, and the docs site renders a reference from it. GraphQL schemas sit beside it (25). No llms.txt on www.karrio.io or docs.karrio.io, both 404 (0). The spec carries about 1,200 description lines and the guides cover authentication, pagination, shipments, trackers and webhooks, with little on when not to use a call, such as the stored /v1/shipments against the pass-through /v1/proxy/shipping (12 of 20). Units, statuses and label types are enums and required fields are marked, but carrier options and connection credentials are open objects whose keys differ by carrier (10 of 15). The guides have cURL and JavaScript examples and the spec has an ErrorResponse schema, while the error guide is a table of HTTP statuses only (9 of 15). Versions are dated and CHANGELOG.md is current, but the changelog page on the website stops at 2024.12.6 (12 of 15).

TrackingMore 31

No OpenAPI or similar file was found in the docs, the SDK repositories or a search, and the reference at trackingmore.com/docs renders by script so its schemas were not read (0 of 25). No llms.txt or Markdown docs (0). The official SDK READMEs give one line per call, and the support centre explains when to pair create with get or a webhook and that the create response carries the result (8 of 20). Field names and the required tracking_number and courier_code appear in the SDK examples, with no types, enums or constraints readable (5 of 15). Examples in seven SDK languages and a table of HTTP and meta codes with messages (12 of 15). v4 in the path with v2 and v3 still served, and the support centre says there is no changelog for switching versions. No dated API changelog was found (6 of 15). 0 + 0 + 8 + 5 + 12 + 6 = 31.

Payments & pricing Karrio +17

Karrio 40

Scored with the self-hosted rule, taking prices from the paid options beside the free edition. No x402, MPP or L402 (0). Self-hosting is free, and the platform page gives starting prices only, $499 a month for the managed Scale platform with pay-as-you-go usage and $50,000 a year for a commercial licence, with no unit price (10 of 20). The open-source edition needs no card or account (20). Install is scriptable with Docker Compose and POST /api/token issues a JWT for an email and password, but carrier accounts and the API key are set up by a person, so half (10 of 20).

TrackingMore 23

Read with the hosted rubric. No x402, MPP or L402 (0). The API page gives a from price of $0.03 a tracked order and three unlabelled figures, and the pricing page's plan prices render by script, so per-unit pricing is partly public (8 of 20). A Free plan and a 14-day trial are offered, and whether a card is asked for was not established (15 of 20). A person signs up in a browser and generates the key there (0). 0 + 8 + 15 + 0 = 23.

Security & auth Karrio +13

Karrio 44

Private API keys with a label, bound to test or live mode, sent as the Basic username or in the Authorization header. The docs say a private key can perform any request without restriction. Short-lived resource tokens for document links can travel in a ?token= query string, which we didn't count against the score because they expire in five minutes by default and open one resource (20 of 30). Test-mode keys keep building away from live carriers. Team permissions are in the paid ee/ code, and the MCP guide asks the agent to confirm with the user before create_shipment (7 of 20). Responses carry carrier tracking text and addresses, and no injection guidance was found (3 of 15). API logs, tracing records and events are stored and readable in the open-source edition, and audit logging is listed as an enterprise feature (10 of 15). SECURITY.md gives an email address only. No security.txt, bug bounty or certification was found, and GitHub lists no published advisories although 2026.1.32 fixed MD5 password storage (4 of 20).

TrackingMore 31

One API key in the Tracking-Api-Key header, shown once, at most four per account, deleted in the web app. No scopes or expiry (20 of 30). No read-only key or least-privilege mode, and delete is one call (4 of 20). Tracking checkpoints are carrier text returned to the model, and no guidance was found (3 of 15). A webhook notification log exists in the web app; no log of API calls or key use was found (4 of 15). No security.txt (404), no security page on trackingmore.com, no certification, bug bounty or disclosure policy found. The CWILL privacy policy points to a trust site that was not read (0 of 20). 20 + 4 + 3 + 4 + 0 = 31.

Reliability Karrio +11

Karrio 76

Read with the local-software lines, since the graded surface is the open-source server its owner hosts. The managed platform has no status page we could find, and its hosts didn't answer on 8 October 2026. Docker images on Docker Hub and PyPI packages at 2026.1.32, with Python 3.11 or later stated for karrio, though karrio-server still declares 3.7 or later (18 of 20). A public tests workflow runs SDK type checks, SDK tests and server tests on PostgreSQL, and the last five runs on main, all on 23 June 2026, passed (25). GitHub Issues is switched off, so bug reports go to Discussions. Reports from July and August 2026 on FedEx dimensions and a GraphQL crash had no reply, and a June report that migration 0093 deleted tracker history was fixed in 2026.1.32 (10 of 25). Versions are calendar-based, not semver, and the breaking rename of the purchased status shipped in 2026.1.20 with a banner in the changelog (8 of 15). Releases are past 1.0 and numbered for production use (15).

TrackingMore 65

Read with the hosted lines and scored on the REST API v4 at api.trackingmore.com. status.trackingmore.com is a hosted status page with uptime and a status update history (20). Its figures and history render by script, so the 90 days could not be read; the static text says there were no updates in the last 7 days (5). Rate limits are published per endpoint, 3 requests a second on trackings/create and 10 a second elsewhere, per account (15). The support centre says a 429 means the application should stop and wait 120 seconds, and a repeated create answers meta code 4101 rather than creating a duplicate. No Retry-After and no idempotency key (10 of 15). No SLA document was found. The Enterprise plan lists 99.99 per cent API uptime as a feature and the API page claims 99.9 per cent uptime, which is marketing rather than a published SLA (5 of 10). v4 is the current version and not marked beta (10). 20 + 5 + 15 + 10 + 5 + 10 = 65.

Maintenance & community Karrio +10

Karrio 29

The newest release, 2026.1.32, is dated 23 June 2026, 107 days before the check, and nothing has landed on main since (10 of 30). No release between 10 July and 8 October 2026 (0 of 20). Of the 15 newest Discussions threads, 10 showed no maintainer reply, and fix pull requests opened between 23 September and 2 October 2026 each had one or two comments and were unmerged, among 83 open pull requests (8 of 25). No entry in the official MCP registry and no MCP package on npm. The PyPI packages match the last release and the npm client is at 2023.1.0 (5 of 15). CI passed on the last commit and the changelog records pinning axios away from compromised versions, while dependency pull requests from April and June 2026 remain open (6 of 10).

TrackingMore 19

Read as a closed service. No dated API change was found. The SDKs were last pushed between February and December 2024, the support articles are dated 2023 and 2024, and the reference is undated (0 of 30). No releases or dated entries in the last 90 days were found (0). Support by email and chat with a help centre; GitHub issues were not read (6 of 15). Seven official SDKs exist but none has changed since December 2024 (10 of 15). The Node SDK has tests and no CI workflow (3 of 10). 0 + 0 + 6 + 10 + 3 = 19.

Score by category

CategoryWeight this runKarrioTrackingMoreEdge
Reliability16%207665Karrio +11
Performance10%pendingpendingpendingnot scored in this run
Schema & documentation13%16.26831Karrio +37
Agent ergonomics13%16.25754Karrio +3
Security & auth14%17.54431Karrio +13
Payments & pricing10%12.54023Karrio +17
Task success10%pendingpendingpendingnot scored in this run
Maintenance & community7%8.82919Karrio +10
Transparency & trust7%8.85957Karrio +2
Negative events≤15-70
TotalD 48.9/100E 41.8/100

Facts side by side

FactKarrioTrackingMore
KindHTTP APIHTTP API
VendorKarrio, Inc.CHANNELWILL CO., LIMITED
Hosted endpointno (local only)https://api.trackingmore.com/v4
TransportsHTTPHTTP
AuthAPI keyAPI key
PricingFreemiumFreemium
Price for shipment trackingnot published$0.03 per transaction
x402nono
LicenceLGPL-3.0 for the server, SDK and modules. Code under ee/ is under the Karrio Enterprise licence and needs a subscription for production use. The MCP package in packages/mcp is Apache-2.0Proprietary hosted service under the CWILL Terms of Service. The seven official SDKs on GitHub are MIT
Read-only variant documentednono
llms.txtnono
Last release2026-06-232024-12-25
Terms last updated2025-04-08no date given
Privacy policy last updated2025-04-082026-08-08
Customer content may train modelsnot found in the textnot found in the text
Terms restrict automated accessnot found in the textyes
Terms restrict benchmarkingyesyes
Terms or service can change without noticenot found in the textyes
Arbitration or class-action waivernot found in the textnot found in the text
Popularity799 stars, 338 PyPI/wk6 stars

How the scores have moved

Karrio

TrackingMore

No score change since it was listed.

Verdicts

Karrio

A current OpenAPI 3.0.3 contract with 65 paths, a free LGPL-3.0 server and 30 carrier connectors suit a team that hosts it. The last release was 23 June 2026, the @karrio/mcp package the docs install is absent from npm, and api.karrio.io didn't resolve on 8 October 2026.

TrackingMore

A small tracking API with published per-endpoint rate limits, meta error codes, a free courier detection call and SDKs in seven languages. The reference docs render by script with no OpenAPI file, plan prices weren't readable, one key has full access, the SDKs date from 2024 and the legal documents belong to the CWILL group.

Before you call either

Karrio

  1. Run your own instance with Docker Compose and call it at http://localhost:5002. Don't rely on api.karrio.io, which didn't resolve on 8 October 2026
  2. Don't run npx karrio-mcp or npx -y @karrio/mcp. Neither name is published on npm, so build the server from packages/mcp in the repository
  3. Change the default admin@example.com and demo login before the instance is reachable, and upgrade to 2026.1.32 or later so passwords aren't stored as MD5
  4. Don't blind-retry POST /v1/shipments with a service set or POST /v1/shipments/{id}/purchase. Fetch the shipment and check its status first, since no idempotency key exists
  5. Use a test-mode API key while building. Send it as the HTTP Basic username or as Authorization: Token key_...

TrackingMore

  1. Send the key as Tracking-Api-Key to https://api.trackingmore.com/v4; the v2 header name Trackingmore-Api-Key and the v3 path are the older versions
  2. Call POST /v4/couriers/detect first when the carrier is unknown (free on v4), then POST /v4/trackings/create with tracking_number and courier_code; the create response already carries the tracking result
  3. Create up to 40 shipments at once with POST /v4/trackings/batch and read them with GET /v4/trackings/get, which filters by tracking numbers, courier and created date
  4. Treat meta code 4101 as an existing tracking rather than a failure, and 4190 as a plan quota to raise with the person; after a 429 wait 120 seconds
  5. Stay under 3 creates a second and 10 requests a second on other calls per account, and prefer a webhook (same version as the API) to polling

Questions

Which is better for AI agents, Karrio or TrackingMore?

Karrio scores 48.9 (D) on agent readiness against TrackingMore's 41.8 (E), and leads in every scored category.

Do Karrio and TrackingMore need an API key?

Both need an API key.

Can an agent call Karrio and TrackingMore without installing anything?

No hosted endpoint is listed for Karrio. TrackingMore has a hosted endpoint at https://api.trackingmore.com/v4.

Are Karrio and TrackingMore open source?

Karrio is open source (LGPL-3.0 for the server, SDK and modules. Code under `ee/` is under the Karrio Enterprise licence and needs a subscription for production use. The MCP package in `packages/mcp` is Apache-2.0). No open-source release is listed for TrackingMore.

Other comparisons with Karrio or TrackingMore

Machine-readable

For companies

Do agents find, use and choose your tools?

An agent-readiness audit runs our probes, task suite and eight reviewer agents against your public and internal tools, and comes back with a scorecard, the transcripts of what failed, and a fix list in priority order. From $2,500, re-run included. We never take payment to move a rank. We do help companies earn one.