Canadian · Validation

Vessel IMO number check digit validator.

Check whether a ship's 7-digit IMO number has a valid check digit. This tests the checksum only: it cannot tell you whether the number was issued or belongs to a real vessel. Everything runs in your browser: nothing you type is transmitted anywhere.

Source: IMO number scheme, per Wikipedia and python-stdnum Checksum only — not a vessel lookup

Advertisement

Inputs

"IMO" plus 7 digits (the "IMO" prefix is optional). Enter 6 digits to see what the check digit would be.

Result

Enter an IMO number and press Validate.

How the IMO number check digit works

A vessel IMO number is the letters “IMO” followed by seven digits: a six-digit sequential number and one check digit. To verify it, multiply the first six digits by 7, 6, 5, 4, 3 and 2 in order, add the products, and take the last digit of the total. That digit must equal the seventh digit.

Worked example, IMO 9074729: 9×7 + 0×6 + 7×5 + 4×4 + 7×3 + 2×2 = 63 + 0 + 35 + 16 + 21 + 4 = 139, whose last digit is 9, matching the seventh digit.

Sources: Wikipedia, IMO number (which cites Teppo Vuori's check-character page and the EMSA LRIT database error table), and the maintained python-stdnum implementation, stdnum/imo.py, which uses the same weights. Note that some real ships carry numbers that fail this check.

What a passing checksum does and doesn’t tell you

A valid check digit only proves the digits are internally consistent. It checks format and checksum only: it does not confirm the number was ever issued or that it belongs to any vessel. To look up a ship, use the IMO's official GISIS Ship and Company Particulars module. This tool runs entirely in your browser: nothing you type is transmitted, stored, or logged.

Advertisement
Advertisement
Listening…