Check whether a GST number is well formed
A GSTIN is not a random string. Fifteen characters: a two-digit state code, the holder's ten-character PAN, a registration number for that PAN in that state, a Z, and a check digit worked out from the fourteen before it. That last character is the useful one - it is what makes a transposed pair of characters detectable instead of invisible.
So a number can be tested here, with nothing sent anywhere. Paste it in and you get the state it was issued in, the PAN inside it, what sort of holder that PAN belongs to - proprietor, company, partnership, HUF, trust - and whether the check digit adds up. If it does not, the page tells you which character the number should have ended with.
Check a GST number Needs an account. The trial is free and takes a WhatsApp code.
How it works
- Paste the number. Spaces and hyphens are ignored and lowercase is fine. The verdict appears as you type, so a number pasted out of an email is checked before you have finished reading it.
- Read the parts. State, PAN, holder type, registration number and the expected check digit are shown separately, so a bad number tells you which part of it is wrong rather than just failing.
- Or check a whole list. Paste one number per line into the second box and press Check the list. You get a count of how many passed and how many did not, and the first problem beside each line that failed.
What it handles
- The official check-digit formula - each of the first fourteen characters weighted 1, 2, 1, 2 with both the quotient and the remainder against 36 added in, which is what catches a transposition rather than only a wrong character
- Every state and union territory code in use, from 01 for Jammu and Kashmir to 38 for Ladakh, plus 97 for Other Territory
- Holder type read off the fourth character of the PAN: P for a proprietor, C for a company, F for a partnership or LLP, H for an HUF, T for a trust
- Code 28 named as the old Andhra Pradesh, so an old registration is not mistaken for a current one
- Bulk checking with a checked, valid and problems count over the whole list
- No lookup is made, so it works with the network off and nobody learns which GST numbers you are checking
Your files stay on your computer
This runs inside your browser tab. The file is read and written on your own device and is never uploaded — not the order PDF, not the customer names and addresses printed on it. There is no upload endpoint to send it to.
Questions
- Does this tell me the business is actually registered?
- No, and that is the limitation worth knowing before you rely on it. It confirms the number is well formed - right shape, a real state code, a valid PAN inside it, a check digit that adds up. Whether it is registered, still active, or belongs to the business that quoted it is only knowable from the GST portal.
- Then what is it good for?
- The two things that actually go wrong: a typo when somebody retypes a GSTIN off a purchase order, and a number that was invented outright. A made-up fifteen-character string sails through a length check and fails the check digit, which is exactly what you want to know before raising a B2B invoice against it.
- The number I was given fails on the check digit. What does that mean?
- One of the fifteen characters is wrong, or the whole number was made up. The page shows the character it should have ended with given the other fourteen - compare that against the certificate, and look first at pairs of characters that are easy to swap when typing.
- Why does the 14th character have to be Z?
- On every ordinary GSTIN it is. A few special registration types use something else, and this page reports those as a problem and calls the number invalid - so if you are genuinely looking at one of them, the parts it shows you still hold but the verdict is not the right answer.
- Can I check a whole customer sheet at once?
- Yes, one number per line in the list box. It is the quickest way to clean a column of GSTINs before filing, since most of what is wrong in one is a typo rather than a fake. Anything that passes here still needs the portal for its registration status.