If you have used NSE data, you are used to the ticker being the identifier: you ask for RELIANCE and you get Reliance Industries. BSE does not work that way. On BSE the canonical identifier is a six-digit scrip code, and the ticker is a convenience label layered on top of it.
This is not trivia. It explains why BSE lookups fail in ways that feel arbitrary, and it changes what you should paste into the search box.
What a scrip code is
Every security admitted to trading on BSE is assigned a numeric code. A few you will recognise:
| Company | Ticker | Scrip code |
|---|---|---|
| Reliance Industries | RELIANCE | 500325 |
| Tata Consultancy Services | TCS | 532540 |
| HDFC Bank | HDFCBANK | 500180 |
The number is what BSE’s own systems and published files use. When this tool requests your data, the scrip code is what actually goes over the wire — the ticker you typed was resolved to a code first. The same is true of BSE’s daily bhavcopy files, which key on code, not symbol.
Codes are broadly clustered rather than random. Long-listed companies occupy the 5001xx–50xxxx range; later listings run into the 53xxxx and 54xxxx ranges. It is a rough chronological hint, not a rule you should rely on for anything.
Why the code beats the ticker
Tickers are not reliably unique
BSE lists in the region of five thousand active equity scrips, plus thousands of non-equity instruments. Across that universe, short ticker strings collide — and BSE’s symbols do not always match NSE’s for the same company. A scrip code collides with nothing.
Where a ticker in the bundled list maps to more than one candidate, this tool keeps the one with the larger market capitalisation, on the assumption that you meant the company you have heard of. That is a sensible default and it is still a guess. If you care about getting a specific security, give it the code.
Tickers change; codes generally do not
Companies rename themselves, merge, and rebrand, and the ticker follows. The scrip code typically stays with the security through all of that, which is exactly the property you want when pulling a ten-year history. If you keep a watchlist in a spreadsheet, store codes.
Not everything listed is a company share
A large part of the BSE universe is ETFs, mutual fund units, debt instruments, and rights entitlements. Many carry symbol strings that look like tickers but are nothing of the kind. If a search result surprises you, check the company name shown beneath the box before downloading.
Finding the right code
The search box accepts all three of symbol, six-digit code, and company name, and matches as you type. Practical approach:
- Type the company name, not the ticker. Names are far more distinctive, and the suggestion list shows the code alongside each match so you can confirm you have the right entity.
- Read the name under the input. Once you pick a suggestion the resolved company name is displayed. That is your confirmation step — use it.
- Record the code for anything you will download again.
The suggestion list runs entirely in your browser against a scrip list bundled with the page, so it is instant and nothing you type is sent anywhere until you actually submit a download.
When a lookup fails
Submitting an unrecognised symbol returns an error with up to five suggested alternatives, ranked by how closely they match — exact prefix first, then substring, then code prefix, then company name, then approximate string similarity for typos. Clicking a suggestion fills it in.
If nothing sensible comes back, the usual causes are:
- The security is not in the active equity list. The bundled list covers active equity-segment scrips. A delisted, suspended, or non-equity instrument may simply not be there.
- You used the NSE ticker. They differ more often than you would expect. Search by company name instead.
- The list is stale. It is a committed snapshot, refreshed periodically rather than live, so a very recent listing can be missing.
A .BO suffix, as used by some data providers, is stripped automatically — RELIANCE.BO and RELIANCE behave identically.
Scrip codes are not ISINs
An ISIN — the twelve-character international identifier such as INE002A01018 — identifies a security globally and is shared between BSE and NSE. A BSE scrip code is exchange-specific. If you are reconciling holdings against a broker statement or a depository record, ISIN is the field that will join cleanly across sources; scrip code will not. Neither identifier appears in the exported workbook, so if you need one in your sheet, add it as a column of your own.
Where to go next
A scrip’s group — the letter BSE assigns it — is the other identifier that changes how you should read its history, and it is genuinely consequential: some groups cannot be traded intraday at all. That is covered in the group reference.
Keep reading
- Every column in your BSE export, explained — What Open, High, Low, Close, WAP, No. of Shares, No. of Trades, Total Turnover, Deliverable Quantity, % Deli. Qty and the two Spread columns actually mean — and where people misread them.
- BSE groups: A, B, T, Z, X, M and what they change — BSE sorts listed scrips into groups that govern how they trade — including group T, where intraday trading is banned outright. What each letter means for the price history you just downloaded.
- Delivery percentage on BSE: how to read it, and its limits — How deliverable quantity and delivery percentage are calculated, why the columns are sometimes blank, what high and low readings suggest, and the cases where the number misleads.
Or go straight to the download console and pull a file.