ClearTrace's fork-simulation sampler requests the same trade from nine DEX aggregators on Base and measures what happens next. The headline is good news: most venues fill within a basis point of their quote, and failures are rare. But not all of them, and the exceptions are exactly what a quote screen won't show you.
Each line is one aggregator across three order sizes on Base. Switch the metric, rebase to an indexed view to compare trajectories, click a legend chip to isolate a series, or go fullscreen. Hover anything for values.
Quote fails to realize (%) is the share of fork-verifiable quotes whose execution reverted when ClearTrace replayed it against a Base fork: the route the aggregator quoted failed to settle. Requests that returned no quote at all stay in that denominator and cannot fail in simulation, so a venue with a high no-quote rate reads slightly more reliable than its returned quotes alone would. OpenOcean, the only venue where this matters, is 1.3% over returned quotes versus the 0.9% shown, and that gap is itself mostly the collector outage described below rather than OpenOcean declining to quote. Off-chain RFQ quotes are excluded here: a fork can't replay a market maker's off-chain commitment, so counting those as failures would confuse routing with reliability. Realized cost (bps) is the median shortfall of what actually filled versus what was quoted (fee + MEV + slippage + gas), for the quotes that landed. On Base, gas inside that figure is priced as L2 execution only and excludes the L1 data fee, so every cost number on this page is a lower bound. It also measures fidelity to the quote, not the price of the quote: a fee a venue takes from the sell token before it routes sits inside both the quote and the fill, so it nets to zero here and no cost number on this page can see it.
Corrected 2026-09-08. A simulation that never ran is no longer counted as a
quote that settled. Every "fails to realize" rate on this page divides reverts by
fork-verifiable quotes. Until today that denominator also held rows where the quote came back
but the simulation never happened, because our own build or authentication step failed first
(here, oneinch swap: Forbidden and four OpenOcean swap-API errors). The sampler
wrote those rows as "did not revert", which is a claim about a swap nobody replayed. There are
22 of them in this snapshot and they are now excluded from both sides of every rate. No plotted
cell moves at the precision shown; the sample counts underneath fall, 1inch from 372 to 366 in
each cohort and OpenOcean by one or two. The same fault, in the same week, put a revert rate of
zero on a contract with 1,443 reverts on our
Base unattributed-volume note, which is why it is
being fixed everywhere it appears rather than only where it changed a number.
Corrected 2026-09-08. The off-chain RFQ axis is withdrawn. Earlier versions of this page plotted a third metric, "off-chain RFQ routing (%)", and led with a stat tile reading "KyberSwap routes 7.5% of its $100k flow through off-chain RFQ makers, the only aggregator doing any RFQ routing on Base." That comparison was a detection artifact, not a finding: the sampler parsed an RFQ flag out of KyberSwap's quote format only, so every other sampled venue read exactly 0.0%, including venues we know route through RFQ desks. A metric where most venues are exactly zero is unmeasured, not zero, so it is withdrawn rather than ranked. This matches the Edition 2 errata, which withdrew the same column and its finding. The flag is still used internally for simulation-coverage bookkeeping, which is why RFQ-routed rows stay excluded from "fails to realize" above: that exclusion is unaffected and still correct. What is withdrawn is publishing or comparing the share across venues.
Three aggregators are worth naming. LI.FI fills almost exactly what it quotes, at a median cost (0.27 bps), but read that as fidelity and not as price. Under the default integrator this sampler uses, LI.FI takes a flat 25 bps “LIFI Fixed Fee” from the sell token before routing, disclosed in its own quote response and inside both the quote and the fill, so the measure above nets it to zero and cannot see it. Its reliability then degrades with size: 12.1% of its $100k quotes fail to realize in simulation, up from 3.0% at $1k. Its Base routes are on-chain, so that part is genuine: a quote you can't settle at size isn't a good quote. OpenOcean is the opposite trade-off, twice over. Its median fill costs 10.0 bps: essentially its disclosed routing fee (OpenOcean charges 10 bps on volatile pairs, 1 bp on stables), not hidden slippage. That is an order of magnitude above the near-zero-cost routers and nearly five times the next-priciest venue. Its no-quote figure needs a correction we owe them. Over this window 28.9% of its quote requests returned no quote at all, and that reads as the worst in the set, but most of it is our collector and not OpenOcean. A ClearTrace-side block began on 21 August and every request after it came back empty; across the window's first seventeen days the rate is 2.8%. That is still the highest here, where the rest of the field sits between 0.0% and 0.5%, but it is an order of magnitude away from the pooled number. Read the 28.9% as a broken collector, not as a venue that will not quote you. Uniswap, the neutral baseline here, carries the highest failure rate of any venue at the smallest size: 3.8% of its $1k quotes fail to realize, against 0.0% by $100k. Even a direct route is not free of settlement risk where the trade is small. Meanwhile 1inch, ParaSwap, SushiSwap, and Bebop all quietly clear nearly every quote at (near-)zero to one basis point.
The cross-chain contrast is the quieter finding. On Ethereum, the same sampler methodology finds overall failure rates up to 14.5% (19.8% in the worst single cohort) (the Ethereum edition). On Base the whole field is tighter: seven of nine venues fill at a median of about one basis point or less, and no venue's overall failure rate exceeds LI.FI's 6.5%. One caveat cuts the other way: the sampler does not run a $1M cohort on Base, and on Ethereum it is exactly the $1M cohort where several venues degrade, so "tight at $100k" should not be extrapolated to institutional size.
Sampler window , Base,
token pairs (WETH/USDC, WETH/USDT, cbBTC/USDC, USDC/USDT),
quote samples across three size cohorts ($1k / $10k / $100k; the
sampler does not run a $1M cohort on Base). Realized cost is the median all-in basis-point
shortfall versus the quoted output for successfully simulated fills; gas in that figure is
valued as L2 execution only, excluding the L1 data fee, so all-in costs here are lower
bounds. "Fails to realize" counts
reverted simulations over fork-verifiable quotes only; off-chain RFQ and non-simulatable
routes are excluded from that axis, because a fork cannot adjudicate an off-chain commitment.
That exclusion is bookkeeping, not a published metric: the per-venue RFQ share was withdrawn on
2026-09-08. All nine venues have full-window coverage on Base;
none are excluded. Every figure traces to the pinned snapshot
research_drafts/snapshots/quote_samples_base_2026-08-28.csv: a frozen, Base-only copy
of the ClearTrace repo's live sampler output, pinned 2026-08-28 so every number stays reproducible
even as the live seed/quote_samples.csv keeps growing.
Regenerate: groupby(source, size_cohort) on
research_drafts/snapshots/quote_samples_base_2026-08-28.csv. Fails % = mean(reverted==1) over
fork-verifiable rows (rfq_routed!=True & sim_unsupported!=True, including
rows where no quote came back) that recorded a simulation outcome: a row with
ok==0, reverted==0 and a quote in hand never reached the fork and is
in neither side of the rate. Realized cost =
median(all_in_cost_bps) over ok==1.
← All ClearTrace research · Ethereum edition · Methodology · Live execution-quality dashboard