UPS Package Tracking Scraper avatar

UPS Package Tracking Scraper

Pricing

from $23.99 / 1,000 result items

Go to Apify Store
UPS Package Tracking Scraper

UPS Package Tracking Scraper

Track UPS packages in bulk from a list of tracking numbers. Returns current status, delivery timestamp, and complete scan event history for each shipment. Supports 1Z, Mail Innovations, FGV, and Freight formats.

Pricing

from $23.99 / 1,000 result items

Rating

0.0

(0)

Developer

ParseForge

ParseForge

Maintained by Community

Actor stats

0

Bookmarked

26

Total users

8

Monthly active users

14 days ago

Last modified

Share

ParseForge

UPS Package Tracking Scraper

Track UPS packages in bulk using only tracking numbers. Get status, delivery date, scan events, and package details for up to a million shipments per run. No API account or login required. Export to CSV, JSON, Excel, or XML.

UPS tracking portals and official APIs require you to look up packages one by one or manage complex authentication. This Actor reads the public tracking feed directly from a list of tracking numbers, supporting standard 1Z, Mail Innovations, FGV, and Freight formats. It returns every package's current status, delivery timestamp, and full scan history in a single flat dataset.

Who uses itWhat they scrape UPS for
E-commerce operations managersMonitor delivery performance across hundreds of daily outgoing orders.
Logistics coordinatorsVerify bulk shipment statuses for freight and ground packages in one batch.
Customer support teamsPull real-time tracking updates to answer customer delivery inquiries quickly.
Data analystsCollect delivery timelines and scan events to measure carrier performance.

What it does

This Actor collects UPS package tracking data from a list of tracking numbers and returns each shipment's status, delivery details, and scan events as a structured row.

  • ๐Ÿ“ฆ Bulk tracking: Submit a list of tracking numbers and receive the current status for every package in a single run.
  • ๐ŸŒ Multi-locale support: Request tracking responses in your local language and format, such as en_US, fr_FR, or de_DE.
  • ๐Ÿ“‹ Full scan history: Each result includes the complete list of scan events with timestamps, locations, and descriptions.
  • ๐Ÿ”ข Flexible format support: Works with standard 1Z tracking numbers, Mail Innovations identifiers, FGV codes, and Freight shipment IDs.

Results export to CSV, JSON, Excel, or XML, or straight from the API.

What you can do with UPS data

๐Ÿ“Š Monitor daily order delivery status.

An e-commerce operations manager uploads a CSV of outbound tracking numbers each morning to identify delayed shipments and update customers proactively.

๐Ÿ“ฆ Audit carrier performance over time.

A logistics analyst scrapes scan event histories for thousands of delivered packages to calculate on-time delivery rates and flag recurring transit bottlenecks.

๐Ÿ’ฌ Power customer support with live tracking data.

A support team integrates the Actor into their internal tool to pull the latest UPS status for any tracking number a customer inquires about.

๐ŸŒ Localize tracking updates for international recipients.

A global retailer sets the locale parameter to de_DE or fr_FR so tracking responses match the recipient's language and regional format.

Why choose this scraper

What you get
Bulk processingTrack thousands of packages in one run instead of checking them manually on the UPS website.
No API keyAccess public tracking data without registering a UPS account or managing OAuth credentials.
Structured outputReceive clean, flat rows ready for spreadsheets, databases, or analytics tools.
Multi-format inputMix standard 1Z codes with Mail Innovations, FGV, and Freight tracking numbers in the same request.

How it compares

No other Store actor targets UPS the same way, so the honest comparison is with the alternatives teams actually weigh.

UPS Package Tracking ScraperBuild it in-houseBy hand
SetupRun it now, zero configDays of engineeringNone, but hours per pull
When UPS changesMaintained for youYou fix itYou re-learn the page
Proxies, retries, anti-botBuilt inYour problemBrowser only
OutputFixed JSON schema, CSV/Excel exportWhatever you buildCopy-paste
CostPay per resultEngineering timeAnalyst hours

Configure the run

Drive the Actor with a list of UPS tracking numbers and optionally set a locale for the response language. The maxItems limit controls how many packages are collected per run. The Input tab lists every parameter.

A first run with the defaults:

{
"trackingNumbers": [
"1Z999AA10123456784"
],
"maxItems": 10
}

A larger pull:

{
"trackingNumbers": [
"1Z999AA10123456784"
],
"maxItems": 200
}

Pricing

Pay-per-result: $0.03199 per result collected. You pay only for the results written to your dataset.

Results collectedApproximate cost
100 results$3.20
1,000 results$31.99
10,000 results$319.90

New Apify accounts start with $5 in free credit.

Free users

Free-plan runs return up to 10 results as a preview. Upgrade your Apify plan to collect up to 1,000,000 results per run.

Run it

  1. Create a free Apify account with $5 in credit.
  2. Open the UPS Package Tracking Scraper.
  3. Set your inputs and any filters, then click Start.
  4. Export the results as CSV, Excel, JSON, or XML from the Dataset tab.

Run it programmatically through the Apify API (run-sync-get-dataset-items) or the ApifyClient for JavaScript and Python.

Use with AI agents (MCP)

Give an AI agent live access to UPS through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:

$claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/ups-package-tracking-scraper"

Then prompt it in plain language to run the scraper and read back the results.

Troubleshooting

Why am I getting no results for my tracking numbers?

Check that your tracking numbers are valid and match a supported format like 1Z, Mail Innovations, FGV, or Freight. Also verify that the maxItems parameter is set high enough to include all your input numbers.

The status shows 'Not Found' for a number I know is correct.

UPS may not have scan data available yet for newly created labels. Wait a few hours and retry. If the issue persists, verify the number on the official UPS tracking website to confirm it is active.

My run is taking too long with a large list of tracking numbers.

The Actor processes numbers sequentially. For very large lists, consider splitting them across multiple runs or increasing the Actor's memory allocation in the run settings to improve throughput.

The locale parameter is not changing the response language.

Ensure you are using a valid locale code like en_US, fr_FR, or de_DE. Not all UPS tracking responses are fully localized for every language; some scan event descriptions may remain in English.

I see a proxy or connection error during the run.

This can happen if UPS temporarily blocks the request IP. The Actor uses Apify's proxy rotation. Retry the run, and consider enabling a longer timeout or using residential proxies if the problem repeats.

FAQ

QuestionAnswer
What tracking number formats does this Actor support?It supports standard UPS 1Z tracking numbers, Mail Innovations identifiers, FGV codes, and Freight shipment IDs. You can mix different formats in the same input list.
Do I need a UPS account or API key to use this?No. The Actor reads the public UPS tracking feed directly. You do not need to register an application, manage OAuth tokens, or sign up for a UPS API plan.
How many tracking numbers can I check in one run?You can set the maxItems parameter up to 1,000,000 packages per run. The Actor processes the list sequentially and returns one row per tracking number.
What data does each result row contain?Each row includes the tracking number, current package status, scheduled delivery date, actual delivery timestamp, and the full list of scan events with locations and descriptions.
Can I get tracking responses in languages other than English?Yes. Set the locale parameter to a supported value like fr_FR, de_DE, or es_ES to receive status descriptions and scan event text in that language and regional format.
Does this Actor work for UPS Freight or Mail Innovations shipments?Yes. The Actor accepts tracking numbers for UPS Freight, Mail Innovations, and other UPS service types alongside standard ground and air packages.
How do I export the tracking results?You can export the dataset in CSV, JSON, Excel, or XML format directly from the Apify run console or via the API.
Is there a rate limit or will UPS block my requests?The Actor reads public tracking pages at a controlled rate. For very large runs, the platform's proxy rotation helps distribute requests and reduce the chance of blocks.
Can I schedule this Actor to run automatically every day?Yes. You can set up an Apify schedule to run the Actor daily with a fixed list of tracking numbers or feed it a dynamic list from an external API or data source.
What happens if a tracking number is invalid or not found?The Actor returns a row for every input tracking number. If UPS reports the number as invalid or not found, the status field will reflect that error message from UPS.

Browse the full ParseForge collection for more scrapers.

๐Ÿ†˜ Need help? Email parseforge@protonmail.com with your run ID, your input, and what you expected.

โš ๏ธ Disclaimer. This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by United Parcel Service of America, Inc. It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.