Transparency
Sources & Methodology
Where every number comes from, how it is calculated, and what it cannot tell you. Unknown values are shown as Unknown. Estimates are always labeled as estimates.
Data sources
| Source | Used for | Pairs | Refresh | Reliability |
|---|---|---|---|---|
| Kraken public REST API | Ticker, order book (Depth, max 500 levels/side), daily OHLC | XRP/USD, XRP/EUR, XRP/USDT | 60s (books 30s) | Primary |
| Coinbase Exchange public API | 24h stats, level-2 aggregated order book | XRP-USD, XRP-EUR, XRP-USDT | 60s (books 30s) | Primary |
| XRP Ledger JSON-RPC (public servers) | server_info, ledger, book_offers, amm_info | XRP/RLUSD | 15–60s | Primary (on-chain) |
| Ripple — RLUSD token addresses | RLUSD issuer rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De | — | Static | Official |
| Institution sources | Per-entry links in the Adoption Tracker | — | Manual verification | Varies — labeled per link |
Calculations
- Mid price
- (best bid + best ask) ÷ 2. If the book is empty or crossed, mid is Unknown and every metric that depends on it is Unknown.
- Spread
- (best ask − best bid) ÷ mid, in basis points (1 bp = 0.01%).
- Depth ±2%
- Sum of price × size for all visible orders within 2% of mid, per side, in the pair’s quote currency.
- Slippage
- We walk the visible ask side until the USD amount is filled, compute the volume-weighted average fill price, and report its distance from mid in bps. If the visible book cannot fill the amount, we show Exceeds visible book — we never extrapolate.
- Currency conversion
- EUR sizes use the EUR/USD rate implied by XRP/EUR ÷ XRP/USD mids on the same venue. USDT and RLUSD are treated as $1 — a peg assumption, not a measurement.
- Est. tx per day
- Transactions per ledger in a sample of the last 12 validated ledgers × ledgers per day at the sample’s average close time. A rough extrapolation from ~1 minute of data.
- AMM TVL
- 2 × the RLUSD side of the pool, at $1/RLUSD. Valid for a constant-product pool at its own price.
Known limitations
- Only two centralised exchanges are covered. Global XRP volume and liquidity are larger; totals here are a lower bound for those venues, not the market.
- Hidden orders, OTC desks and liquidity provided directly to Ripple’s payment products are not observable via public APIs.
- Kraken returns at most 500 price levels per side, so very large slippage estimates may read Exceeds visible book even when more liquidity exists.
- XRPL addresses are pseudonymous. Ledger activity is never counted as institutional unless the institution has publicly identified its addresses.
- AMM trading volume and long-range ledger history require an indexer (e.g. Clio) and are marked Unknown in this version.
- Exchange-reported volume may include wash trading; we do not adjust for it.
Adoption verification rules
- Every institution needs at least one source before it is listed. Sources are labeled official (institution, Ripple, regulator) or secondary (media).
- “XRP in production: Yes” requires an official source that explicitly states XRP is used. Otherwise it is No or Unknown.
- Each entry records the date it was last verified. Entries not re-verified within 180 days are flagged.
- When a source disappears or a partnership ends, the status moves to “No longer confirmed” instead of being deleted.
Historical data
Exchanges only expose the current order book, so liquidity history has to be recorded by us. A scheduled job takes a snapshot of every metric on this site once per day and stores it in a PostgreSQL database.
History therefore starts on the day the job was first enabled. We do not backfill liquidity history from third-party estimates.
Price history comes directly from Kraken’s daily OHLC endpoint and goes back roughly two years.