GSTIN Guide: Structure, Checksum & How to Verify a GST Number (2026)
📅 August 2026⏱ 9 min read✍️ ToolLoom Editorial
A GSTIN looks like a random string of letters and numbers, but every one of its 15 characters carries meaning — and one mistyped character on an invoice can quietly break your buyer's tax credit claim weeks later. Here's exactly how a GSTIN is built, validated, and why it's worth checking before you hit send.
GSTIN stands for Goods and Services Tax Identification Number — a unique 15-character code assigned to every business registered under India's GST regime. It replaced the older, fragmented system of separate state VAT TINs and service tax registration numbers with one standardised identifier used nationwide, embedded directly into invoices, GST returns, and e-way bills.
Unlike a random ID, a GSTIN is structured — every character position has a defined meaning, which is what makes it possible to validate one just by inspecting its format, without needing to query a government database.
🧾
On Every Invoice
Both seller and buyer GSTINs must appear correctly on B2B tax invoices.
📊
In Every GST Return
GSTR-1, GSTR-3B and related filings are all tied to your GSTIN.
🚚
On E-Way Bills
Goods movement documentation references the GSTIN of both parties.
🔍
Self-Verifiable
Format and checksum can be checked instantly without a portal lookup.
Decoding All 15 Characters
A valid GSTIN follows a fixed pattern: 27ABCDE1234F1Z5 is a typical example. Each segment carries specific information:
Position
Characters
Meaning
1–2
State code
Two-digit code for the state/UT of registration (e.g., 27 = Maharashtra)
3–12
PAN
The business's 10-character Permanent Account Number, embedded exactly
13
Entity code
Which registration this is for that PAN in that state — 1 to 9, then A to Z
14
Fixed 'Z'
Always the letter Z — reserved by design, no variation
15
Checksum
A single check character computed from the first 14, using Luhn mod-36
💡
Because a business's PAN is embedded directly in its GSTIN, you can cross-check that a vendor's GSTIN and their PAN (shown separately on other documents) actually match — a quick sanity check that catches some fraudulent invoicing attempts.
The Checksum Digit — How It Catches Typos
The 15th and final character of a GSTIN isn't part of the identity information — it exists purely as an error-detection mechanism. It's computed using the Luhn mod-36 algorithm, the same family of algorithm used to validate credit card numbers, extended from a 10-digit alphabet to a 36-character alphabet (0–9 and A–Z).
1
Map each character to a value
Each of the first 14 characters is mapped to its position (0–35) in the charset "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ".
2
Apply alternating weights
Working from the right, each character's value is multiplied by an alternating factor of 2 and 1.
3
Reduce and sum
Each weighted value is reduced modulo 36 and added together into a running total.
4
Derive the check character
The final checksum character is (36 − (sum mod 36)) mod 36, mapped back to the charset.
✅
This design means a single mistyped character in a GSTIN will almost always produce a checksum mismatch, flagging the error immediately rather than letting it slip through unnoticed into an invoice or GST filing.
GST State Code Reference Table
The first two digits of any GSTIN identify the state or union territory of registration. A selection of the most common codes:
Code
State / UT
Code
State / UT
07
Delhi
24
Gujarat
08
Rajasthan
27
Maharashtra
09
Uttar Pradesh
29
Karnataka
19
West Bengal
33
Tamil Nadu
23
Madhya Pradesh
36
Telangana
The full list covers all 36+ Indian states and union territories — check the state code against the vendor's known location as a quick plausibility check before deeper validation.
Worked Example — Decoding a Real GSTIN
Take the sample GSTIN 27ABCDE1234F1Z5:
Segment
Value
Meaning
State code
27
Maharashtra
PAN
ABCDE1234F
The registered entity's PAN
Entity code
1
1st GST registration for this PAN in this state
Fixed character
Z
Always Z, by design
Checksum
5
Computed from the first 14 characters via Luhn mod-36
✅
Paste any GSTIN into ToolLoom's GSTIN Validator to get this exact breakdown instantly, plus an immediate valid/invalid verdict with the reason if something doesn't match.
Why a Wrong GSTIN Breaks Input Tax Credit
GST's Input Tax Credit (ITC) system relies on automated cross-matching: the GST portal compares what a seller reports selling (in GSTR-1) against what the buyer claims as credit (via GSTR-2B). If the GSTIN on an invoice is wrong — even a single mistyped character — the transaction won't match correctly between the two returns.
Consequence
Impact
ITC mismatch
Buyer's input tax credit claim gets flagged or rejected
Reconciliation delays
Both parties spend time tracing and correcting the error
Possible notices
Persistent mismatches can trigger GST department scrutiny
Relationship friction
Buyers may hesitate to work with vendors who send error-prone invoices
⚠️
A structurally valid GSTIN (correct format + checksum) doesn't guarantee it's the right GSTIN for that specific vendor — always confirm you have the correct number from the vendor directly, then validate it structurally as a final typo check before invoicing.
When to Validate a GSTIN
Before onboarding a new vendor or client — catch a wrong number before it enters your billing system
Before finalising any B2B invoice — a 10-second check versus a weeks-later ITC dispute
When manually entering a GSTIN from a physical document — handwriting and OCR errors are common sources of typos
When importing vendor data in bulk — spot-check a sample for copy-paste or formatting errors
Before large-value transactions — combine format validation with an official GST portal lookup for registration status
Common GSTIN Mistakes
Confusing similar-looking characters — 0 (zero) vs O, 1 (one) vs I, 8 vs B are frequent transcription errors
Copying an outdated GSTIN — businesses occasionally get new registrations; always confirm the current one
Assuming format-valid means registered — structural validity doesn't confirm active registration status
Not checking the embedded PAN against other KYC documents — a mismatch can indicate a data entry error or something more concerning
Skipping validation because "it looks right" — visual inspection misses checksum errors that only a calculation catches
🧾 Validate Any GSTIN Instantly — Free
Format check, checksum verification, and full state/PAN/entity decode — in your browser, nothing stored.
A GSTIN is always exactly 15 characters — a mix of digits and uppercase letters. It breaks down as: 2 digits for the state code, 10 characters for the embedded PAN, 1 character for the entity/registration number, 1 fixed character (always 'Z'), and 1 final checksum character. Anything shorter or longer than 15 characters is automatically invalid.
An invoice carrying a wrong or mistyped GSTIN can break the buyer's Input Tax Credit (ITC) claim during GST return reconciliation, since the GST portal cross-matches GSTINs between the seller's GSTR-1 and the buyer's GSTR-2B. A mismatch can delay or block the buyer's ITC, trigger reconciliation notices, and damage the business relationship — all from a single typo that a quick validation check would have caught.
The 15th character of a GSTIN is generated using the Luhn mod-36 algorithm, an extension of the classic Luhn algorithm (used for credit card numbers) adapted to a 36-character alphabet of digits 0-9 and letters A-Z instead of just digits 0-9. It processes the first 14 characters with alternating weighting factors and a modulo-36 reduction to produce a single check character that catches the vast majority of single-character typos and transpositions.
Yes. The same PAN holder can register for GST separately in multiple states if they operate branches or business verticals in more than one state — each state registration gets its own GSTIN, with the same 10-character PAN embedded but a different state code at the start and potentially a different entity/registration character.
The 13th character of a GSTIN counts how many separate GST registrations the same PAN holder has within that specific state — it runs 1 through 9, then continues A through Z, allowing up to 35 separate registrations for the same PAN in a single state (for example, separate registrations for different business verticals under the same company).
No. Format and checksum validation only confirms the number is well-formed — it does not confirm the GSTIN belongs to an actively registered, compliant taxpayer. Before large transactions, always cross-check the GSTIN on the official GST portal (services.gst.gov.in) to see live registration status, legal name, and filing status, in addition to running a structural validation check.
About ToolLoom: We build free tools for Indian students, professionals and creators. All validation happens locally in your browser — no GSTIN is ever uploaded or stored. Found an error? Email contact@toolloom.in