Skip to main content
A token standard is an agreed interface a token contract implements: which functions it exposes, which events it emits, and what those events mean. Standards are what let a wallet display a token it has never seen before, and what let an indexer interpret a transfer without reading the contract’s source. They are also the main reason blockchain data is harder than it looks. There is no single global token standard — each ecosystem has its own, several ecosystems have more than one, and plenty of real tokens follow none of them exactly.

Ethereum and EVM chains

ERC-20 and ERC-721 are the same standard family, and this causes real confusion: both emit an event called Transfer, with a third parameter that is an amount for ERC-20 and a token ID for ERC-721. Deciding which is which requires knowing the contract’s type, which is metadata the event itself does not carry.
Standards are conventions, not enforcement. A contract can call itself ERC-20 and behave differently. Fee-on-transfer tokens move less than the transferred amount; rebasing tokens change every holder’s balance with no Transfer event at all; some tokens move value through internal calls and emit no event. Any dataset built purely from Transfer events will be wrong for these tokens — which is why Allium reconciles balances against onchain state rather than deriving them from events alone.

Solana

Solana does not put token logic in per-token contracts. A single Token Program owns all token accounts, and each token is a mint account with its own supply and decimals. The practical consequence: on Solana a wallet’s holdings are spread across associated token accounts, so “the balance of this address” requires resolving account ownership rather than reading a single mapping. NFTs are just mints with a supply of one, so nothing in the token model itself tells you an asset is an NFT.

Other ecosystems

Why Allium normalizes

Every one of those models answers “who holds what” differently. Reading them yourself means writing a distinct extraction path per ecosystem, then keeping each one correct as programs and standards change. Allium’s job is to collapse that into one shape:
When a number disagrees with a block explorer, check the token standard before checking the pipeline. Fee-on-transfer, rebasing, and compressed assets account for most apparent discrepancies. Data caveats lists the known cases.

Next steps