CRIUS
PricesRobinhood ChainExplainer

Understanding Tokenized Stock Prices on Robinhood Chain

How Robinhood stock tokens like TSLA and NVDA are priced on-chain: DEX pools, confidence and thin-liquidity flags, copycat tokens, weekends and multipliers.

Crius 9 min read

Short answer: a Robinhood stock token such as TSLA or NVDA is an ERC-20 on Robinhood Chain, and its on-chain price is whatever its DEX pools trade at, so the Crius API prices it from its deepest pool (usually against USDG) and tells you how much to trust that number with confidence, liquidity_usd and thin_liquidity. That market price trades 24/7, can drift from the stock exchange when it is closed, and is quoted per token, which differs from the price per share whenever a token’s corporate-action multiplier is not 1.

Tokenized stocks are one of the reasons Robinhood Chain exists, and they behave differently from memecoins. This article explains where their on-chain prices come from, how to tell a real stock token from a copycat, what happens on weekends, and the multiplier detail that trips up most integrations. All data below is from Robinhood Chain mainnet on Saturday, October 24, 2026.

What a stock token is

Robinhood issues one ERC-20 per stock or ETF. The official tokens are named after the company with a “• Robinhood Token” suffix, for example Tesla • Robinhood Token (TSLA) and NVIDIA • Robinhood Token (NVDA). Crius tracks 200 of them. On-chain they look like any other token: they have holders, transfers and Uniswap pools. Two things set them apart:

  1. They represent an off-chain asset, so there is a “true” reference price on the stock exchange during market hours.
  2. They follow corporate actions through a display multiplier (ERC-8056, “Scaled UI Amount”), covered below and in detail in How Robinhood Chain Stock Token Multipliers Affect Price Data.

The Crius token profile marks them explicitly: "type": "stock" and a ui_multiplier field.

Watch out for copycats

Anyone can deploy a token called NVDA. Searching for it returns the official token and a crowd of impostors:

Terminal window
curl -s "https://api.crius.sh/v1/robinhood/search?q=NVDA&limit=5" | jq -r '.data[] | "\(.address) \(.name) liq=\(.liquidity_usd) price=\(.price_usd)"'
0xd0601ce157db5bdc3162bbac2a2c8af5320d9eec NVIDIA • Robinhood Token liq=4688653 price=211.323
0xdecf74e4aa6ff30b1612e65665aaf650bedecba3 NVDA liq=7259.24 price=2.82017e-07
0xaaea5ec642e0b3ebbe7b484ad3702a408ca743c9 Next Viral Dog Asset liq=4697.03 price=2.71769e-06
0xf533d09576023dbe499f466399cf08a36807410e Neko Viral Digital Asset liq=4546.96 price=2.54715e-06
0x8bb70d2006287048f5beace8dfa174a6b2eda1d6 Nvidia City liq=4419.34 price=2.40706e-06

Never identify a stock token by symbol. Pin the contract address, or check the profile’s type is stock. The official NVDA has $4.7 million of liquidity across its markets; the copycats have a few thousand dollars and prices millions of times lower.

How the on-chain price is formed

A stock token has no single exchange. TSLA alone appears in 12,600 pools on Uniswap v2, v3 and v4, paired with USDG, WETH, other stock tokens such as SPY, and plenty of junk. Most of those pools are tiny and irrelevant; a handful hold almost all the liquidity:

Terminal window
curl -s "https://api.crius.sh/v1/robinhood/token/0x322f0929c4625ed5bad873c95208d54e1c003b2d/pools?limit=5" \
-H "x-api-key: $CRIUS_API_KEY"
Pool DEX Quote Price (USD) Liquidity
0x8517…d32e Uniswap v4 USDG 371.633 $1,059,862
0x3ea7…186f Uniswap v4 SPY 371.438 $676,381
0xf4ac…89e3 Uniswap v3 USDG 371.463 $629,746
0xa953…da07 Uniswap v3 WETH 371.706 $575,362
0xa821…b8a0 Uniswap v4 SPY 371.354 $216,944

Arbitrage keeps the deep pools within a few tenths of a percent of each other: here $371.35 to $371.71, a 0.1% spread. Crius prices a token from its deepest pricing pool and converts to USD through the pool’s quote asset (USDG directly, WETH through ETH/USD, another stock token through that token’s own USD price):

Terminal window
curl -s "https://api.crius.sh/v1/robinhood/token/0x322f0929c4625ed5bad873c95208d54e1c003b2d/price" \
-H "x-api-key: $CRIUS_API_KEY"
{
"symbol": "TSLA",
"usd": 371.633,
"eth": 0.157036,
"dex": "uniswap_v4",
"source_pool": "0x8517f8071ae5b831b738052f12125e8e3d6c158b78728aa44ce3b25e5104d32e",
"quote": "0x5fc5360d0400a0fd4f2af552add042d716f1d168",
"liquidity_usd": 1059862,
"confidence": "high",
"thin_liquidity": false
}

How much to trust a price: confidence and thin liquidity

A price is only as good as the pool behind it. Every Crius price says so:

confidence Meaning
high The source pool holds at least $10,000 of liquidity
medium Between $1,000 and $10,000
low Under $1,000, or the price comes from a thin pool

thin_liquidity: true means no pool for the token reaches $50 of liquidity at all, so the price comes from whatever thin pool exists; treat it as indicative only.

Most large stock tokens are high. Some are not, and that is visible at a glance. This Node.js board prices six stock tokens in one batch call (GET /prices, up to 100 tokens, 1 credit):

// stock-board.mjs: node stock-board.mjs (Node.js 22+)
const API = "https://api.crius.sh/v1/robinhood";
const headers = { "x-api-key": process.env.CRIUS_API_KEY };
const STOCKS = [
"0x322f0929c4625ed5bad873c95208d54e1c003b2d", // TSLA
"0xd0601ce157db5bdc3162bbac2a2c8af5320d9eec", // NVDA
"0x117cc2133c37b721f49de2a7a74833232b3b4c0c", // SPY
"0xaf3d76f1834a1d425780943c99ea8a608f8a93f9", // AAPL
"0xe93237c50d904957cf27e7b1133b510c669c2e74", // MSFT
"0xea72ecca2d0f6bfa1394dbbcff85b52cd4233931", // CRWD
];
const r = await fetch(`${API}/prices?tokens=${STOCKS.join(",")}`, { headers });
const { data, meta } = await r.json(); // data is keyed by token address
for (const [token, p] of Object.entries(data)) {
console.log(
`${p.symbol.padEnd(5)} $${p.usd.toFixed(2).padStart(8)} ${p.change_24h_pct >= 0 ? "+" : ""}${p.change_24h_pct.toFixed(2)}%`,
`confidence ${p.confidence.padEnd(6)} source pool liquidity $${Math.round(p.liquidity_usd).toLocaleString("en-US").padStart(9)}`,
);
}
console.log(`block ${meta.block}, ${meta.lag_ms} ms behind the chain; missing: ${meta.missing.length}`);
SPY $ 762.60 +0.03% confidence high source pool liquidity $1,776,367
TSLA $ 371.63 -0.85% confidence high source pool liquidity $1,059,968
AAPL $ 347.22 -0.34% confidence high source pool liquidity $ 683,880
NVDA $ 211.28 -0.86% confidence high source pool liquidity $1,061,079
MSFT $ 523.10 +0.59% confidence high source pool liquidity $ 388,879
CRWD $ 983.01 +0.37% confidence medium source pool liquidity $ 1,465
block 96733717, 53 ms behind the chain; missing: 0

CRWD stands out twice: its source pool holds only $1,465, so its price is medium, and $983 is not CrowdStrike’s share price. That second point is the multiplier, next.

Price per token versus price per share

Robinhood stock tokens keep balances fixed through corporate actions. Instead, each token exposes uiMultiplier(), and the number of underlying shares a balance represents is balance × uiMultiplier. When a stock splits or a dividend is reinvested, Robinhood updates the multiplier; the token itself, and every pool that holds it, does not change.

DEX pools trade the token, so on-chain prices are per token. To get a per-share price, divide by the multiplier:

Token Price per token ui_multiplier Price per share
TSLA $371.63 1.000000 $371.63
NVDA $211.28 1.000775 $211.12
CRWD $984.67 4.000000 $246.17

CrowdStrike split 4-for-1 on July 2, 2026, so each CRWD token now represents four shares. NVDA’s small multiplier above 1 comes from a reinvested dividend. The Crius token profile includes ui_multiplier for every stock token; the full mechanics, with every multiplier change on-chain so far, are in How Robinhood Chain Stock Token Multipliers Affect Price Data.

Markets close; the chain doesn’t

The stock exchange closes overnight and on weekends; Robinhood Chain and its pools never do. The on-chain price keeps trading, but with far less activity and no live reference to anchor it. TSLA by day, from hourly candles:

Day (UTC) Trades Volume Close range
Wed, Oct 21 15,340 $5.33 million $374.60 – $387.19
Thu, Oct 22 15,984 $4.74 million $366.18 – $386.68
Fri, Oct 23 11,995 $3.28 million $368.20 – $380.48
Sat, Oct 24 (to 11:00) 849 $0.12 million $370.27 – $373.24

On Saturday morning TSLA traded about one-twentieth of a weekday’s volume in a tight range. That is normal: with the underlying closed, there is little new information, and arbitrageurs have no exchange price to trade against. Expect weekend prices to be a reasonable guess at Monday’s open, not a quote you could execute at size; check liquidity_usd and the pool depth before relying on one.

On-chain price versus oracle price

The DEX price is not the only price for a stock token. Robinhood provides price feeds through Chainlink for its stock tokens, which report the underlying equity’s value and already include the corporate-action multiplier. Robinhood’s documentation also notes that the oracle is paused while a corporate action is processed, signalled by oraclePaused() on the token, and that integrators should treat a paused oracle as unavailable rather than zero.

Use each for what it is:

  • The oracle answers “what is the stock worth?” during market hours. It is the right input for valuing collateral or settling a derivative.
  • The DEX price from Crius answers “what does this token trade at on Robinhood Chain right now?”, including weekends, with the liquidity behind it. It is the right input for trading, slippage estimates and on-chain analytics.

When the two diverge, the gap itself is information: it is the premium or discount at which the on-chain market trades the token.

Building with stock token prices

  • One token: GET /token/{address}/price (tier 0, 1 credit), or the full profile at GET /token/{address}, which adds type, ui_multiplier, market cap and holder data.
  • Many tokens: GET /prices?tokens=… for up to 100 at a time, as above. See the token price API.
  • Live: subscribe to price:<token> on the WebSocket stream for updates as the token trades (up to 10 a second).
  • History: OHLCV candles merge a token’s real markets and ignore dust trades and isolated off-market prints, so a stock token chart isn’t distorted by its thousands of junk pools.

FAQ

Where does the Crius price for a stock token come from? From the token’s deepest on-chain pool, converted to USD through the pool’s quote asset. source_pool, dex and liquidity_usd tell you exactly which pool and how deep it is.

Why is a stock token’s price different from the stock’s price? Either the on-chain market is trading at a premium or discount (common when the exchange is closed or the pool is thin), or the token’s ui_multiplier is not 1, in which case the per-share price is the token price divided by the multiplier.

Do stock tokens trade on weekends? Yes. Robinhood Chain runs 24/7, so DEX pools keep trading, but volume drops sharply and there is no exchange price to arbitrage against.

How do I know a token is an official Robinhood stock token? Pin the contract address from an official source, or check that the Crius profile reports "type": "stock". The official tokens are named “• Robinhood Token”; tokens that merely share the ticker are not.

What does confidence: low mean? The price comes from a pool with less than $1,000 of liquidity, or from a thin pool because no pool reaches $50. A modest trade can move such a price a lot.

Sources

Build with Crius

Robinhood Chain data in one API

Free plan with 1M credits a month. Your key in under a minute.

Related APIs

More from the blog