Skip to main content
Real-world assets bring offchain value onchain: tokenized treasuries and money-market funds, tokenized equities, commodities, private credit, and real estate. Dune provides curated RWA data covering both halves of the market — tokenized RWAs, where the asset exists as a real token you can hold and transfer, and synthetic RWA perpetuals on Hyperliquid HIP-3 markets, where traders get exposure to a real-world asset without any token existing.
Maintained by: Dune · Refresh: hourly (activity) to daily (balances, NAV) · Chains: 20 — Ethereum, Arbitrum, Avalanche, Base, BNB, Ink, Mantle, Monad, Optimism, Plasma, Plume, Polygon, Robinhood Chain, Sei, zkSync, plus Solana, Aptos, Sui, XRPL, and Stellar

Explore on Dune

The RWA overview dashboard: AUM by asset class, issuer league tables, and chain distribution.

Get This Data

Access RWA data via API, Datashare, or the Dune App.

Available Data

Registry & Classification

Which assets exist, on which chains, and the product behind each one — asset class, issuer, legal wrapper, and eligibility

Holders & Supply

Daily holder balances, entity attribution, outstanding supply, and issuance flows

Valuation

Token-unit USD prices for AUM, plus onchain NAV events and point-in-time windows

Activity & Trading

Token transfers, secondary-market trades, and RWA perpetual futures activity

All Tables

Complete inventory of all RWA tables

When to Use These Tables

Use RWA tables when you need to:
  • Track AUM, supply, and holder growth for tokenized treasuries, funds, and equities
  • Measure issuer and platform market share across asset classes
  • Analyze holder concentration and entity composition, including CEX and protocol holdings
  • Value onchain positions using curated USD prices (NAV-backed where an oracle exists)
  • Monitor issuance and redemption flows against issuer-reported figures
  • Track secondary-market liquidity for RWAs on DEXs and RWA-native venues
  • Compare tokenized exposure against synthetic perpetual exposure for the same underlying
  • Segment products by legal wrapper, custodian, regulator, or investor eligibility

Query Performance

Activity tables (transfers, trades, perp_trades) are partitioned by block_month. Always filter on it, and add blockchain when you only need one chain — Robinhood Chain and Solana dominate row counts, so unfiltered scans are expensive. balances is a daily snapshot, so filter day to a single date unless you need a trend.

Methodology

Tokenized RWAs are built around rwa_multichain.tokens, the canonical identity registry of every tracked asset. token_id already stores each chain’s native identifier as VARCHAR — EVM contract address, Solana mint address, Aptos asset type, Sui coin type, XRPL and Stellar asset ids — so a single query spans all 20 chains. Join transfers, balances, and supply on (blockchain, token_id). Classification and legal attributes live one layer up: tokens_reference_data is one row per token per chain (join activity on (blockchain, token_id), join balances_enriched on token_product_id), and product_reference_data is one row per product_id. There is no rwa_multichain.token_metadata table. trades has no token_id; resolve the RWA leg with rwa_side plus token_bought_address / token_sold_address. Valuation uses rwa_multichain.prices for AUM. That table is USD per on-chain token unit with [valid_from, valid_to) windows, and supply.supply_usd is already supply * prices.price_usd. nav still records each onchain NAV update; nav_intervals forward-fills those events. The 0x + to_hex(asset_address) join against token_address is EVM-only. For Solana, Stellar, and XRPL, asset_address is UTF-8-encoded token_id, not an EVM address. Prefer prices for cross-chain point-in-time valuation. Synthetic RWA perpetuals use a native perp schema — side, price, size, notional, funding, open interest — not a two-token swap schema. rwa_hyperliquid.markets is the registry of curated HIP-3 markets, rwa_hyperliquid.perp_trades holds taker-leg fills with per-fill trader leverage and margin mode, and perp_metrics_hourly / perp_metrics_daily pre-aggregate volume, open interest, and funding. Perp fills keep the taker leg only, so volume matches Hyperliquid’s own reported figures instead of double-counting both sides, and open interest is reported both-sides (longs plus shorts) to match the Hyperliquid UI. Metrics unique keys use (block_month, block_hour|block_date, perp_dex, market_symbol), not coin. perp_metrics_daily is daily grain, hourly refresh. Tokenized products and Hyperliquid markets share the same legal asset-class vocabulary: credit, fixed_income, cash_equivalent, equities, multi_asset, commodities, real_estate, fx, other. On token rows that vocabulary is product_asset_class (and product_reference_data.asset_class); tokens_reference_data.asset_class is a separate title-case token-list vocab. The two halves never share token identifiers: a perpetual has no token behind it, so it never joins to rwa_multichain.tokens.

Example Queries

Largest tokenized assets by AUM and holder count:
Point-in-time USD value using the price in force on each day:
Synthetic perp volume by asset class (do not sum open interest across days):
Summing open_interest_usd across markets on a single day is valid. Summing it across days is not: open interest is a stock, not a flow.
  • rwa_multichain.prices — curated USD per token unit; the AUM join used by supply.supply_usd
  • prices.day / prices.hour — market prices for RWAs that also trade as ordinary crypto assets
  • tokens.transfers — all token transfers, unfiltered by RWA scope
  • dex.trades — full DEX trade coverage; rwa_multichain.trades is the RWA-scoped subset plus RWA-native venues

Enterprise Data Solutions

Need custom RWA datasets, additional chains, or dedicated support? Talk to our enterprise team.

Build Custom Models

Build private RWA analytics pipelines with the dbt Connector.