Skip to Content

Indian State and Territory Codes: Complete ISO 3166-2:IN List

India has 28 states and 8 union territories, totaling 36 subdivisions with ISO 3166-2:IN codes. These codes are used in address forms, tax (GST) systems, shipping, and KYC compliance. This reference lists every Indian subdivision with its official ISO code.

States (28)

CodeNameRegion Code
IN-APAndhra PradeshAP
IN-ARArunachal PradeshAR
IN-ASAssamAS
IN-BRBiharBR
IN-CTChhattisgarhCT
IN-GAGoaGA
IN-GJGujaratGJ
IN-HPHimachal PradeshHP
IN-HRHaryanaHR
IN-JHJharkhandJH
IN-KAKarnatakaKA
IN-KLKeralaKL
IN-MHMaharashtraMH
IN-MLMeghalayaML
IN-MNManipurMN
IN-MPMadhya PradeshMP
IN-MZMizoramMZ
IN-NLNagalandNL
IN-OROdishaOR
IN-PBPunjabPB
IN-RJRajasthanRJ
IN-SKSikkimSK
IN-TGTelanganaTG
IN-TNTamil NaduTN
IN-TRTripuraTR
IN-UPUttar PradeshUP
IN-UTUttarakhandUT
IN-WBWest BengalWB

Union Territories (8)

CodeNameRegion Code
IN-ANAndaman and Nicobar IslandsAN
IN-CHChandigarhCH
IN-DHDadra and Nagar Haveli and Daman and DiuDH
IN-DLDelhiDL
IN-JKJammu and KashmirJK
IN-LALadakhLA
IN-LDLakshadweepLD
IN-PYPuducherryPY

Delhi (IN-DL) is formally the National Capital Territory. Jammu and Kashmir (IN-JK) and Ladakh (IN-LA) were reorganized from a single state into two union territories in 2019.

Using Indian State Codes in Code

Get All Indian Subdivisions

import { subdivision } from '@koshmoney/countries'; const all = subdivision.forCountry('IN'); console.log(all.length); // 36 // Filter by type const states = all.filter(s => s.type === 'State'); // 28 states const unionTerritories = all.filter(s => s.type === 'Union territory'); // 8 union territories

Look Up a Specific State

import { subdivision } from '@koshmoney/countries'; subdivision.whereCode('IN-MH'); // { code: 'IN-MH', name: 'Maharashtra', type: 'State', countryCode: 'IN', regionCode: 'MH' } subdivision.where('IN', 'KA'); // { code: 'IN-KA', name: 'Karnataka', type: 'State', countryCode: 'IN', regionCode: 'KA' }

Validate a State Code

import { subdivision } from '@koshmoney/countries'; subdivision.isValidCode('IN-TN'); // true (Tamil Nadu) subdivision.isValidCode('IN-XX'); // false subdivision.isValidRegion('IN', 'DL'); // true (Delhi) subdivision.isValidRegion('IN', 'CA'); // false (CA is US/Canadian)

Build a State Dropdown

import { subdivision } from '@koshmoney/countries'; const options = subdivision.forCountry('IN') .sort((a, b) => a.name.localeCompare(b.name)) .map(s => ({ value: s.code.split('-')[1], label: s.name, })); // [{ value: 'AN', label: 'Andaman and Nicobar Islands' }, { value: 'AP', label: 'Andhra Pradesh' }, ...]

Tree-Shaking: Load Only Indian Data

import '@koshmoney/countries/subdivision/IN'; import { forCountry } from '@koshmoney/countries/subdivision'; const states = forCountry('IN'); // 36 subdivisions

PIN Code Validation

India uses 6-digit PIN (Postal Index Number) codes:

import { postalCode } from '@koshmoney/countries'; postalCode.isValid('IN', '110001'); // true (New Delhi) postalCode.isValid('IN', '400001'); // true (Mumbai) postalCode.isValid('IN', '12345'); // false (only 5 digits) postalCode.getName('IN'); // 'PIN Code' postalCode.getFormat('IN'); // 'NNNNNN'

PIN Code Ranges by State

The first digit of a PIN code indicates the postal zone:

First DigitZoneStates Covered
1Delhi, Haryana, Punjab, HP, J&K, Ladakh, ChandigarhNorthern India
2UP, UttarakhandNorthern India
3Rajasthan, Gujarat, DH, DDWestern India
4Maharashtra, Goa, MP, CTWestern/Central India
5AP, Telangana, KarnatakaSouthern India
6Kerala, TN, Puducherry, LakshadweepSouthern India
7WB, Odisha, NE states, AN, SikkimEastern India
8Bihar, JharkhandEastern India
9Army Post Office (APO) / Field Post Office (FPO)Military

Country Data

import { country } from '@koshmoney/countries'; country.whereAlpha2('IN'); // { name: 'India', alpha2: 'IN', alpha3: 'IND', numeric: '356' }