How to Track Tokenized Stock Transfers Onchain
Tracking a tokenized stock onchain starts with the token contract and the Transfer event. The harder part is knowing what the token actually represents.
To track tokenized stock transfers onchain, find the token's smart contract address from the issuer's own documentation, then read the Transfer event logs that contract emits on each chain where it is deployed. Every movement records a sender, a recipient, an amount, a block timestamp and a transaction hash, and that log is the authoritative record of who moved what and when.
The part that trips people up is not the mechanics of reading a log. A token labeled with a ticker might be backed by shares held in custody, or it might be a synthetic instrument that tracks a price without holding any underlying share. The same Transfer event looks identical in both cases, so the structure behind the token has to be verified separately before any transfer number means anything.
Key takeaways
- A tokenized stock transfer is an ERC-20 style
Transferevent (or its equivalent on non-EVM chains): sender, recipient, amount, timestamp, transaction hash. - Get the contract address from the issuer's documentation, not from a search result, because fake and copycat contracts share tickers.
- Transfer volume is movement of tokens, not trading volume and not economic activity. It includes mints, redemptions, wallet-to-wallet moves and internal rebalancing.
- About 48% of tracked tokenized equity assets are backed by shares in custody. The rest are synthetic in some documented form, so the backing model must be read from issuer docs, not inferred from the transfer log.
- The same asset can live on several chains at once, so a complete picture requires reconciling logs across every deployment into one schema.
Why this matters now
Tokenized equity is not one product. Across the tokenized equity assets Allium tracks, only about 48% are custodially share-backed, and a majority are synthetic in one documented form or another. If you read a transfer number without knowing which structure produced it, you can draw the wrong conclusion about whether a share actually moved. Getting the structure right is the difference between a number you can trust and a number you cannot.
Step one: get the real contract address
Each tokenized stock is a token contract deployed to one or more blockchains. The contract address is the only unambiguous identifier. Tickers are not unique, names are not unique, and copycat contracts reuse both.
Pull the address from the issuer's published material. Backed Finance documents its token contracts and backing model on backed.fi. Ondo Finance publishes its tokenized product contracts in its documentation. Dinari publishes its dShare contracts in its docs. Once you have the canonical address, every log that contract emits is attributable to that issuer's product, and anything emitted by a different address with the same ticker is not.
Step two: decode the Transfer event
On EVM chains (Ethereum, Base, BSC, Arbitrum and others), a token transfer emits a Transfer(address from, address to, uint256 value) event. Three fields tell you almost everything:
- from = 0x000...000 means a mint. New tokens entered circulation, which for a custodial product corresponds to shares being deposited.
- to = 0x000...000 means a burn. Tokens left circulation, which corresponds to a redemption.
- from and to both non-zero is a secondary transfer, one holder moving tokens to another, including deposits to and withdrawals from exchange wallets.
The raw value is an integer scaled by the token's decimals. A token with 18 decimals reporting value = 1500000000000000000 is a transfer of 1.5 tokens. On Solana, the equivalent record is an SPL token transfer instruction rather than an event log, but the same four facts (source, destination, amount, slot time) are present.
A worked decode
Suppose a contract with 18 decimals emits this log in a transaction:
| Field | Raw value | Meaning |
|---|---|---|
| from | 0x0000...0000 | Mint (new issuance) |
| to | 0x9a3f...c21b | Recipient wallet |
| value | 2500000000000000000 | 2.5 tokens |
| block timestamp | 1760000000 | Unix time of the block |
Reading this correctly, 2.5 new tokens were minted to wallet 0x9a3f...c21b. If this is a custodial product, that mint should correspond to 2.5 shares deposited with the custodian. If it is a synthetic product, no share changed hands, and the mint reflects a position opened under the issuer's model. Same log, different economic meaning, which is why the structure matters.
Step three: know which structure you are reading
Across the tokenized equity assets Allium tracks (11,446 in total), the four documented structure types break down as follows (Allium data, October 12, 2026):
| Structure | Assets | Issuers | What the token represents |
|---|---|---|---|
| Custodial, share-backed | 5,462 | 15 | Backed by shares held in custody |
| Synthetic, price-linked | 4,047 | 6 | Tracks the price, not share-backed |
| Synthetic swap | 1,927 | 2 | Swap exposure, permissioned |
| Issuer sponsored | 10 | 9 | Issuer-structured |
Only about 48% of tracked tokenized equity assets are custodially share-backed. A majority are synthetic in one documented form or another. "Synthetic" is a structure type drawn from issuers' own product documentation, not a judgment about safety. The practical point for tracking is that a transfer of a synthetic token is not evidence that a share moved, so you cannot read custody flows off a synthetic contract's logs.
Step four: reconcile across chains
A single issuer often deploys the same product to several chains, and distinct issuers concentrate on different chains. Trailing 30-day transfer volume by chain shows how spread out the activity is (Allium data, October 12, 2026). Transfer volume here is movement of tokens, not trading volume and not economic activity.
| Chain | 30d transfer volume |
|---|---|
| Base | $42,993,940,278 |
| Robinhood (chain) | $16,903,014,880 |
| BSC | $12,430,831,425 |
| Solana | $9,153,727,978 |
| X Layer | $1,669,923,264 |
| Arbitrum | $971,610,360 |
| Ethereum | $731,025,828 |
| Ink | $133,125,931 |
| HyperEVM | $22,286,216 |
To track a product fully, you query every chain it is deployed to and combine the logs. Otherwise you count one deployment and miss the rest.
Volume rank and holder rank disagree
Transfer activity and holder population are two different measurements, and they do not move together. The trailing 30-day figures by issuer show the gap (Allium data, October 12, 2026).
| Issuer | 30d transfer volume | Holders |
|---|---|---|
| Coinbase Inc. | $42,351,870,911 | 15,438 |
| Robinhood | $16,903,014,880 | 186,044 |
| BTech Holdings | $11,199,801,487 | 313,691 |
| Backed Assets | $8,171,590,229 | 211,510 |
| Backpack | $2,686,750,839 | 86,711 |
| Ondo Finance | $1,878,536,672 | 127,340 |
| Reality | $966,377,097 | 138 |
| S01 Issuer (ST0x) | $640,635,996 | 9,817 |
| PreStocks | $189,892,107 | 60,582 |
| Republic | $14,913,507 | 3 |
| Dinari | $6,349,584 | 2,373 |
| Securitize | $1,192,344 | 81 |
Coinbase records more transfer volume than Robinhood or BTech Holdings while showing far fewer holders. That is a structural difference in who moves tokens on each venue: large average transfer size with a smaller holder base versus small average transfer size spread across many holders. Holder counts and volume are descriptions of usage, not scores. Reality and Republic, for example, show very high volume relative to a handful of holders because they are permissioned, institutional products built for few, large participants by design. A holder number only means something read alongside whether a product is permissioned or open access.
The field-level problem this creates
Reading one contract on one chain is straightforward. The difficulty is that a complete answer spans many contracts, many chains and several data models. An EVM Transfer event, a Solana SPL instruction and a non-EVM equivalent all describe the same action with different field names and encodings. Amounts are scaled by different decimals. A mint on a custodial contract and a mint on a synthetic contract carry different economic meaning but identical log shapes. To compare a Base deployment with a Solana or BSC deployment, each transfer has to resolve to the same fields: asset, issuer, structure type, sender, recipient, amount, USD value and transaction type (mint, burn, secondary transfer). Allium normalizes those records across 150+ chains into one schema with issuer and structure labels attached, turning raw logs into transfers you can count and attribute.
For context on how these movements settle and who holds the underlying, our explainers on clearing and settlement for tokenized securities and what a central securities depository looks like for tokenized securities go deeper on the plumbing behind the token.
Frequently asked questions
How do I find the contract address for a tokenized stock?
Take it from the issuer's own documentation or announcement, not from a search result or a block explorer search by ticker. Issuers such as Backed Finance, Ondo Finance and Dinari publish their canonical token contract addresses in their docs. Tickers and names are not unique, and copycat contracts reuse both, so the address is the only reliable identifier.
Does transfer volume mean the same thing as trading volume?
No. Transfer volume is the total amount of tokens moved by a contract's transfer events. It includes mints, redemptions (burns), wallet-to-wallet moves, exchange deposits and withdrawals, and internal rebalancing. Trading volume is a subset tied to actual buy and sell execution. Treat onchain transfer volume as a measure of movement, not of economic or trading activity.
How can I tell if a tokenized stock is backed by real shares?
The transfer log cannot tell you. A custodial, share-backed token and a synthetic, price-linked token emit identical Transfer events. You have to read the issuer's product documentation to learn the backing model, and for custodial products look for attestations or proof-of-reserve disclosures. About 48% of tracked tokenized equity assets are custodially share-backed, so backing should be verified per product rather than assumed.
What does a mint or burn look like in the transfer data?
A mint shows the from address as the zero address (0x000...000), meaning new tokens entered circulation. A burn shows the to address as the zero address, meaning tokens left circulation. For a custodial product these usually correspond to deposits and redemptions of the underlying shares. A transfer between two non-zero addresses is a secondary movement between holders.
Why do the same tokenized stocks appear on multiple chains?
Issuers deploy the same product to several chains to reach users where they already are, and different issuers concentrate on different chains. A complete count of a product's activity requires querying every chain it is deployed to and combining the logs, because any single chain shows only part of the picture.
How do I decode the raw amount in a Transfer event?
Divide the raw integer value by ten to the power of the token's decimals. A token with 18 decimals and a raw value of 1500000000000000000 represents 1.5 tokens. The decimals figure is a property of the contract and should be read from the contract itself, since tokens do not all use 18 decimals.
Interested in learning more about Allium’s tokenized securities data? Speak to someone on the team.
Allium provides onchain data infrastructure. Companies named in this article may be Allium customers, prospects or commercial counterparties. The authors and other Allium personnel may hold positions in the assets discussed. This article is informational only and is not investment, legal or tax advice. Data and information last reviewed: October 12, 2026.