Where this data comes from
Everything on this site is built from Razorpay's public IFSC dataset, which is derived from the Reserve Bank of India's NEFT/RTGS branch list. The repository is MIT licensed and Razorpay states that the data itself is in the public domain.
Source: github.com/razorpay/ifsc, and upstream of that, the RBI.
The release in use right now
Release v2.0.62, published 2026-09-01, containing 183,214 branches.
What we found in the data
These are things we counted ourselves. They are listed here because each of them decided something about how this site is built.
- Addresses are present on every row, but many contain words run together with no space. That damage is in the source file. We show the address exactly as recorded and say so, rather than splitting words and risking a wrong address.
- MICR codes are present on 83.7% of branches. On the rest we say the value is not present, rather than leaving an empty row.
- SWIFT codes appear on only 6.5% of rows, and those 11,884 rows contain just 878 distinct codes — HDFCINBB alone is attached to 11,007 branches. A further 270 rows carry that same code while naming a different institution entirely. For those reasons we publish no SWIFT pages at all.
- MICR codes are not unique. 522 of them are shared by more than one branch, and one is shared by 38. Sending someone from a MICR code straight to a single branch would have been wrong in those cases.
- The DISTRICT column is not a district. It is identical to CENTRE on every row and holds 39,314 locality-level values. There are no district pages on this site because the data to build them honestly does not exist.
- We do not publish phone numbers. 24.9% of rows have none. Another 14.9% carry a number shared with dozens of other branches — a call centre, not that branch. 12.1% are malformed. A wrong phone number on a page about moving money is the most harmful field in this dataset, so we publish none of them.
- City names are inconsistent. The CITY column mixes city names with neighbourhood and address fragments: 47 different values contain "Mumbai" or "Bombay", but most of them are places like Bandra West or Fort, not other spellings of Mumbai. We fold together values that differ only in spacing, hyphens or spelling within the same state — Dehra Dun and Dehradun, Ranga Reddy and Rangareddy — and we keep a short hand-written list for renamings such as Bombay to Mumbai and Calcutta to Kolkata. We do not guess that a neighbourhood means the city around it. The original value stays visible in the source record on every branch page.
How we decide a code is no longer in use
We have kept every release of the branch list that shipped a CSV since February 2016 — 135 of them, which reduce to 132 distinct builds once byte-identical rebuilds are removed. A code is only marked as retired when it has been missing from at least three consecutive releases and for at least 90 days. That caution is necessary: 9,324 codes in our archive disappeared from a release and then came back.
Where we name a replacement code, the evidence is one of three things: a mapping file published by the data provider itself; an arithmetic rule published by the acquiring bank, accepted only where the branch name of the resulting code also matches; or an exact address match inside the successor bank.
We do not accept a replacement simply because the derived code exists. A rule that adds a constant will land on some live code almost every time, and nothing about the result looks wrong. We measured it: an arithmetic rule produced a live code for 93% of one bank's retired codes, and for about one in ten of those the branch name at the destination did not match the retired record. Most of those turn out to be the same branch renamed — the address is character-for-character identical — but the rule on its own cannot tell a renamed branch from a wrong one. So we require a second, independent signal before naming any successor, and where there is none we say we do not know.
How current this is
New releases appear every few weeks. Every page names the release and date it was built from. A branch can open or close in between. Confirm the code with your bank before sending a large amount.