GSTIN Validator — Format & Check Digit (Mod-36)
Paste any 15-character Indian GSTIN. We verify the format, decode the state code, PAN, entity type, and check the official mod-36 check digit. Runs entirely in your browser — nothing is uploaded.
| State code | 27 | Maharashtra |
| PAN | AAPFU0939F | 10-character PAN of the registrant |
| Entity (PAN 4th char) | F | Firm (Partnership) |
| Surname initial (PAN 5th) | U | First letter of surname / entity name |
| Entity number | 1 | Registration number within state for same PAN |
| Default character | Z | Always "Z" (reserved) |
| Check digit | V | Mod-36 checksum (expected: V) |
Format and checksum verified locally in your browser. This does not check whether the GSTIN is currently active on the GST portal — only that the structure and check digit are mathematically correct.
About this tool
GSTIN — short for Goods and Services Tax Identification Number — is the 15-character ID that India's GST Network issues to every registered taxpayer. It is the equivalent of a tax registration number and is printed on invoices, e-way bills, and tax returns. Because the structure is well defined and the final character is a checksum, you can catch most data-entry errors locally without calling an API.
This validator runs the official mod-36 check-digit algorithm in pure JavaScript: it converts each of the first 14 characters to its base-36 value, multiplies by alternating factors of 1 and 2, sums the base-36 digits of the products, takes (36 − sum mod 36) mod 36, and maps it back to a character. If that character matches the 15th position, the GSTIN is structurally valid. The tool also decodes the embedded PAN, surfaces the entity type (individual, firm, company, HUF, etc.), and names the state of registration.
A passing result means the GSTIN is well-formed — not that it is currently active or owned by a specific business. For active-status and legal-name lookups, search the GSTIN on the official GST portal. This tool is built for finance, ops, and procurement teams who need to sanity-check vendor master data, reconcile invoices, or clean up CRM records before pushing to a tax filing.
How to validate a GSTIN (5 steps)
- Paste the GSTIN. Type or paste the 15-character GSTIN from an invoice, business card, or supplier record. Spaces and lower case are auto-cleaned.
- Read the verdict. A green check means format and checksum are both valid. A red X explains exactly which rule failed (length, regex, state code, or check digit).
- Inspect the breakdown. See the state, PAN, entity number, and check digit decoded in a table — useful when reconciling vendor records.
- Spot the entity type. The 4th character of the PAN tells you whether the registrant is an individual (P), firm (F), company (C), HUF (H), or other entity.
- Confirm on the GST portal. If the format is valid but you need to verify legal name and active status, search the GSTIN on gst.gov.in — this tool does not query the portal.
GSTIN structure at a glance
| Position | Length | Meaning |
|---|---|---|
| 1–2 | 2 digits | State code (e.g. 27 = Maharashtra, 29 = Karnataka) |
| 3–12 | 10 chars | PAN of the registrant |
| 13 | 1 char | Entity number (multiple registrations on same PAN) |
| 14 | 1 char | Always "Z" (reserved for future use) |
| 15 | 1 char | Mod-36 check digit (0–9 or A–Z) |
Use cases
- Validating vendor GSTINs before adding to a procurement system
- Sanity-checking GSTINs printed on supplier invoices
- Cleaning a CRM contacts list before a tax filing
- Catching typos in customer billing details on checkout
- Auditing master data for GSTR-1 / GSTR-2 reconciliation
- Confirming the state of registration for IGST vs CGST+SGST routing
- Spotting fake or copy-pasted GSTINs in onboarding forms
Frequently asked questions
+−What is a GSTIN?
GSTIN (Goods and Services Tax Identification Number) is the 15-character unique ID issued by the Indian GST authority to every registered taxpayer. It encodes the state of registration, the taxpayer's PAN, an entity number, and a checksum digit.
+−What does each character of a GSTIN mean?
Characters 1–2 are the state code (e.g. 27 = Maharashtra). Characters 3–12 are the registrant's 10-character PAN. Character 13 is the entity number (1–9, A–Z) for multiple registrations on the same PAN within a state. Character 14 is always 'Z'. Character 15 is the check digit, computed using a mod-36 algorithm over the first 14 characters.
+−How does the GSTIN check digit work?
The check digit uses base-36 with alternating multipliers (1, 2, 1, 2…). Each character's value (0–35, with 0–9 then A–Z) is multiplied by its factor; the digits of the product (in base 36) are summed; the check digit is (36 minus the sum mod 36) mod 36, mapped back to a character. This validator implements the official algorithm exactly.
+−Does this tool tell me if a GSTIN is currently active?
No. This validator only verifies that the structure and check digit are mathematically correct. To confirm active registration status (or look up the legal name and address), use the official GST portal at gst.gov.in — search by GSTIN.
+−What does the 4th character of the PAN inside a GSTIN tell me?
It encodes the entity type: P = individual, F = firm (partnership), C = company, H = HUF, A = AOP, T = trust, B = BOI, L = local authority, J = artificial juridical person, G = government. The 5th character is the first letter of the surname (for individuals) or entity name.
+−Can a single business have multiple GSTINs?
Yes. A business with the same PAN can have one GSTIN per state where it operates, and even multiple GSTINs within the same state for separate business verticals (subject to approval). The 13th character (entity number) increments accordingly.
+−Is my GSTIN data sent anywhere?
No. The validator is pure JavaScript — the GSTIN you type never leaves your browser. There's no API call, no logging, no analytics on the input field.