VAT Number Validator
Free European VAT number checker: validate VAT ID formats for all 27 EU countries plus the UK, Northern Ireland, Switzerland, and Norway — with the real published check-digit algorithms (ISO 7064, Luhn, MOD 97, the Dutch 11-proof) where they exist. No signup, instant results, 100% in your browser.
Paste one VAT number per line. Every line is validated locally — nothing is uploaded.
Official VAT identification number formats per country (country code + national block), from EU documentation. A ✓ means this tool also runs that country’s published check-digit algorithm.
| Code | Country | Format | Example | Check digit |
|---|
Greece uses EL, not GR. Northern Ireland uses XI for EU trade (in VIES); the rest of the UK uses GB (HMRC).
Worked examples — click any card to run it. These are illustrative test numbers (format- and check-digit-valid, not real registrations).
Format check vs. VIES: what’s the difference?
A format check answers “could this number exist?” — right country code, right length, right characters, and a check digit that satisfies the published formula. It is instant and offline, and it catches the typo cases: transposed digits, a wrong-length string, or a German customer who pasted their local Steuernummer instead of their USt-IdNr.
VIES (the VAT Information Exchange System) answers “does this number exist right now?” by querying each member state’s national VAT database in real time, and it can return the registered company name and address. VIES is a server-side SOAP service, so a purely client-side page cannot query it — that is why this tool stops at format + check digits and is explicit about it. For B2B zero-rating and invoicing, always confirm in VIES (EU/XI numbers) or HMRC (GB numbers).
Frequently asked questions
What does this VAT number validator actually check?
It checks two things, both offline in your browser: first, whether the number matches the official format of its country (length, characters, and the country-code prefix); second, where a country publishes a check-digit algorithm, whether the digits satisfy it. Fifteen countries get the check-digit test here, including Germany (ISO 7064 MOD 11,10), France (the SIREN key formula), Italy (Luhn), the Netherlands (the 11-proof), Belgium (MOD 97), and Spain (DNI/NIE/CIF controls). The remaining countries are format-checked only.
My VAT number has a valid format. Does that mean it is registered and real?
No. A valid format (and even a correct check digit) only means the number is well-formed enough that it could be real. Whether it is actually allocated to a business can only be confirmed by the official registers: the EU VIES system for EU numbers, or HMRC for United Kingdom numbers. Treat this tool as a first filter that catches typos before you query the real register.
Why can't this tool check the number against VIES directly?
VIES (the VAT Information Exchange System) is a server-side SOAP web service run by the European Commission. Querying it requires a server to sign and send the request, so a purely client-side page cannot do it. That is a deliberate design choice here: this tool runs 100% in your browser with zero network requests, so nothing you type ever leaves your device. For a definitive answer, copy the normalized number from the result panel and paste it into the official VIES checker on the European Commission website.
Which countries are covered?
All 27 EU member states (Austria, Belgium, Bulgaria, Croatia, Cyprus, Czechia, Denmark, Estonia, Finland, France, Germany, Greece, Hungary, Ireland, Italy, Latvia, Lithuania, Luxembourg, Malta, the Netherlands, Poland, Portugal, Romania, Slovakia, Slovenia, Spain, Sweden), plus the United Kingdom (GB), Northern Ireland (XI), Switzerland (CHE), and Norway (NO). The special EU prefix used by non-EU businesses is recognised and explained as well.
Why does Greece use EL instead of GR?
Greece is the one exception to the ISO country-code rule: its VAT prefix is EL, taken from the Greek language code rather than the ISO 3166-1 alpha-2 code GR. This is defined at EU level, and VIES will reject a number starting with GR. If you type GR, this tool flags it and suggests the EL equivalent.
What changed for UK VAT numbers after Brexit?
Since Brexit, GB numbers are no longer part of the EU VIES system; they are validated through HMRC instead. Businesses in Northern Ireland that trade goods with the EU use a special XI prefix, and XI numbers are in VIES. This tool accepts GB (9 digits, 12 for branch traders, GD/HA + 3 digits) and XI (9 digits) and labels each with where it can be officially verified.
What is a VAT check digit, and which algorithms are used?
A check digit is a digit computed from the other digits by a published formula, designed to catch typos. Examples: Germany and Croatia use ISO 7064 MOD 11,10; France computes a two-digit key as (12 + 3 x (SIREN mod 97)) mod 97; the Netherlands uses the '11-proof' (elfproef); Belgium uses 97 minus the number mod 97; Italy and Sweden use Luhn; Slovakia requires the whole number to be divisible by 11. A mismatch almost always means a mistyped digit.
Why does the tool say my Spanish number is a DNI, NIE, or CIF?
Spain's NIF has three shapes. Individuals use a DNI (8 digits + letter, the letter comes from the number mod 23) or, for foreigners, a NIE (X, Y, or Z + 7 digits + letter). Companies use a CIF (a letter indicating the company type + 7 digits + a control digit or letter). The tool detects which shape you entered and applies that shape's control calculation.
What does the B01 part of a Dutch VAT number mean?
Dutch VAT numbers always have the form NL + 9 digits + the literal letter B + 2 digits, for example NL123456789B01. The B and the two digits are a fixed part of the format, not optional. The suffix (usually 01) distinguishes entities within a fiscal unity. The nine digits before the B are validated with the Dutch 11-proof.
Why did my number fail the check-digit test when I copied it from an invoice?
The most common causes are a transposed pair of digits, a missing or extra digit, or copying the wrong number entirely (for example a German Steuernummer instead of the 9-digit USt-IdNr., or a Greek number written with GR instead of EL). Spaces, dots, and dashes are stripped automatically, so retype the digits carefully. If the format is right but the check digit keeps failing, verify the number with the issuing business or in VIES.
Can I validate many VAT numbers at once?
Yes. The Batch tab accepts one VAT number per line and returns a table with each number's detected country, format result, and check-digit result, plus a summary count and a CSV download. Everything still runs locally in your browser, so customer lists never leave your device.
Is it safe to paste real VAT numbers into this tool?
Yes, by design. The page makes zero network requests: no fetch, no XHR, no analytics beacons tied to your input. Validation is pure JavaScript running on your own device, and nothing is stored or transmitted. VAT numbers are business identifiers rather than secrets, but the tool treats them as if they were.
Related tools
Free tool by NRTechStudio