Source Methodology

Which exchanges and data providers feed each pair, how they're aggregated, and when sources are excluded.

Source Table

PairTotalMin RequiredSourcesMethod
BTC/USD96 (4 if USDT dropped)Coinbase, Kraken, Bitstamp, Gemini, Bitfinex, Binance, Binance US, OKX, Gate.ioMedian
BTC/USD VWAP74 (3 if USDT dropped)Coinbase, Kraken, Bitstamp, Gemini, Bitfinex, OKX, Gate.ioVWAP (5-min window)
ETH/USD53Coinbase, Kraken, Bitstamp, Gemini, BitfinexMedian
EUR/USD84ECB (Frankfurter), ECB Direct, Bank of Canada, RBA, Norges Bank, Czech National Bank, Kraken, BitstampMedian
XAU/USD83 (2 if PAXG dropped)Kitco, JM Bullion, GoldBroker, Coinbase, Kraken, Gemini, Binance, OKXMedian
SOL/USD95 (3 if USDT dropped)Coinbase, Kraken, Bitstamp, Gemini, Bitfinex, Binance, OKX, Gate.io, BybitMedian
BTC/EUR17InheritedCross-rate: BTC/USD (9) ÷ EUR/USD (8)Cross-rate
ETH/EUR42Coinbase, Kraken, Bitstamp direct EUR + cross-rateHybrid median
SOL/EUR42Coinbase, Kraken, Bitstamp direct EUR + cross-rateHybrid median
XAU/EURCombinedInheritedCross-rate: XAU/USD ÷ EUR/USDCross-rate
BTC/EUR VWAPCombinedInheritedCross-rate: BTC/USD VWAP ÷ EUR/USDVWAP cross-rate

USDT Normalization

BTC/USD, BTC/USD VWAP, and SOL/USD include USDT-denominated sources (Binance, OKX, Gate.io, Bybit). These prices are normalized to USD using a live USDT/USD rate from Kraken and Bitstamp.

If the USD-denominated and USDT-denominated medians diverge by more than 0.5%, all USDT sources are automatically excluded from the attestation. When this happens, the minimum source threshold drops accordingly (e.g., BTC/USD from 6 to 4). The exclusion is transparent — the sources list in the canonical string will only show the USD sources that were actually used.

XAU/USD Source Composition

XAU/USD combines two source categories: 3 bullion dealers (Kitco, JM Bullion, GoldBroker) providing spot gold prices via web scraping, and 5 PAXG/USD exchange prices (Coinbase, Kraken, Gemini, Binance, OKX) using the gold-backed token as a proxy. If PAXG sources diverge significantly from bullion prices, they can be excluded, dropping the minimum from 3 to 2.

Cross-Rate Inheritance

BTC/EUR, XAU/EUR, and BTC/EUR VWAP have no independent source thresholds. They fail if either component feed fails its own minimum. For example, BTC/EUR requires both BTC/USD (min 6 sources) and EUR/USD (min 4 sources) to succeed independently.

Aggregation Methods

Median: The middle value of all responding sources, sorted by price. Resistant to single-source outliers — a manipulated exchange price cannot move the median unless it compromises more than half the sources.

VWAP: Volume-weighted average price computed over a 5-minute rolling window. Each exchange's price is weighted by its trading volume in that window. Exchanges that don't provide volume data within the window are excluded.

Cross-rate: Computed by dividing one feed's price by another (e.g., BTC/USD ÷ EUR/USD = BTC/EUR). Both component feeds must independently meet their source thresholds.

Hybrid median: Combines direct EUR-denominated exchange prices with a synthetic cross-rate, then takes the median. Used for ETH/EUR and SOL/EUR where some exchanges offer direct EUR pairs.

Transparency

Every attestation lists the exact sources that contributed to the price in the canonical string (position 7). You can always verify which exchanges were included and how many sources backed the attestation.