EU VAT Number Checker

This EU VAT number checker validates the format of a VAT number for all 27 EU member states, and additionally verifies the official check-digit formula for Dutch numbers. Use it to catch typos before you submit a number to an invoice, contract, or the EU's VIES lookup.

How to use it

Paste the VAT number with its two-letter country prefix (e.g. DE, FR, NL) — spaces are ignored. The tool checks the number against that country's published format: digit count, letter positions, and total length.

Format vs. checksum

A VAT number can be the right shape (format-valid) without being an actual, currently registered business — the only way to know that is a live lookup against VIES, which queries each country's tax authority in real time. This tool is a fast first-pass filter, not a substitute for VIES before you rely on a number for an invoice or tax filing.

Why the format varies by country

Each EU member state assigns VAT numbers using its own internal numbering scheme built on top of an EU-wide two-letter country prefix. Some encode a checksum (like the Netherlands, which reuses its BSN/RSIN 11-proef formula), others don't publish one at all — which is why a single one-size-fits-all validator can't safely check every country's checksum with equal confidence.

EU VAT Number Checker Pro

Pro version coming soon — batch validation via CSV upload, exportable results, API access, and an offline version. The free tool stays free.

Pro version coming soon

Batch validation via CSV upload, exportable results, API access, and an offline version are on the way. The free tool stays free.

Frequently asked questions

Does this replace checking VIES?

No. This tool checks format (and, for the Netherlands, the check-digit formula) so you can catch typos before you submit a number anywhere official. The only authoritative source for whether a VAT number is currently registered and active is the EU's VIES system (ec.europa.eu/taxation_customs/vies).

Why does it only verify a checksum for the Netherlands?

Several EU countries publish a documented check-digit algorithm, but getting one subtly wrong and reporting "valid" on a bad number is worse than not checking at all. Dutch company VAT numbers reuse the same 11-proef formula as the BSN, which this site already implements and trusts. Other countries are format-checked only for now.

My Dutch VAT number fails the checksum — is the tool broken?

Not necessarily. Since 2020, Dutch sole traders (eenmanszaken) were issued new VAT numbers that are deliberately not derived from their BSN, using a different internal scheme the tax office has not published. Company VAT numbers still derive from the RSIN and will pass the 11-proef check.

What format should I paste the number in?

With or without the country prefix, and with or without spaces — e.g. "NL852416864B01" or "852416864 B01" both work. The tool strips spaces and uppercases letters automatically before checking.

Does this tool send my VAT number anywhere?

No. Everything runs client-side in JavaScript. Nothing is transmitted, logged, or stored.