Free plan — no credit card

Free package tracking API — 200 monthly lookups

Use a free shipping tracking API for up to 200 package lookups per month. Choose from 80+ carrier codes, auto-detect selected formats, and receive normalized events when sources return usable data — no credit card required.

Track a package — free
curl https://api.traceapi.dev/v1/track \
  -H "Authorization: Bearer $TRACE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"tracking_number":"1Z999AA10123456784"}'

# Response:
# {
#   "carrier": { "code": "ups", "name": "UPS" },
#   "status": "in_transit",
#   "events": [...],
#   "cached": false
# }

Illustrative request and response. Use a real tracking number with known scans to test a live lookup.

What you get for free

The core tracking API — at zero cost.

The free plan includes the core API surface: carrier-pattern detection, normalized statuses, event timelines, batch tracking, and signed webhooks after fresh lookups. See pricing for plan limits and current subscription availability.

Paid subscriptions are currently unavailable. The free plan remains open for new accounts.

200 free lookups every month

Make up to 200 tracking lookups per month on the free plan — enough for prototypes, internal tools, and small stores. No credit card required to start.

80+ carrier codes available

Trace recognizes selected formats such as UPS, USPS, YunExpress, 4PX, and Cainiao. Numeric FedEx and DHL numbers need source evidence or a carrier override; live results depend on available sources.

Normalized status data

Get consistent statuses (pending, in_transit, out_for_delivery, delivered, exception) with clean event timelines, locations, and timestamps.

Signed webhooks included

Every plan — including free — can emit HMAC-signed tracking.updated, tracking.delivered, and tracking.exception events after fresh, uncached lookups.

Batch tracking

Track up to 20 packages in a single request with /v1/track/batch. Each successful item counts as one lookup; failed items do not consume monthly lookup quota.

30-minute response cache

Repeated lookups can return a recent result without waiting on the carrier again, improving response time and reducing upstream load. Each successful cached response still counts as one monthly lookup.

Plan your usage

A free limit you can plan around.

Each successful single or batch item counts as one lookup, including cached responses and requested stale-data fallbacks. Failed lookups and sandbox tests do not use monthly lookup quota. These examples divide 200 monthly successful lookups across different tracking patterns.

Usage patternApproximate capacity / monthExample workflow
1 successful lookup per shipmentUp to 200 shipmentsFinal-status or occasional checks
2 successful lookups per shipmentUp to 100 shipmentsA first check plus a later refresh
5 successful lookups per shipmentUp to 40 shipmentsLight status-page or support usage
10 successful lookups per shipmentUp to 20 shipmentsMore frequent checks during transit

Examples assume the entire monthly allowance is used for these shipments. Include successful shipment-record monitoring refreshes and async tracking-job items in your budget; they share the same account quota. Actual capacity depends on the number of successful lookups per shipment.

Free tracking API FAQ

Common questions about the free plan.

Is the free tracking API really free?

Yes. The free plan includes 200 package tracking lookups per month at no cost. You can sign up, create an API key, and start tracking packages without entering a credit card. Paid subscriptions are currently unavailable; contact us if you need a higher limit.

Do I need a credit card to use the free plan?

No. You can create an account and generate a trc_ prefixed API key immediately after email verification. No payment information is required for the free tier.

Do failed requests or sandbox tests consume my free allowance?

Failed lookups, including HTTP 503 tracking_sources_unavailable responses, do not consume monthly lookup quota. Sandbox scenarios also use no monthly lookup quota. Requests still count toward the per-minute rate limit. A batch reserves capacity for all submitted items while it runs, then consumes quota only for successful items.

Do cached results and automatic monitoring count?

Yes. Each successful live or cached lookup counts as one. A successful stale-data fallback also counts when you explicitly request it with allow_stale. Successful shipment-record monitoring refreshes and async tracking-job items use the same account quota. Failed refreshes and failed job items do not.

What happens when I hit 200 lookups?

Requests that exceed the 200-lookup monthly quota return a 402 monthly_quota_exceeded error. Your existing data and API key remain valid. Contact support to discuss a higher limit, and check the pricing page for current subscription availability.

Which carriers can I track for free?

The same 80+ carrier-code catalog is available on every plan, including free. Automatic detection covers selected formats, and you can provide a carrier code when needed. Catalog inclusion does not guarantee live coverage; Trace returns an error when no source can provide usable events.

Can I use the free tracking API in production?

Yes. The free plan is suitable for low-volume production use, internal tools, prototypes, and development environments. It provides the same core tracking endpoints and response format as paid plans, with a 200-lookup monthly quota and lower request rate.

How fast is the free tracking API?

The free plan allows 10 requests per minute, which is sufficient for most low-volume use cases. Recent results can be served from a 30-minute cache for faster responses. Each successful lookup, including a cached response, counts toward monthly plan usage. See the pricing page for other plan limits and current availability.

Start tracking for free.

Create an account, generate your API key, and track your first package in under two minutes. No credit card, no sales call, no setup fee.