ISRC validator tool
Type or paste an ISRC. It's checked as you go — dashes and spaces are ignored — and decoded into its parts the moment it's valid.
Format checking happens in your browser. The optional catalog lookup searches 90M+ recordings.
What the validator checks
A well-formed ISRC follows four simple structural rules. The tool verifies each one and points to the first that fails.
How an ISRC decodes
Every ISRC is four fields joined together — for example US-RC1-76-07839. The validator splits any valid code into exactly these parts.
What the country code actually tells you
The first two letters are the country where the ISRC was registered — not where the artist is from, and not where the recording was made.
Most codes are standard two-letter country codes (US, GB, NL). A few are special allocations from the International ISRC Agency: QM, QT, and QZ are US codes issued when the country's registrant pool ran low — you'll see them on releases from distributors like TuneCore and CD Baby — while TC and ZZ denote international repertoire. The decoder names the country for you and flags these special cases.
Common ISRC mistakes
Counting the dashes
Dashes and spaces are only for readability. US-RC1-76-07839 and USRC17607839 are the same 12-character code.
Letter O vs zero
The registrant can contain letters, but the last seven characters are always digits — a stray letter O where a 0 belongs is the most common typo.
Confusing it with a UPC or ISWC
A UPC is the numeric barcode for a whole release; an ISWC (starting with T) is the composition code. Only the ISRC identifies one recording.
Assuming the country is the artist's
The country code is where the code was registered by the label — not where the artist is from or where the track was made.
Confident it's valid and want the song behind it? Use the free ISRC lookup tool, or cross to the composition with the ISRC ⇄ ISWC converter.
Frequently asked questions
Validate ISRCs at scale?
Validate and resolve up to 100 ISRCs per call through the SonoVault API — each one returned with its canonical recording and cross-platform IDs, behind one API key.