Check any ISO 6346 container number, IMO ship number, SCAC, UN/LOCODE, USDOT or MC number in seconds — and when a number fails, see the valid numbers it was one keystroke away from being.
No signup required. Six identifier types, did-you-mean repair, owner-prefix lookup, and the check-digit math shown.
Identifier
Case, spaces and hyphens are normalized automatically — paste it as it appears on the paperwork.
QA teams seeding warehouse or OMS test data need numbers that pass real validation. Pick an owner code and serial — or let us roll one — and get a correct ISO 6346 check digit.
Want malformed IDs caught by the system — with orders, inventory and shipments synced across every sales channel?
See Demo Start Free Trial| Identifier | What gets validated |
|---|---|
| ISO 6346 container number | Structure, equipment category, and the full check-digit calculation — shown step by step |
| IMO ship number | Seven digits and the weighted-sum check digit, shown step by step |
| SCAC carrier code | Format, plus the U / X / Z suffix conventions as context |
| UN/LOCODE | Format and a real ISO 3166-1 country check (0 and 1 are excluded by the standard) |
| USDOT number | Format — no check digit exists, and we say so instead of inventing one |
| MC docket number | Format, with the MC- prefix normalized away |
One honest limit, stated up front: this tool proves math, never
registration. A container number can be mathematically perfect and
still belong to no real container — every result carries
registration: "not_checked" so nothing downstream can blur that line.
Check digits exist to catch one-character slips — which means a failing number usually sits one edit away from the number it was meant to be. When a container or IMO number fails here, the tool tries every transposition, substitution, insertion and deletion, keeps only the candidates that pass the full check, and ranks them by how likely the slip was: adjacent-character swaps first, because they're the classic data-entry error the ISO 6346 scheme was designed around. The honesty rule still applies — a repaired number is mathematically valid, not confirmed to exist. Confirm against your booking, manifest or the registry before acting on it.
Container prefixes also get an owner name when they match a seeded set of 34 well-known BIC codes — Maersk, MSC, CMA CGM, Hapag-Lloyd, Evergreen, Triton, Textainer and friends. That's a convenience subset, not the register: an unknown prefix here proves nothing. The full, authoritative register lives at bic-code.org.
The last digit of an ISO 6346 container number, computed from the other ten characters. Every letter maps to a number (A=10 to Z=38, skipping multiples of 11), each position is weighted by a power of two, the weighted values are summed, and the remainder after dividing by 11 gives the check digit — with a remainder of 10 mapping to 0. It exists so that data-entry typos announce themselves.
Take the four letters and six serial digits, convert letters to their ISO values, multiply each character by 2 to the power of its position (1, 2, 4, 8 … 512), add everything up, and divide by 11. The remainder is the check digit; remainder 10 becomes 0. Paste any number above and press "Show the math" to watch the whole calculation on your number.
Three common reasons: a typo somewhere in the eleven characters (the check digit exists to catch exactly this), a fourth character that isn't U, J or Z (the only equipment categories ISO 6346 allows), or a number that was read or keyed incorrectly from paperwork. The result panel shows which check failed and what the correct check digit would have been.
No — and this tool will never pretend otherwise. Valid means the structure and arithmetic are correct. Whether that number is registered to a real box is a question for the BIC registry, not for math. Every result here carries registration: "not_checked" for precisely that reason.
A seven-digit identifier assigned to a ship for life — it survives changes of name, flag and owner. The seventh digit is a check digit computed from the first six. The Ever Given, famous for blocking the Suez Canal in 2021, is IMO 9811000; try it in the checker above and the math comes out even.
Yes — the mint tool above produces numbers with correct check digits from any owner code and serial, which is exactly what you want for seeding test data in a WMS or OMS without touching real containers. The same function is available in code via pip install freightid.
It can show you what the number probably was. When validation fails, the tool lists every single-edit variant — one transposed, substituted, inserted or deleted character — that passes the full ISO 6346 or IMO check, ranked with adjacent-character swaps first. Treat the candidates as leads, not answers: a repaired number is mathematically valid, but only your booking, manifest or the BIC registry can confirm it refers to a real container.
The first three letters of a container number are the owner code and the fourth is the equipment category — together they form the prefix, like TCLU. This page names the owner for a seeded set of 34 well-known prefixes covering the major carriers and leasing companies. The authoritative source is the BIC register at bic-code.org — a prefix this page doesn't recognize is not evidence that it's unissued.