ClearTrace · Research · Methodology

One token is not one share

Tokenized stocks on Solana do not hold their share count in the balance. Both of the large issuers move it in a separate on-chain field, a multiplier, which is how they apply dividends and stock splits without minting or burning anything. Trade data reports the raw token amount, which is exactly what a raw amount should be and is not a share count. Divide a trade's dollar value by it and you get a price per token. For 424 of 1,101 xStocks that is not the price of the share, and for Netflix it is ten times it.

38.5%
of xStocks carry an effective multiplier other than 1: 424 of 1,101, read live on 2026-09-30. For Ondo Global Markets it is 242 of 451, or 53.7%.
10.1×
Netflix. NFLXx implies $704.26 a token where an independent oracle prices the share at $69.645. Dividing by the multiplier brings it within about 1%.
416
xStocks where reading the obvious field returns a value that has already been superseded, including the Netflix split.

What the multiplier is

Backed's xStocks and Ondo Global Markets both issue on Solana under Token-2022, and both use the scaledUiAmount extension. The mint stores a multiplier, and the number of shares a holder owns is the raw balance times that multiplier. When a dividend is paid the custodian reinvests it and the multiplier rises. When the stock splits, the multiplier moves proportionally. Backed's own integration guide is explicit about the consequence: use raw amounts for transactions, display scaled amounts, and do not mix them.

So the raw balance never moves on a corporate action. That is the design working. It is also why a share count cannot be read off a transfer.

Netflix is the clearest case. Backed's multiplier history records a single event on NFLXx, reason Split, taking the multiplier from 1 to 10 with effect from 2025-11-16. One NFLXx token has represented ten Netflix shares ever since.

What that does to a price

The obvious way to price a tokenized share from trade data is to divide the trade's dollar value by the token amount. We ran that over 90 days of Solana DEX trades for fifteen tickers on 2026-09-30, and checked the answers against Hyperliquid's oracle price for the same stocks, read the same afternoon. The oracle is an independent instrument that has never heard of either issuer.

TickerMultiplierImplied $/tokenOracle $/shareRatio÷ multiplier, vs oracle
NFLX10.0 704.2669.645 10.11×+1.12%
NVDA1.0017 228.54230.350 0.99×-0.95%
MSFT1.0059 513.41517.880 0.99×-1.45%
AAPL1.0033 331.52336.150 0.99×-1.70%

A factor of ten cannot be a timing artifact, and dividing by the multiplier brings Netflix back in line with the other three. The second issuer agrees independently: Ondo's NFLXon, a different contract with a different holder base, implies $711.55 a token and carries the same 10.0 multiplier.

The residual percentages are not a measurement of anything. The implied prices are three-day medians and the oracle readings are point-in-time, taken about an hour apart, so a percent or so of disagreement is the windows, not the tokens.

The small multipliers are the dangerous ones.

Netflix announces itself. The other rows do not. Outside the split cases the correction runs between 0.17% and 0.59%, which is smaller than the ordinary spread between a three-day median and an oracle snapshot, one-directional, and invisible to inspection. It is also the same size as the tracking error anyone measuring this asset class is trying to measure. That is the part worth knowing before you publish a number.

The second trap: the field you read is not the value in force

The extension stores the pending value in a separate field with an activation timestamp, and it does not move that value into the main field when the time passes. Reading the multiplier directly therefore returns the superseded number for any token whose last corporate action has already activated. On 2026-09-30 that was 416 of 1,101 xStocks.

NFLXx is one of them. Read naively it reports a multiplier of 1.0, against a true 10.0. The correct value is the pending one once its timestamp has passed, which is three lines of code and no lines at all if you do not know to look.

Ondo's mints happen to store the same value in both fields today, so this particular reading does not bite there right now. That is a property of their current state, not a guarantee.

How far off, and how often

We read every mint both issuers publish, live over public RPC, and computed the multiplier actually in force.

IssuerMints readMultiplier not 1Range
Backed xStocks1,101424 (38.5%)0.5111 to 10.0168
Ondo Global Markets451242 (53.7%)0.0667 to 10.0261

The clusters are what you would expect once you know the mechanism. Most of the affected tokens sit just above 1, accruing reinvested dividends. A handful sit at 2, 5 or 10 after splits, and a few sit below 1 after reverse splits. The lowest we found is 0.0667.

What this is not

This is not a defect in anyone's data.

A decimals-adjusted token amount is a raw amount, and it reports the raw amount correctly. The multiplier is a display-layer extension by design, and the issuers document it as such. Nothing here says a data provider is wrong, and we are not asking anyone to change a column. The failure is in the join: a raw amount and a share price are different units, and the step that converts one to the other lives in an extension field that a price query has no reason to touch.

It generalises past any one source. Any pipeline that reads a Token-2022 balance or trade amount and treats it as a share count has this problem, whether the amounts come from an indexer, an RPC node or a wallet.

Doing it correctly

Three steps, none of them expensive.

Read the multiplier in force, not the stored field. Take the pending value if its activation timestamp has passed, otherwise the current one.

Apply it per trade, using the value as of that trade. Today's multiplier is the wrong one for a trade from last quarter, because a dividend or split since then has moved it. Backed publishes a free, keyless endpoint returning every change with its reason and activation time; for Ondo the same events are decoded on-chain as an update_scaled_ui_multiplier instruction.

Identify the token by its mint authority, not its ticker. Every one of the 1,552 mints we read is minted by a single authority per issuer: 7pt9tkct… for xStocks and 9foMHsSD… for Ondo Global Markets. A ticker is free for anyone to claim, which is not a hypothetical in this asset class.

What is still open

Multiplier and supply figures: every mint both issuers publish, read live over public Solana RPC on 2026-09-30, from each issuer's own published token list. Implied prices: Dune dex_solana.trades, 90-day window, three-day medians, executed 2026-09-30 17:14 UTC. Oracle prices: Hyperliquid's xyz perp oracle, from the readings committed at data/hip3_ctx/2026-09-30.csv, taken the same afternoon. Reproduce with scripts/build_tokenized_equity_registry.py (free, no API key) and scripts/run_tokenized_equity_probe.py. Method and the full census: research_drafts/2026-09-30-tokenized-equity-phase0.md.