· 13 min read

How to Check If a Tracking Number Is Real

A tracking number is not an arbitrary string. It ends in a check digit computed from the digits before it, so a number can be proven malformed with arithmetic alone, no carrier lookup required. The uncomfortable part: the most widely circulated scam number of 2026 passes that test perfectly.

A text arrives. A parcel is held, a delivery failed, an address needs confirming — and there is a tracking number, twenty-two digits long, sitting in the message to make it feel real. The obvious question is whether that number is a real one.

It turns out to be two questions wearing one coat, and almost every page that answers it conflates them. The first is whether the number is well formed — whether it is the kind of string a carrier's label printer could have produced. That one has a precise, offline, arithmetic answer, because every major carrier tracking number ends in a check digit calculated from the digits in front of it. The second is whether the number corresponds to a parcel that exists and is coming to you. That one is not a property of the number at all.

This guide works through the arithmetic for the main carrier formats, traces two examples by hand, and then does the thing the ranking pages do not: runs the most widely circulated scam number of 2026 through the same test and reports honestly what happens.

The Short Answer

  • A tracking number checks itself. The last character is a check digit derived from the rest, so you can detect a mistyped or carelessly invented number with nothing but arithmetic.
  • A failed check digit is close to conclusive. A real carrier number will not fail its own checksum. If it fails, you either copied it wrong or nobody generated it properly.
  • A passed check digit proves almost nothing. The arithmetic is simple enough to satisfy deliberately, and the number in the best-known 2026 USPS scam text does satisfy it.
  • What actually settles it is provenance, not the digits. Did you ask for this notification? The US Postal Inspection Service's own guidance is that USPS does not text customers who have not requested tracking, and that its messages do not contain links.

Why a Tracking Number Can Check Itself

Tracking numbers exist to be scanned, often from a crumpled label on a moving conveyor, and a scanner that misreads one digit and silently routes a parcel to the wrong state is worse than a scanner that refuses to read at all. So the number carries redundancy. The final digit is a function of the preceding ones: change any single digit and the function no longer agrees, and the scan is rejected.

This is the same idea as the check digit on a retail barcode — the one our barcode validator checks on an EAN-13 or UPC-A — but each carrier chose its own arithmetic, and none of them chose the same one.

Three schemes cover almost everything you will meet:

  • A weighted mod-10. Walk the digits, multiply alternating positions by two different multipliers, sum, and the check digit is whatever brings the total up to the next multiple of ten. USPS, UPS and FedEx Ground all use a variant of this, with different multipliers.
  • A weighted sum with two moduli. Multiply each digit by its own weight from a fixed list, take the total modulo 11, then modulo 10. FedEx Express uses this.
  • A plain mod-7. Read the serial as one large integer and divide by seven; the remainder is the check digit. DHL Express uses this, which is why a DHL check digit is never 7, 8 or 9.

The Formats, Side by Side

Length and prefix narrow a number to a carrier before any arithmetic happens. These are the forms you are most likely to be handed:

Carrier / formatShapeCheck digit scheme
UPS1Z + 15 letters/digits + 1 digit (18 total)Mod-10, alternating multipliers 1 and 2; letters converted to digits first
UPS waybillOne of A, H, J, K, T, V + 9 digits + 1 (11 total)Same mod-10 as above
USPS IMpb22 digits, starting 92, 93, 94 or 95Mod-10, alternating multipliers 3 and 1
USPS, older 20-digit20 digitsSame, with 91 prefixed before the sum on the legacy form
FedEx Express12 digitsWeights 3,1,7 repeating; total mod 11 then mod 10
FedEx Ground15 digitsMod-10, alternating multipliers 3 and 1 over the first 14
FedEx Ground "96"22 digits starting 96Mod-10 over a 14-digit slice, not the whole string
DHL Express10 or 11 digitsSerial modulo 7
International post (UPU S10)2 letters + 9 digits + 2 lettersWeights 8,6,4,2,3,5,9,7; mod 11 with two special cases

A caveat worth stating plainly, because it affects how much weight to put on any of this: carriers publish their label specifications to shippers, not to the public, and the arithmetic above is the community-maintained reconstruction that open-source tracking libraries have converged on. It reproduces every published test vector in those libraries, and it is what the tracking number checker on this site implements. It is not a carrier-certified document, and a carrier can introduce a format tomorrow that none of it covers.

One format in that table is not really a tracking number at all. An 18-digit all-numeric string is more often an SSCC-18 pallet or carton code than a consumer tracking number, and if you are decoding a logistics label rather than a text message, our GS1 barcode decoder is the better place to take it apart.

Worked Example: A UPS Number, By Hand

Take 1Z5R89390357567127. Strip the 1Z prefix and the final digit, and the body to be checked is 5R8939035756712, with 7 as the claimed check digit.

UPS numbers can contain letters, so letters are converted to digits first. The rule is to take the character's ASCII code, subtract 3, and keep the last digit — which makes A become 2, B become 3, and so on round to Z becoming 7. Here the only letter is R, whose code is 82: 82 minus 3 is 79, so R counts as 9.

Now walk the fifteen characters from the left, counting positions from zero. Even positions are multiplied by 1, odd positions by 2:

PositionCharacterValueMultiplierContribution
05515
1R9218
28818
399218
43313
599218
60010
73326
85515
977214
105515
1166212
127717
131122
142212

The contributions total 123. The last digit of the total is 3, so the check digit is whatever closes the gap to the next multiple of ten: 10 minus 3 is 7. The number claims 7. It agrees, so the number is well formed.

There is a free decoding bonus in a UPS number. The two characters after the six-character shipper account encode the service level. In this example they are 03, which is UPS Ground. A YW there means SurePost, where UPS hands the final leg to USPS — useful to know when a parcel appears to stall and then turns up with the postal carrier.

Worked Example: A USPS Number

USPS uses the same style of mod-10 with the multipliers swapped and raised: even positions are multiplied by 3, odd positions by 1. Take 9400111206206406260787. The first 21 digits are the sequence, the final 7 is the check digit.

The digits at even positions are 9, 0, 1, 1, 0, 2, 6, 0, 2, 0 and 8, which sum to 29; multiplied by 3 that contributes 87. The digits at odd positions are 4, 0, 1, 2, 6, 0, 4, 6, 6 and 7, which sum to 36 and are multiplied by 1. The total is 87 plus 36, or 123 again — a coincidence, but a convenient one. The last digit is 3, so the check digit is 7, and the number agrees.

The leading 94 is an application identifier and the three digits after it are a service type code. On a physical label you will often see the same number with a longer prefix: 420 followed by the destination ZIP, which is routing information added for sortation. That prefix sits outside the checksum, which is why a 30-digit label string and the 22-digit number printed underneath it both validate.

The Number in the Best-Known 2026 Scam Text Passes

Here is the part the other pages leave out. One USPS smishing message has circulated widely enough in 2026 to have scam write-ups named after its tracking number: 9300120111410471677883.

Run it through the USPS arithmetic above. It is 22 digits starting 93, so it claims to be an IMpb number. The digits at even positions are 9, 0, 1, 0, 1, 4, 0, 7, 6, 7 and 8, summing to 43, which multiplied by 3 gives 129. The odd positions are 3, 0, 2, 1, 1, 1, 4, 1, 7 and 8, summing to 28. The total is 157. The last digit is 7, so the required check digit is 10 minus 7, which is 3.

The number ends in 3. It passes.

That result is worth sitting with, because it dismantles the advice you will find almost everywhere else. "Check that the format looks right" is offered as a way to spot a fake, and it does not spot this one. The arithmetic is a dozen multiplications; anyone generating scam texts at volume can satisfy it, and whoever generated this one did. There are even public "realistic tracking number generator" pages that exist to produce format-correct strings.

So the check digit is genuinely useful, but for a narrower job than it is usually sold for. It catches typos, truncation and the lazy end of fabrication. It cannot certify that a parcel exists, and no arithmetic performed on a number can, because the number is just a label — the parcel is a fact about the world.

Why "Just Look It Up on the Carrier Site" Is Weaker Than It Sounds

The other standard advice is to paste the number into the carrier's own tracking page. That is better than the format check, and it is worth doing, but it is wrong in both directions often enough to matter.

A number can fail to appear and still be real. Carriers create a tracking number when a shipping label is bought, not when the parcel is collected, so a legitimate number can return nothing at all for a day or more until the first scan happens. Treating "not found" as proof of a scam will have you dismissing real deliveries.

A number can appear and still be useless to you. It confirms that a parcel exists somewhere in that carrier's network. It does not confirm that the parcel is yours, is coming to your address, or has anything to do with the message that quoted it. A number recycled from a genuine shipment tracks perfectly and tells you nothing.

And there is one real hazard. The scam is usually not about the number — it is about the link next to it. If you go looking for the carrier's tracking page, type the carrier's address yourself rather than following the link you were sent. If you want to inspect a link you have already been given without visiting it, our link checker will expand its redirect chain, and the same principle applies to a code you have been handed on paper rather than in a text.

What Actually Settles It: Provenance

The reliable test is not a property of the digits. It is whether the message had any business reaching you at all. The US Postal Inspection Service's published guidance on package-tracking smishing is unusually concrete, and it is the most useful thing on this page:

  • USPS does not send tracking texts or emails to customers who did not request them for a specific tracking number, whether through Informed Delivery or by asking at usps.com.
  • USPS tracking messages do not contain links. A link in a message claiming to be USPS tracking is the tell, on its own, regardless of how plausible the number beside it looks.
  • Unsolicited texts can be reported by forwarding to 7726 (which spells SPAM), and to the Postal Inspection Service at spam@uspis.gov with a screenshot.

The same logic generalises past USPS. If you did not order anything, no tracking number is a reason to act. If you did order something, the merchant's own order page is the authoritative source, not a text. The Federal Communications Commission maintains consumer guidance on package-delivery scams along exactly these lines.

This is the delivery-scam sibling of the physical version: a parcel you never ordered arriving with a code printed on a card inside it, which we covered in the unordered-package QR code scam. The broader pattern of code-based phishing, and what makes a scanned link different from a typed one, is in our guide to spotting fake QR codes.

What the Label Tells You That the Text Cannot

If you have the physical parcel rather than a message about it, the label carries more than the text ever did, and the barcode is the part worth reading.

A USPS label's barcode usually holds the long form of the number: the 420 routing prefix, the destination ZIP, then the tracking number itself. The destination ZIP is the useful field, because it is the address the sortation network was actually given. If it is not your ZIP, the parcel was not routed to you, whatever the paperwork says. That field exists only in the barcode — the human-readable number printed underneath normally omits it.

Reading it needs a scanner that will decode the symbology and then show you the raw string rather than acting on it. Shipping labels are usually Code 128 or GS1-128, sometimes a PDF417 block, and a phone's built-in camera app generally will not touch any of those — it is built to act on QR codes and little else. Which formats your particular phone can and cannot manage is covered in what barcodes your phone can scan, and if you are holding a symbol and cannot tell what it is, the barcode format identifier will narrow it down from its shape.

Frequently Asked Questions

Can a tracking number be fake?

Yes, in two different senses. It can be malformed, in which case its check digit will not agree with the digits in front of it and arithmetic alone exposes it. Or it can be well formed and still correspond to nothing — either invented with the correct check digit, or copied from somebody else's real shipment. The second kind is far more common in scam messages and cannot be detected by looking at the number.

How many digits is a real USPS tracking number?

Most current USPS package numbers are 22 digits and start with 92, 93, 94 or 95. Older formats run to 20 digits, and international items use the two-letter, nine-digit, two-letter UPU S10 form such as a number beginning LZ or CP. On a shipping label the barcode often encodes a longer 26 or 30-digit string, because a 420 routing prefix and the destination ZIP are prepended for sortation.

Does a valid check digit mean the package is real?

No, and this is the single most important point on this page. The check digit only proves the digits are internally consistent. The most widely circulated USPS scam number of 2026 has a correct check digit — you can verify that yourself with the arithmetic above. A valid check digit means the number could have been printed by a carrier, not that a parcel exists.

Why does my tracking number say "not found"?

Usually because nothing has been scanned yet. A tracking number is issued when the label is purchased, which can be well before the parcel is handed over, so a legitimate number can return no results for a day or more. Other causes are a mistyped digit, which the check digit will catch, or a number from a carrier other than the site you are checking on.

Can I check a tracking number without giving it to a website?

Yes. The check-digit test is arithmetic over the digits you already have, so it needs no network and no carrier account. You can do it on paper using the worked examples above, or use our tracking number checker, which runs entirely in your browser and never transmits what you type.

Why is a DHL check digit never 8 or 9?

Because DHL Express uses a modulo-7 check: the serial is read as one integer, divided by seven, and the remainder becomes the check digit. A remainder from division by seven can only be 0 through 6, so an eight or a nine in that final position means the number is not a well-formed DHL Express number.

What does the 1Z at the start of a UPS number mean?

It is a fixed prefix identifying the number as a UPS tracking number rather than part of the data. What follows it is structured: six characters of encoded shipper account, two characters of service level, seven characters of package serial, then the check digit. The service-level pair is the part worth reading — 03 is Ground, 01 is Next Day Air, and YW is SurePost, where the last leg is delivered by USPS.

Is the barcode on a shipping label the same as the tracking number?

Not quite. It usually contains the tracking number plus extra fields that are not printed in human-readable form, most usefully the destination ZIP on a USPS label. That is why scanning the label can tell you something the printed number cannot — and why it is worth using a scanner that shows you the decoded string rather than one that immediately acts on it.

The Short Version

A tracking number is self-checking, and that is genuinely useful: if the check digit does not agree, stop, because no carrier printed that. But the test runs out of road quickly. A number that passes has told you only that it is shaped like a real one, and the best-known scam number of the year passes comfortably.

What is left is the question the digits cannot answer. Did you ask for this message? Does the link belong there? USPS says it does not text people who did not request tracking and does not put links in the texts it does send — which means the two most common features of these messages are each disqualifying on their own, before you have looked at a single digit.

Check a Tracking Number Without Handing It Over

Paste a number and see which carrier format it matches, whether the check digit agrees, and what the decodable fields say. It runs in your browser — nothing is transmitted.

Read the Label, Not the Text Message

Shipping labels are Code 128, GS1-128 or PDF417 — formats a phone camera app will not touch. Scan & Generate decodes them and shows you the raw string, including the routing ZIP the printed number leaves out.