Blog

The Folio liquidity study: what 42,824 quotes say about trade costs

Up to $1,000, every asset we measured priced within 24 bps of the market. Past that, it depends on what you trade.

A row of four brass teller windows in a dark green wall. Three are lit and push out paper slips of different lengths. The fourth is dark, its shutter down.
Four routers, asked the same question 42,824 times. One never answered.
Listen along

Small trades on Folio cost almost nothing, on every asset. Big trades depend on what you buy. No single router gives the best price, which is why Folio asks four of them every time. That is what 42,824 priced trades showed us over 63 hours in October.

The Folio liquidity study measures what Folio’s route selection would have paid on 168 trades, repeated every 15 minutes, against the app’s own market price. Nothing was signed or sent. Every number below comes from that run.

42,824quote requests

63hours of readings

4routers asked

14stocks and coins

6trade sizes, $5 to $10K

Listen along

Up to $1,000, every asset is cheap

Buy $5 or $1,000 of anything in the study, from SPY to SKR, and the typical price lands within 24 bps of the market. A basis point (bp) is a hundredth of a percent, so that’s under $2.40 on $1,000.

At $10,000 the assets split. BTC, SOL and ETH stay under 5 bps. HOOD and SKR jump to 54.

Cost by trade sizeFlat to $1,000. Then four assets pull away.
  • HOOD, SKR, AAPL, META
  • The other 10
0102030405060Low-liquidity notice from 50 bps$5$10$50$100$1K$10KSPY buys, median bps from the market price: $5 3.9 · $10 3.9 · $50 4.0 · $100 4.0 · $1,000 4.6 · $10,000 6.1QQQ buys, median bps from the market price: $5 4.1 · $10 4.7 · $50 5.9 · $100 6.5 · $1,000 8.1 · $10,000 9.9GOOGL buys, median bps from the market price: $5 7.3 · $10 8.1 · $50 8.6 · $100 8.9 · $1,000 12.1 · $10,000 19.8CRCL buys, median bps from the market price: $5 2.2 · $10 2.9 · $50 3.9 · $100 4.1 · $1,000 5.0 · $10,000 9.0TSLA buys, median bps from the market price: $5 4.3 · $10 4.7 · $50 5.2 · $100 5.8 · $1,000 7.9 · $10,000 9.8NVDA buys, median bps from the market price: $5 4.4 · $10 4.5 · $50 4.6 · $100 4.8 · $1,000 6.4 · $10,000 8.9MSTR buys, median bps from the market price: $5 3.5 · $10 4.2 · $50 5.0 · $100 5.3 · $1,000 6.6 · $10,000 11.1BTC buys, median bps from the market price: $5 3.8 · $10 3.4 · $50 2.9 · $100 3.0 · $1,000 2.9 · $10,000 3.3SOL buys, median bps from the market price: $5 2.6 · $10 2.8 · $50 2.8 · $100 2.8 · $1,000 2.8 · $10,000 3.0ETH buys, median bps from the market price: $5 3.3 · $10 3.5 · $50 3.6 · $100 3.5 · $1,000 4.1 · $10,000 4.6HOOD buys, median bps from the market price: $5 9.3 · $10 8.2 · $50 9.8 · $100 11.1 · $1,000 16.5 · $10,000 54.0SKR buys, median bps from the market price: $5 4.3 · $10 5.5 · $50 7.6 · $100 8.1 · $1,000 16.0 · $10,000 53.9AAPL buys, median bps from the market price: $5 14.8 · $10 15.3 · $50 17.1 · $100 18.4 · $1,000 23.5 · $10,000 39.1META buys, median bps from the market price: $5 15.2 · $10 15.3 · $50 16.7 · $100 17.9 · $1,000 20.9 · $10,000 35.2HOOD, SKR 54.0AAPL 39.1META 35.210 others3.0–19.8
0102030405060Low-liquidity notice from 50 bps$5$10$50$100$1K$10KSPY buys, median bps from the market price: $5 3.9 · $10 3.9 · $50 4.0 · $100 4.0 · $1,000 4.6 · $10,000 6.1QQQ buys, median bps from the market price: $5 4.1 · $10 4.7 · $50 5.9 · $100 6.5 · $1,000 8.1 · $10,000 9.9GOOGL buys, median bps from the market price: $5 7.3 · $10 8.1 · $50 8.6 · $100 8.9 · $1,000 12.1 · $10,000 19.8CRCL buys, median bps from the market price: $5 2.2 · $10 2.9 · $50 3.9 · $100 4.1 · $1,000 5.0 · $10,000 9.0TSLA buys, median bps from the market price: $5 4.3 · $10 4.7 · $50 5.2 · $100 5.8 · $1,000 7.9 · $10,000 9.8NVDA buys, median bps from the market price: $5 4.4 · $10 4.5 · $50 4.6 · $100 4.8 · $1,000 6.4 · $10,000 8.9MSTR buys, median bps from the market price: $5 3.5 · $10 4.2 · $50 5.0 · $100 5.3 · $1,000 6.6 · $10,000 11.1BTC buys, median bps from the market price: $5 3.8 · $10 3.4 · $50 2.9 · $100 3.0 · $1,000 2.9 · $10,000 3.3SOL buys, median bps from the market price: $5 2.6 · $10 2.8 · $50 2.8 · $100 2.8 · $1,000 2.8 · $10,000 3.0ETH buys, median bps from the market price: $5 3.3 · $10 3.5 · $50 3.6 · $100 3.5 · $1,000 4.1 · $10,000 4.6HOOD buys, median bps from the market price: $5 9.3 · $10 8.2 · $50 9.8 · $100 11.1 · $1,000 16.5 · $10,000 54.0SKR buys, median bps from the market price: $5 4.3 · $10 5.5 · $50 7.6 · $100 8.1 · $1,000 16.0 · $10,000 53.9AAPL buys, median bps from the market price: $5 14.8 · $10 15.3 · $50 17.1 · $100 18.4 · $1,000 23.5 · $10,000 39.1META buys, median bps from the market price: $5 15.2 · $10 15.3 · $50 16.7 · $100 17.9 · $1,000 20.9 · $10,000 35.2HOOD, SKR 54.0AAPL 39.1META 35.210 others3.0–19.8

Median gap between the picked route’s quoted price and the app’s market price, buys, in bps. Hover a line for its values.

Ten of the 14 assets stayed under 20 bps even at $10,000. HOOD and SKR hit 54.

The grid below has every asset at every size. Read across a row to see where size starts to bite.

Every asset, every sizeUp to $1,000, no median buy is more than 24 bps from the market price
  • 0 or better
  • 0–5
  • 5–10
  • 10–25
  • 25–50
  • 50 or more

Buys

$5$10$50$100$1K$10KSPY3.93.94.04.04.66.1QQQ4.14.75.96.58.19.9HOOD9.38.29.811.116.554.0GOOGL7.38.18.68.912.119.8CRCL2.22.93.94.15.09.0TSLA4.34.75.25.87.99.8NVDA4.44.54.64.86.48.9META15.215.316.717.920.935.2AAPL14.815.317.118.423.539.1MSTR3.54.25.05.36.611.1BTC3.83.42.93.02.93.3SOL2.62.82.82.82.83.0ETH3.33.53.63.54.14.6SKR4.35.57.68.116.053.9

Sales

$5$10$50$100$1K$10KSPY−3.2−3.2−3.1−3.0−2.7−1.0QQQ−2.7−2.0−1.2−1.2−0.61.7HOOD0.31.13.13.69.549.2GOOGL−3.0−2.9−2.8−2.60.47.7CRCL−0.7−0.3−0.30.00.83.3TSLA−3.2−2.8−2.1−1.8−0.22.2NVDA−3.3−3.4−3.0−2.9−1.90.8META−3.7−3.4−2.8−2.21.012.2AAPL−3.1−2.9−2.2−1.84.724.4MSTR1.21.01.31.73.06.1BTC−2.9−2.8−2.9−2.9−2.9−2.5SOL−3.7−3.5−3.4−3.4−3.3−3.3ETH−3.5−3.6−3.7−3.3−3.1−2.2SKR3.54.37.38.517.455.5

Median gap in bps over 255 readings. Sales below zero are an artifact of grading both sides against one market price, explained under the round-trip chart.

Medians hide the spread. At $1,000, SOL, BTC and SPY land in a tight band. META and HOOD range across 40 bps from one trade to the next.

A $1,000 buy, trade by tradeSOL, BTC and SPY barely move. META and HOOD range across 40 bps.
  • Middle half of trades
  • Median
SOL2.8
BTC2.9
ETH4.1
SPY4.6
CRCL5.0
NVDA6.4
MSTR6.6
TSLA7.9
QQQ8.1
GOOGL12.1
SKR16.0
HOOD16.5
META20.9
AAPL23.5
−1001020304050

Thin line: 1 in 10 to 9 in 10 trades. Box: the middle half. Bps from the market price; the value on the right is the median.

When a price crosses 50 bps, Folio shows a low-liquidity notice before you confirm. It never blocks the trade. In the study it would have shown on 2.4% of trades, three in four of them at $10,000.

Listen along

What would your trade cost?

Pick an asset and an amount. The numbers are the study’s medians for that exact trade.

Try itThe typical cost of a buy, by asset and amount

A $1,000 HOOD buy landed a median 16.5 bps from the market price, about $1.65.

Medians from the study’s 255 readings of each asset and size. A guide to the typical price, not a quote.

Listen along

Why some sales look free

In the grid, many sales sit below zero, as if they paid more than the market. They didn’t. The study read one market price per asset and graded both sides against it, and for most assets that price sat 2 to 6 bps below the middle of where buys and sales landed.

Add a buy and a sale from the same reading and that offset cancels. What’s left is the real cost of getting in and out.

Buy, then sell straight backAt $10,000, a round trip costs 1 bp in BTC and over 100 in HOOD and SKR
  • $100
  • $10,000
SOL−0.2
BTC0.9
ETH2.4
SPY5.1
NVDA10.2
QQQ11.3
TSLA11.5
CRCL13.1
MSTR17.2
GOOGL31.1
META52.8
AAPL65.3
HOOD105
SKR110
0255075100

Median of the buy gap plus the sale gap from the same reading, in bps; the market price cancels out. Value on the right: $10,000.

Listen along

No router wins every time

Folio sends each trade through KSwap, Kamino’s quote service, which asks four routers at once: okx, dflow, titan and jupiter. A router searches Solana’s markets for the best path and quotes what it will deliver.

okx gave the best price on 53% of requests, titan on 25%, dflow on 22%. The bigger the trade, the more okx wins.

Who gives the best priceThe bigger the trade, the more often okx wins
  • okx
  • dflow
  • titan

Stocks

$534%36%29%
$1037%34%30%
$5044%25%31%
$10043%25%33%
$1K56%34%
$10K63%36%

Crypto

$563%31%
$1063%30%
$5069%25%
$10068%25%
$1K76%19%
$10K81%

Share of quote requests where each router gave the highest guaranteed output. jupiter returned no quotes and won none.

Winning isn’t the same as mattering. Take one router away and see whether the best price gets worse. Without dflow, it rarely does: another router almost always matched it. Without titan, the best price got worse by more than 1 bp on 28% of the requests titan answered.

Wins versus what each router addsdflow wins 22% of the time, but almost never by more than 1 bp

Gave the best price

okx53%
dflow22%
titan25%

Beat the next-best quote by over 1 bp

okx23%
dflow0.5%
titan28%

Left: share of all requests. Right: share of the requests each router answered alongside another; this is the price you would lose without it.

And the winner never stays put.

Does the best router stay the best?The winner changed from one reading to the next 44% of the time
All 44%
NVDA54%
TSLA53%
GOOGL53%
META49%
CRCL48%
QQQ47%
HOOD46%
ETH45%
MSTR44%
SPY43%
BTC41%
AAPL36%
SKR33%
SOL29%

Share of consecutive 15-minute readings, per asset, side and size, where a different router won. The median winning streak was one reading.

The best router changed from one 15-minute reading to the next 44% of the time. No single router is the right one to hard-code.

Listen along

Routers come and go

okx and dflow answered almost every request. jupiter answered none of the 42,816 that KSwap returned. titan answered 46% until 18:00 UTC on 9 October, then 86%. The answer rate tracked the clock, not the trade, and the data doesn’t say what changed on titan’s side.

Who answersokx and dflow answer almost every time. titan, half, then most. jupiter, never.
  • US market open
8 Oct9 Oct10 Octokxdflowtitanjupiterno quotes in 63 hours
8 Oct9 Oct10 Octokxdflowtitanjupiterno quotes in 63 hours

Each column is one reading; its height is the share of the 168 requests the router answered. Dashed line: 18:00 UTC on 9 October, when titan’s answer rate jumped. Times in UTC.

titan by hour of daytitan answered 46% before 18:00 UTC on 9 October and 86% after
  • Before (46% overall)
  • After (86% overall)
0%25%50%75%100%00:0006:0012:0018:00Before the change, 00:00 UTC: 60% over 8 readingsBefore the change, 01:00 UTC: 61% over 8 readingsBefore the change, 02:00 UTC: 48% over 8 readingsBefore the change, 03:00 UTC: 53% over 8 readingsBefore the change, 04:00 UTC: 43% over 8 readingsBefore the change, 05:00 UTC: 37% over 8 readingsBefore the change, 06:00 UTC: 40% over 8 readingsBefore the change, 07:00 UTC: 38% over 8 readingsBefore the change, 08:00 UTC: 36% over 8 readingsBefore the change, 09:00 UTC: 46% over 8 readingsBefore the change, 10:00 UTC: 43% over 8 readingsBefore the change, 11:00 UTC: 36% over 8 readingsBefore the change, 12:00 UTC: 37% over 8 readingsBefore the change, 13:00 UTC: 39% over 8 readingsBefore the change, 14:00 UTC: 38% over 8 readingsBefore the change, 15:00 UTC: 39% over 8 readingsBefore the change, 16:00 UTC: 42% over 8 readingsBefore the change, 17:00 UTC: 45% over 8 readingsBefore the change, 18:00 UTC: 54% over 8 readingsBefore the change, 19:00 UTC: 54% over 8 readingsBefore the change, 20:00 UTC: 57% over 8 readingsBefore the change, 21:00 UTC: 58% over 8 readingsBefore the change, 22:00 UTC: 54% over 8 readingsBefore the change, 23:00 UTC: 53% over 8 readingsAfter the change, 00:00 UTC: 84% over 4 readingsAfter the change, 01:00 UTC: 87% over 4 readingsAfter the change, 02:00 UTC: 86% over 4 readingsAfter the change, 03:00 UTC: 91% over 4 readingsAfter the change, 04:00 UTC: 92% over 4 readingsAfter the change, 05:00 UTC: 88% over 4 readingsAfter the change, 06:00 UTC: 84% over 4 readingsAfter the change, 07:00 UTC: 90% over 4 readingsAfter the change, 08:00 UTC: 87% over 4 readingsAfter the change, 09:00 UTC: 89% over 3 readingsAfter the change, 18:00 UTC: 69% over 4 readingsAfter the change, 19:00 UTC: 86% over 4 readingsAfter the change, 20:00 UTC: 84% over 4 readingsAfter the change, 21:00 UTC: 86% over 4 readingsAfter the change, 22:00 UTC: 85% over 4 readingsAfter the change, 23:00 UTC: 88% over 4 readings
0%25%50%75%100%00:0003:0006:0009:0012:0015:0018:0021:00Before the change, 00:00 UTC: 60% over 8 readingsBefore the change, 01:00 UTC: 61% over 8 readingsBefore the change, 02:00 UTC: 48% over 8 readingsBefore the change, 03:00 UTC: 53% over 8 readingsBefore the change, 04:00 UTC: 43% over 8 readingsBefore the change, 05:00 UTC: 37% over 8 readingsBefore the change, 06:00 UTC: 40% over 8 readingsBefore the change, 07:00 UTC: 38% over 8 readingsBefore the change, 08:00 UTC: 36% over 8 readingsBefore the change, 09:00 UTC: 46% over 8 readingsBefore the change, 10:00 UTC: 43% over 8 readingsBefore the change, 11:00 UTC: 36% over 8 readingsBefore the change, 12:00 UTC: 37% over 8 readingsBefore the change, 13:00 UTC: 39% over 8 readingsBefore the change, 14:00 UTC: 38% over 8 readingsBefore the change, 15:00 UTC: 39% over 8 readingsBefore the change, 16:00 UTC: 42% over 8 readingsBefore the change, 17:00 UTC: 45% over 8 readingsBefore the change, 18:00 UTC: 54% over 8 readingsBefore the change, 19:00 UTC: 54% over 8 readingsBefore the change, 20:00 UTC: 57% over 8 readingsBefore the change, 21:00 UTC: 58% over 8 readingsBefore the change, 22:00 UTC: 54% over 8 readingsBefore the change, 23:00 UTC: 53% over 8 readingsAfter the change, 00:00 UTC: 84% over 4 readingsAfter the change, 01:00 UTC: 87% over 4 readingsAfter the change, 02:00 UTC: 86% over 4 readingsAfter the change, 03:00 UTC: 91% over 4 readingsAfter the change, 04:00 UTC: 92% over 4 readingsAfter the change, 05:00 UTC: 88% over 4 readingsAfter the change, 06:00 UTC: 84% over 4 readingsAfter the change, 07:00 UTC: 90% over 4 readingsAfter the change, 08:00 UTC: 87% over 4 readingsAfter the change, 09:00 UTC: 89% over 3 readingsAfter the change, 18:00 UTC: 69% over 4 readingsAfter the change, 19:00 UTC: 86% over 4 readingsAfter the change, 20:00 UTC: 84% over 4 readingsAfter the change, 21:00 UTC: 86% over 4 readingsAfter the change, 22:00 UTC: 85% over 4 readingsAfter the change, 23:00 UTC: 88% over 4 readings

Share of requests titan answered, by hour of day (UTC). The run ended at 09:47 UTC on 10 October, so the afternoon hours after the change were never measured.

Asking four routers at once costs little time. One KSwap call returns every quote.

SpeedHalf a second, give or take

515 msmedian

620 ms9 in 10 within

1,273 ms99 in 100 within

8.4 sslowest

  • titan answered (median 538 ms)
  • titan did not (median 479 ms)
0500 ms1,000 ms1,500 ms2 s+
0500 ms1,000 ms1,500 ms2 s+

One KSwap call returns every router’s quote, so this is time per request, not per router.

Listen along

Market hours barely matter

The tokenized stocks trade on Solana around the clock, while Wall Street keeps its own hours. A $10,000 stock buy landed a median 13.5 bps from the market price with the US market open and 12.8 with it closed. HOOD at $1,000 was the exception: 26.7 bps open, 15.3 closed.

Open versus closedThe US market’s hours barely move the price of a $1,000 buy
  • Stocks, median
  • Stocks, middle 80%
  • Crypto, median
  • US market open
8 Oct9 Oct10 Oct−1001020304050
8 Oct9 Oct10 Oct−1001020304050

Each reading: the median gap of $1,000 buys across the 10 stocks (band: 1 in 10 to 9 in 10 of them) and the 4 coins, in bps. Times in UTC.

Listen along

The quotes Folio now skips

Between 03:30 and 07:16 UTC on 8 October, 90 quotes came in far better than the market, 89 of them from okx, while the other routers on the same request stayed within 10 bps of it. The wildest was a $5 SKR sale quoted at 5.3 times what the SKR was worth.

Quotes to distrustFor four hours on 8 October, okx promised prices far better than the market
  • okx quote
  • titan quote
  • okx gave no quote
8 Oct9 Oct10 Oct505005,00050,000no quote10-08 03:30 UTC, AAPL buy $50, okx: 607 bps better than the market price10-08 03:30 UTC, AAPL sell $5, okx: 566 bps better than the market price10-08 03:31 UTC, SKR sell $5, okx: 80.6 bps better than the market price10-08 03:45 UTC, AAPL sell $5, okx: 337 bps better than the market price10-08 03:57 UTC, SPY buy $50, okx: 89.4 bps better than the market price10-08 03:59 UTC, META sell $50, okx: 143 bps better than the market price10-08 04:01 UTC, SKR sell $10, okx: 6,831 bps better than the market price10-08 04:14 UTC, NVDA buy $100, okx: 162 bps better than the market price10-08 04:31 UTC, ETH sell $5, okx: 172 bps better than the market price10-08 04:42 UTC, QQQ buy $50, okx: 486 bps better than the market price10-08 04:43 UTC, QQQ buy $100, okx: 55.7 bps better than the market price10-08 04:43 UTC, GOOGL buy $5, okx: 204 bps better than the market price10-08 04:43 UTC, CRCL buy $50, okx: 870 bps better than the market price10-08 04:43 UTC, CRCL buy $100, okx: 292 bps better than the market price10-08 04:44 UTC, NVDA buy $50, okx: 850 bps better than the market price10-08 04:44 UTC, NVDA buy $100, okx: 274 bps better than the market price10-08 04:44 UTC, META buy $1,000, okx: 110 bps better than the market price10-08 04:45 UTC, AAPL sell $100, okx: 118 bps better than the market price10-08 04:45 UTC, BTC buy $5, okx: 7,958 bps better than the market price10-08 04:45 UTC, SOL buy $5, okx: 5,545 bps better than the market price10-08 04:45 UTC, SOL buy $10, okx: 3,837 bps better than the market price10-08 04:46 UTC, SOL buy $50, okx: 1,106 bps better than the market price10-08 04:46 UTC, SOL buy $100, okx: 433 bps better than the market price10-08 04:46 UTC, ETH buy $5, okx: 8,041 bps better than the market price10-08 04:46 UTC, SKR buy $5, okx: 3,710 bps better than the market price10-08 04:46 UTC, SKR buy $10, okx: 2,273 bps better than the market price10-08 04:46 UTC, SKR buy $100, okx: 81.6 bps better than the market price10-08 04:46 UTC, SKR sell $5, okx: 315 bps better than the market price10-08 04:46 UTC, SKR sell $100, okx: 1,229 bps better than the market price10-08 05:15 UTC, BTC buy $10, okx: 3,413 bps better than the market price10-08 05:15 UTC, BTC sell $5, okx: 13,324 bps better than the market price10-08 05:15 UTC, SOL buy $5, okx: 539 bps better than the market price10-08 05:16 UTC, SOL buy $10, okx: 276 bps better than the market price10-08 05:16 UTC, SOL buy $50, okx: 52.6 bps better than the market price10-08 05:30 UTC, SOL buy $5, okx: 89.8 bps better than the market price10-08 05:31 UTC, ETH sell $10, okx: 352 bps better than the market price10-08 05:31 UTC, SKR buy $10, okx: 4,256 bps better than the market price10-08 05:31 UTC, SKR sell $5, okx: 687 bps better than the market price10-08 05:46 UTC, ETH buy $10, okx: 447 bps better than the market price10-08 05:46 UTC, ETH buy $50, okx: 85.1 bps better than the market price10-08 05:46 UTC, SKR sell $5, okx: 203 bps better than the market price10-08 05:46 UTC, SKR sell $10, okx: 88.6 bps better than the market price10-08 05:57 UTC, QQQ buy $5, okx: 399 bps better than the market price10-08 05:57 UTC, QQQ buy $10, okx: 192 bps better than the market price10-08 05:58 UTC, QQQ sell $50, okx: 324 bps better than the market price10-08 05:58 UTC, QQQ sell $100, okx: 361 bps better than the market price10-08 05:58 UTC, HOOD buy $10, okx: 795 bps better than the market price10-08 05:58 UTC, GOOGL sell $50, okx: 127 bps better than the market price10-08 05:58 UTC, CRCL sell $5, okx: 109 bps better than the market price10-08 05:59 UTC, CRCL sell $10, okx: 51.3 bps better than the market price10-08 06:00 UTC, SOL buy $50, okx: 225 bps better than the market price10-08 06:01 UTC, SOL buy $100, okx: 127 bps better than the market price10-08 06:01 UTC, SKR buy $5, okx: 7,971 bps better than the market price10-08 06:01 UTC, SKR sell $10, okx: 10,072 bps better than the market price10-08 06:01 UTC, SKR sell $100, okx: 335 bps better than the market price10-08 06:12 UTC, SPY buy $1,000, okx: 69.0 bps better than the market price10-08 06:16 UTC, SOL sell $5, okx: 24,382 bps better than the market price10-08 06:16 UTC, ETH buy $10, okx: 5,587 bps better than the market price10-08 06:16 UTC, ETH sell $5, okx: 17,945 bps better than the market price10-08 06:16 UTC, ETH sell $50, okx: 1,894 bps better than the market price10-08 06:16 UTC, SKR buy $10, okx: 3,764 bps better than the market price10-08 06:16 UTC, SKR sell $5, okx: 42,782 bps better than the market price10-08 06:16 UTC, SKR sell $50, okx: 3,192 bps better than the market price10-08 06:29 UTC, TSLA buy $100, okx: 704 bps better than the market price10-08 06:30 UTC, BTC buy $5, okx: 5,283 bps better than the market price10-08 06:30 UTC, BTC buy $10, okx: 3,605 bps better than the market price10-08 06:30 UTC, SOL buy $5, okx: 207 bps better than the market price10-08 06:31 UTC, SOL buy $100, okx: 376 bps better than the market price10-08 06:31 UTC, SOL sell $10, okx: 4,617 bps better than the market price10-08 06:31 UTC, SOL sell $50, okx: 80.4 bps better than the market price10-08 06:31 UTC, ETH sell $5, okx: 2,804 bps better than the market price10-08 07:13 UTC, CRCL buy $5, okx: 697 bps better than the market price10-08 07:14 UTC, CRCL sell $50, okx: 361 bps better than the market price10-08 07:14 UTC, META buy $10, okx: 856 bps better than the market price10-08 07:14 UTC, META buy $50, okx: 117 bps better than the market price10-08 07:14 UTC, META buy $100, okx: 57.8 bps better than the market price10-08 07:15 UTC, AAPL buy $10, okx: 283 bps better than the market price10-08 07:15 UTC, MSTR buy $100, okx: 542 bps better than the market price10-08 07:15 UTC, BTC buy $5, okx: 5,321 bps better than the market price10-08 07:15 UTC, BTC buy $10, okx: 3,653 bps better than the market price10-08 07:15 UTC, SOL buy $5, okx: 114 bps better than the market price10-08 07:15 UTC, SOL buy $10, okx: 57.0 bps better than the market price10-08 07:16 UTC, ETH buy $5, okx: 6,823 bps better than the market price10-08 07:16 UTC, ETH buy $10, okx: 1,712 bps better than the market price10-08 07:16 UTC, ETH buy $50, okx: 390 bps better than the market price10-08 07:16 UTC, ETH buy $100, okx: 569 bps better than the market price10-08 07:16 UTC, ETH buy $1,000, okx: 55.3 bps better than the market price10-08 07:16 UTC, SKR buy $5, okx: 5,803 bps better than the market price10-08 07:16 UTC, SKR buy $10, okx: 4,117 bps better than the market price10-08 12:46 UTC, SKR sell $10,000, okx: 196 bps better than the market price10-09 05:13 UTC, SPY sell $100, okx: 148 bps better than the market price10-08 06:42 UTC, SPY sell $5, titan: 81.8 bps better than the market price
8 Oct9 Oct10 Oct505005,00050,000no quote10-08 03:30 UTC, AAPL buy $50, okx: 607 bps better than the market price10-08 03:30 UTC, AAPL sell $5, okx: 566 bps better than the market price10-08 03:31 UTC, SKR sell $5, okx: 80.6 bps better than the market price10-08 03:45 UTC, AAPL sell $5, okx: 337 bps better than the market price10-08 03:57 UTC, SPY buy $50, okx: 89.4 bps better than the market price10-08 03:59 UTC, META sell $50, okx: 143 bps better than the market price10-08 04:01 UTC, SKR sell $10, okx: 6,831 bps better than the market price10-08 04:14 UTC, NVDA buy $100, okx: 162 bps better than the market price10-08 04:31 UTC, ETH sell $5, okx: 172 bps better than the market price10-08 04:42 UTC, QQQ buy $50, okx: 486 bps better than the market price10-08 04:43 UTC, QQQ buy $100, okx: 55.7 bps better than the market price10-08 04:43 UTC, GOOGL buy $5, okx: 204 bps better than the market price10-08 04:43 UTC, CRCL buy $50, okx: 870 bps better than the market price10-08 04:43 UTC, CRCL buy $100, okx: 292 bps better than the market price10-08 04:44 UTC, NVDA buy $50, okx: 850 bps better than the market price10-08 04:44 UTC, NVDA buy $100, okx: 274 bps better than the market price10-08 04:44 UTC, META buy $1,000, okx: 110 bps better than the market price10-08 04:45 UTC, AAPL sell $100, okx: 118 bps better than the market price10-08 04:45 UTC, BTC buy $5, okx: 7,958 bps better than the market price10-08 04:45 UTC, SOL buy $5, okx: 5,545 bps better than the market price10-08 04:45 UTC, SOL buy $10, okx: 3,837 bps better than the market price10-08 04:46 UTC, SOL buy $50, okx: 1,106 bps better than the market price10-08 04:46 UTC, SOL buy $100, okx: 433 bps better than the market price10-08 04:46 UTC, ETH buy $5, okx: 8,041 bps better than the market price10-08 04:46 UTC, SKR buy $5, okx: 3,710 bps better than the market price10-08 04:46 UTC, SKR buy $10, okx: 2,273 bps better than the market price10-08 04:46 UTC, SKR buy $100, okx: 81.6 bps better than the market price10-08 04:46 UTC, SKR sell $5, okx: 315 bps better than the market price10-08 04:46 UTC, SKR sell $100, okx: 1,229 bps better than the market price10-08 05:15 UTC, BTC buy $10, okx: 3,413 bps better than the market price10-08 05:15 UTC, BTC sell $5, okx: 13,324 bps better than the market price10-08 05:15 UTC, SOL buy $5, okx: 539 bps better than the market price10-08 05:16 UTC, SOL buy $10, okx: 276 bps better than the market price10-08 05:16 UTC, SOL buy $50, okx: 52.6 bps better than the market price10-08 05:30 UTC, SOL buy $5, okx: 89.8 bps better than the market price10-08 05:31 UTC, ETH sell $10, okx: 352 bps better than the market price10-08 05:31 UTC, SKR buy $10, okx: 4,256 bps better than the market price10-08 05:31 UTC, SKR sell $5, okx: 687 bps better than the market price10-08 05:46 UTC, ETH buy $10, okx: 447 bps better than the market price10-08 05:46 UTC, ETH buy $50, okx: 85.1 bps better than the market price10-08 05:46 UTC, SKR sell $5, okx: 203 bps better than the market price10-08 05:46 UTC, SKR sell $10, okx: 88.6 bps better than the market price10-08 05:57 UTC, QQQ buy $5, okx: 399 bps better than the market price10-08 05:57 UTC, QQQ buy $10, okx: 192 bps better than the market price10-08 05:58 UTC, QQQ sell $50, okx: 324 bps better than the market price10-08 05:58 UTC, QQQ sell $100, okx: 361 bps better than the market price10-08 05:58 UTC, HOOD buy $10, okx: 795 bps better than the market price10-08 05:58 UTC, GOOGL sell $50, okx: 127 bps better than the market price10-08 05:58 UTC, CRCL sell $5, okx: 109 bps better than the market price10-08 05:59 UTC, CRCL sell $10, okx: 51.3 bps better than the market price10-08 06:00 UTC, SOL buy $50, okx: 225 bps better than the market price10-08 06:01 UTC, SOL buy $100, okx: 127 bps better than the market price10-08 06:01 UTC, SKR buy $5, okx: 7,971 bps better than the market price10-08 06:01 UTC, SKR sell $10, okx: 10,072 bps better than the market price10-08 06:01 UTC, SKR sell $100, okx: 335 bps better than the market price10-08 06:12 UTC, SPY buy $1,000, okx: 69.0 bps better than the market price10-08 06:16 UTC, SOL sell $5, okx: 24,382 bps better than the market price10-08 06:16 UTC, ETH buy $10, okx: 5,587 bps better than the market price10-08 06:16 UTC, ETH sell $5, okx: 17,945 bps better than the market price10-08 06:16 UTC, ETH sell $50, okx: 1,894 bps better than the market price10-08 06:16 UTC, SKR buy $10, okx: 3,764 bps better than the market price10-08 06:16 UTC, SKR sell $5, okx: 42,782 bps better than the market price10-08 06:16 UTC, SKR sell $50, okx: 3,192 bps better than the market price10-08 06:29 UTC, TSLA buy $100, okx: 704 bps better than the market price10-08 06:30 UTC, BTC buy $5, okx: 5,283 bps better than the market price10-08 06:30 UTC, BTC buy $10, okx: 3,605 bps better than the market price10-08 06:30 UTC, SOL buy $5, okx: 207 bps better than the market price10-08 06:31 UTC, SOL buy $100, okx: 376 bps better than the market price10-08 06:31 UTC, SOL sell $10, okx: 4,617 bps better than the market price10-08 06:31 UTC, SOL sell $50, okx: 80.4 bps better than the market price10-08 06:31 UTC, ETH sell $5, okx: 2,804 bps better than the market price10-08 07:13 UTC, CRCL buy $5, okx: 697 bps better than the market price10-08 07:14 UTC, CRCL sell $50, okx: 361 bps better than the market price10-08 07:14 UTC, META buy $10, okx: 856 bps better than the market price10-08 07:14 UTC, META buy $50, okx: 117 bps better than the market price10-08 07:14 UTC, META buy $100, okx: 57.8 bps better than the market price10-08 07:15 UTC, AAPL buy $10, okx: 283 bps better than the market price10-08 07:15 UTC, MSTR buy $100, okx: 542 bps better than the market price10-08 07:15 UTC, BTC buy $5, okx: 5,321 bps better than the market price10-08 07:15 UTC, BTC buy $10, okx: 3,653 bps better than the market price10-08 07:15 UTC, SOL buy $5, okx: 114 bps better than the market price10-08 07:15 UTC, SOL buy $10, okx: 57.0 bps better than the market price10-08 07:16 UTC, ETH buy $5, okx: 6,823 bps better than the market price10-08 07:16 UTC, ETH buy $10, okx: 1,712 bps better than the market price10-08 07:16 UTC, ETH buy $50, okx: 390 bps better than the market price10-08 07:16 UTC, ETH buy $100, okx: 569 bps better than the market price10-08 07:16 UTC, ETH buy $1,000, okx: 55.3 bps better than the market price10-08 07:16 UTC, SKR buy $5, okx: 5,803 bps better than the market price10-08 07:16 UTC, SKR buy $10, okx: 4,117 bps better than the market price10-08 12:46 UTC, SKR sell $10,000, okx: 196 bps better than the market price10-09 05:13 UTC, SPY sell $100, okx: 148 bps better than the market price10-08 06:42 UTC, SPY sell $5, titan: 81.8 bps better than the market price

Picked quotes 50 bps or more better than the app’s market price (log scale, bps). Shaded: 03:30 to 07:16 UTC on 8 October. Ticks along the top: requests okx left unanswered.

A quote that far from every other router is a broken quote, not a bargain. Route selection picked all 92 of them in the study. It now passes over a quote that beats the market by more than the trade’s slippage allowance when KSwap’s own price-impact estimate agrees. It moves to the next route, and if none is left, the app tells you no route is available.

Listen along

What this means for you

  • Up to $1,000, trade anything. Every asset in the study priced within 24 bps of the market.
  • At $10,000, the asset matters. BTC, SOL and ETH stay under 5 bps. HOOD and SKR reach 54, and the app tells you before you confirm when a trade crosses 50.
  • You never pick a router. Folio asks all four on every trade and takes the one that guarantees you the most.
  • Folio ranks by the guarantee. That changed the pick on 0.6% of requests and cost a median 0.17 bps when it did.
  • Broken quotes don’t get through. A price too good to be true is skipped.
Listen along

How we measured it

Every 15 minutes from 18:22 UTC on 7 October to 09:47 UTC on 10 October, we priced 14 assets, buys and sales, at six sizes from $5 to $10,000: 168 quote requests a reading, 255 readings. Ten assets are tokenized stocks on Solana (SPY, QQQ, HOOD, GOOGL, CRCL, TSLA, NVDA, META, AAPL, MSTR) and four are crypto (BTC, SOL, ETH, SKR).

MethodEvery 15 minutes, 168 trades priced the way the app prices yours
  1. 1Ask

    KSwap asks okx, dflow, titan and jupiter for a route, with the app’s settings.

  2. 2Discount

    Each quote loses the 1% slippage floor. What is left is the guaranteed output.

  3. 3Pick

    The highest guaranteed output wins. That is the route the app would send.

  4. 4Grade

    Its quoted price is compared with the app’s market price, in basis points.

A basis point (bp) is a hundredth of a percent: 100 bps is 1%. Positive means worse for you.

The limits:

  • 63 hours in one week of October. Other weeks can look different.
  • Quotes, not fills. The study shows what routes promised, not what landed on chain.
  • Sizes stop at $10,000.
  • One market price per asset per reading graded both sides, and stock prices were about three minutes old. The round trip removes that offset; single-side numbers carry it.
  • Accounts per transaction followed the app’s budget for one wallet. A wallet with other holdings can get a different one.
  • One of 171,295 raw lines was unreadable after the measuring machine ran out of disk, and two requests failed with HTTP 502. KSwap never rate-limited the run.

Every chart, the method and the data checks are on the full Folio liquidity study page.

Investing involves risk, including loss of the money you invest.

Also published on claude.do.

Questions

What does a trade on Folio cost?
In the Folio liquidity study, the median buy at any size up to $1,000 landed within 24 bps of the app's market price on all 14 assets measured, which is under $2.40 on a $1,000 trade. At $10,000, BTC, SOL and ETH stayed under 5 bps, while META, AAPL, SKR and HOOD buys landed 35 to 54 bps away.
Which router does Folio use to fill a trade?
No fixed one. For every trade Folio asks KSwap for quotes from okx, dflow, titan and jupiter and takes the route with the highest guaranteed output. Over 63 hours okx won 53% of requests, titan 25% and dflow 22%, and the winner changed between consecutive 15-minute readings 44% of the time.
What is the guaranteed price, and why does Folio rank routes by it?
The guaranteed price is the worst price a route commits to: its quoted price with the app's 1% slippage floor taken off. Ranking by it means Folio picks the route that promises you the most at worst. Ranking by the quoted price instead would have changed the pick on 0.6% of requests, at a median cost of 0.17 bps.
Do trades cost more when the US stock market is closed?
Barely. In the study, $10,000 stock buys landed a median 13.5 bps from the market price while the US market was open and 12.8 bps while it was closed. HOOD at $1,000 was the exception, at 26.7 bps open against 15.3 bps closed.
When does Folio show a low-liquidity notice?
When the quoted price is 50 bps or more worse than the app's market price, with a strong notice from 300 bps and a severe one from 1,000 bps. The notice explains the price and never blocks the trade. In the study it would have shown on 2.4% of trades, three in four of them at $10,000, at the strong level twice and never at the severe level.
All posts

You’re early.

We use your email only to tell you when Folio access is available. Privacy Policy