When you buy SPY the ticker is a guarantee. Someone administers it, exactly one instrument holds it, and a listing venue would stop a second from appearing. That guarantee is so dependable it becomes invisible — you stop noticing it is there at all.
It is not there on-chain. A token’s symbol is a string the contract declares about itself. Nothing stops two tokens declaring the same one, and nothing stops a new contract declaring the symbol of an asset that already exists and is well known.
How often this actually happens
Often enough to be a design constraint rather than an edge case. Sweep the tokens trading across a couple of chains, compare their symbols against the asset codes of established exchange-traded assets, and you get a steady stream of collisions — and most are squatters rather than the same asset. Same three or four letters, entirely different thing.
It is worth being precise about why this is more than untidy. Key a database on the symbol and you do not get an error. You get one row, quietly accumulating the history of two unrelated assets into a single series that looks perfectly well-formed and means nothing.
The address is the identity
The contract address is the only field that actually identifies a token, and it is the field to key on — in a database, and in your own head before you click buy.
There is a second subtlety that catches people who have already learned the first. Addresses are only unique within a network. Key on the address alone while covering more than one chain and a Solana pool can collide with an EVM one — and you are back to two assets interleaving in one row, the same failure a level deeper. The identity is the pair: network plus address.
What to do about it
Before buying a token you found by name or by chart, take the contract address from the project’s own published source and check it character by character against the one you are about to trade. A chart with the right ticker on top of it is not evidence you are looking at the right token, and a search result is not a source of truth for an address.
The same discipline applies to the pool the token trades in — see on-chain liquidity versus an order book.
This is also why the on-chain half of the NoVo Crypto Market Map is keyed on contract address and network rather than symbol. It is not a data-hygiene preference. Keying on the ticker would silently merge assets with nothing to do with each other, and the resulting chart would look completely normal.