VAT number format validator
Check whether an EU or UK VAT number matches the official country format — the right prefix, length and structure. No sign-up, and nothing is sent anywhere.
This is a format check only. It does not confirm that a VAT number is registered or active — use the EU VIES service for that.
Step by step
How to validate a VAT number format
It takes a few seconds and happens entirely on your device.
Pick the country
Choose the country, or leave auto-detect on so the two-letter prefix selects it for you.
Enter the VAT number
Type or paste the VAT number, with or without the country prefix. Spaces, dots and dashes are ignored.
Read the result
See whether the number matches the published format for that country. Confirm registration separately via VIES.
Anatomy
How a VAT number is structured
A European VAT number begins with a two-letter country prefix, followed by a block of characters set by that country's tax authority. Most are digits only, but several — such as the Netherlands, Ireland, Cyprus and Spain — mix in letters. Using a Dutch number as the example:
Under the hood
Format check vs existence check
There are two different questions you can ask about a VAT number, and they are often confused.
Format check
Does the number look right for its country — correct prefix, length and character pattern? That is what this tool does, instantly and offline.
Existence check
Is the number actually registered to a live business right now? Only an official source such as VIES or a national tax authority can answer that.
Two prefixes to remember
Greece's ISO code is GR, but its VAT prefix is EL. And since Brexit, UK (GB) VAT numbers are validated by HMRC, separately from the EU — they are not in VIES.
Reference
VAT number formats by country
The published format for each supported country — all 27 EU member states plus the United Kingdom. 9 means a digit, X a letter or digit, L a letter.
| Country | Prefix | Format |
|---|---|---|
| Austria | AT | ATU99999999 — U + 8 digits |
| Belgium | BE | BE0999999999 — 10 digits (leading 0) |
| Bulgaria | BG | BG999999999 — 9 or 10 digits |
| Croatia | HR | HR99999999999 — 11 digits |
| Cyprus | CY | CY99999999L — 8 digits + 1 letter |
| Czechia | CZ | CZ99999999 — 8, 9 or 10 digits |
| Denmark | DK | DK99999999 — 8 digits |
| Estonia | EE | EE999999999 — 9 digits |
| Finland | FI | FI99999999 — 8 digits |
| France | FR | FRXX999999999 — 2 characters + 9 digits |
| Germany | DE | DE999999999 — 9 digits |
| Greece | EL | EL999999999 — 9 digits (prefix EL, not GR) |
| Hungary | HU | HU99999999 — 8 digits |
| Ireland | IE | IE9S99999L — 8 or 9 characters |
| Italy | IT | IT99999999999 — 11 digits |
| Latvia | LV | LV99999999999 — 11 digits |
| Lithuania | LT | LT999999999 — 9 or 12 digits |
| Luxembourg | LU | LU99999999 — 8 digits |
| Malta | MT | MT99999999 — 8 digits |
| Netherlands | NL | NL999999999B99 — 9 digits + B + 2 digits |
| Poland | PL | PL9999999999 — 10 digits |
| Portugal | PT | PT999999999 — 9 digits |
| Romania | RO | RO999999999 — 2 to 10 digits |
| Slovakia | SK | SK9999999999 — 10 digits |
| Slovenia | SI | SI99999999 — 8 digits |
| Spain | ES | ESX9999999X — letter/digit + 7 digits + letter/digit |
| Sweden | SE | SE999999999999 — 12 digits |
| United Kingdom | GB | GB999999999 — 9 or 12 digits |
Troubleshooting
Common VAT number mistakes
If the checker reports an invalid format, it's usually one of these.
Using GR for Greece
Greek VAT numbers start with EL, not the ISO code GR.
Dropping a leading zero
Belgian numbers keep their leading zero — a 9-digit Belgian number is usually missing it.
Treating format as proof
A well-formed number still has to be checked against VIES to confirm it is registered.
Extra spaces or dots
Copying a number with spaces, dots or the wrong prefix from a document or website.
Good to know
Validating bank details too?
VAT numbers cover tax; bank identifiers cover the payment itself. Paying across Europe? Read our guide to SEPA payments.
IBAN
The International Bank Account Number identifies one specific account for cross-border payments. Validate an IBAN with our free checker.
SWIFT / BIC
An 8 or 11-character code that identifies the bank itself in international transfers. Check a SWIFT/BIC code with our free checker.
ABA routing number
The 9-digit checksum-validated code that identifies a US bank in ACH and wires. Validate a routing number with our free checker.