TradingLive

Trading terminal execution quality 2026: what a swap costs once the app's own fee is removed

Value lost per swap with the app's own fee removed, on every trading terminal, wallet app and Telegram bot we read on-chain. The fee is a published price. What is left, priority fee and tips, the pool's LP fee and price impact, launchpad and router cuts, is the app's routing. Subtracted on each swap before any median is taken. Rolling 24 hours.

TL;DR. As of , FOMO posts the lowest execution loss at 218 bps (p50, 24h) across 13 ranked providers. Source: OpenChainBench, https://openchainbench.com/benchmarks/terminal-execution-quality. Every swap behind these medians is listed below, one row per transaction with its explorer link.

Read this carefully

Same sample, window and reference as bench 268; read that page for how a swap is priced. Here each swap's loss has the terminal's fee subtracted before the median is taken. Subtracting the two published medians gives a different number wherever an app's fee varies across its own swaps, which is why this is measured, not derived. A swap reads negative when a fee was rebated or the reference drifted the user's way; those stay in. Compare medians with their intervals, never single swaps.

An app's fee is the one cost it publishes. Everything else about a swap is its own doing and appears nowhere in the fee schedule: which pool the trade is routed to, how much priority fee and inclusion tip the app attaches, whether it goes through a launchpad curve that keeps 1 % or a pool that does not, how much price impact the size causes. This benchmark takes the swaps of bench 268, removes each app's fee from each swap, and ranks what is left. It answers a different question from the headline bench: not "what does this cost me", but "how well does this app actually execute". The two rankings are not the same. An app charging the highest fee in the cohort can route better than one charging nothing.

Methodology

Bench 268 reads real user swaps on Solana and five EVM chains for the trading terminals, wallet apps and Telegram bots in the cohort, and values what the user received against the pool's own state before the trade. Loss is the shortfall in basis points of the trade, and it decomposes per swap into the terminal's fee, the network cost (priority fee, inclusion tips, token-account rent), the pool's LP fee and price impact, and the protocol cuts (launchpad curves, routers). This bench publishes the same quantity with the terminal component removed, subtracted on each individual swap before the median is computed: median(loss) minus median(fee) is a different statistic and differs materially where an app's fee is not constant across its swaps. Network, pool and protocol costs stay inside, because routing through a launchpad curve rather than a migrated pool, or attaching a larger tip, is a choice the app makes on the user's behalf. Same rolling 24 hour window, same publication floors, same flow weighting across a product's chains, medians with a bootstrap interval and p90.

Results: 15 providers measured, 13 ranked by Execution loss (p50, 24h)

Trading terminal execution quality 2026: what a swap costs once the app's own fee is removed: Execution loss per provider (p50, 24h).
№Providersp50Cost per swap, all inApp feeNetworkSuccess
1FOMO218 bps348 bps130 bps27.7 bps100.00%
2pump.fun app220 bps220 bps0.36 bps3.43 bps100.00%
3BasedBot244 bps341 bps98.4 bps1.75 bps100.00%
4GMGN248 bps345 bps99.2 bps10.8 bps100.00%
5Terminal306 bps411 bps98.7 bps16.9 bps100.00%
6BONKbot310 bps409 bps98.7 bps58.3 bps100.00%
7Trojan352 bps452 bps97.5 bps87.0 bps100.00%
8Banana Gun359 bps455 bps98.0 bps89.5 bps100.00%
9Bloom363 bps459 bps99.3 bps54.4 bps100.00%
10Maestro379 bps480 bps98.0 bps68.3 bps100.00%
11Axiom383 bps478 bps95.8 bps26.2 bps100.00%
12Pepeboost383 bps480 bps97.2 bps41.9 bps100.00%
13Photon410 bps463 bps97.5 bps73.5 bps100.00%
Measured, not ranked: sample below the ranking floor
not rankedBinance138 bps187 bps47.7 bps8.03 bps100.00%
not rankedPhantom209 bps315 bps84.8 bps7.37 bps100.00%

Every transaction behind these numbers

The most recent transactions of each row (3000 in all, 2840priced), so every published figure has its own evidence here. These are a sample, not the statistic: the medians above are computed over the full rolling window, which is far more swaps than a row shows here, so a row's handful of transactions will not reproduce its median. Click a hash to open it on Solscan and check every figure against the transaction's balances: Loss = 1 − value received / value given; Fee + Net + Protocol + Pool (+ Relay on the cross-chain rows) = Loss. Exec is the figure this bench ranks on: the same loss with the app's own fee taken out, on each swap, before any median is taken. Ref says what the tokens were valued at (reserves: the pool's exact mid before the swap; pool: the previous trade on the same pool, age in seconds). A ! marks a row outside the plausible bounds, kept out of the statistics.

method v5 · as of Wed, 30 Sep 2026 13:20:46 UTC

3,000 swaps2,840 priced364 bps median loss, flow-weighted361 bps counting each row once0 / 889 sandwiched / screened116 flagged
WhenTerminalTransactionSide · routeTradeIn $Out $LossExecWhere it goesApp feeNetProtocolPoolRentReferenceSandwich
09-30 13:20:36GMGN logoGMGNRobinhood0xfa29…4c42buyuniswap-v3from Robinhood$73$73$7122912910020127— exact mid—
09-30 13:20:36Axiom logoAxiomRobinhood0xa644…4457selluniswap-v4from Robinhood$309$309$288675!581!94890492— exact mid—
09-30 13:20:36GMGN logoGMGNArc0x7d23…bcabselluniswap-v4from Arc$4.02$4.02$3.8931521898160202— exact mid—
09-30 13:20:36Maestro logoMaestroBNB0xe0d8…c171buyuniswap-v21from BNB$5,444$5,444$5,0557156169970609— exact mid—
09-30 13:20:36Binance logoBinanceEthereum0xb627…2651selluniswap-v32from Ethereum$137$137$1351691194988031— exact mid—
09-30 13:17:37GMGN logoGMGNHyperEVM0x1940…3306buyuniswap-v3from HyperEVM$26$26$2621111110040107— exact mid—
09-30 13:17:10FOMO logoFOMOon Robinhood via Relayx8ozEf…Xqqjselluniswap-v4from Robinhood$7.43$7.43$6.93666563104800432— exact mid—
09-30 13:17:01Phantom logoPhantomWpK2f4…SnL7buyraydium-cpmm2via X$29$29$283192348530231— exact mid—
09-30 13:14:57FOMO logoFOMOZLZz1A…6TEvbuyorca$5.00$5.00$4.823712721001000171— exact mid clean
09-30 13:14:39Trojan logoTrojan3bgPW4…htVRsellraydium-launchpad1via X$5.53$5.53$5.274663699813899132— exact mid clean
09-30 13:14:35Maestro logoMaestroBase0xcd07…8a2cbuyuniswap-v41from Base$137$137$132319121197130108— exact mid—
09-30 13:14:01pump.fun app logopump.fun appon HyperEVM via Relay0x4645…6c09buyuniswap-v3from Solana$77$77$76125113129022— exact mid—
09-30 13:13:41pump.fun app logopump.fun app4BooEn…mqJnbuypump-curve$17$17$171381380112414— exact mid clean
09-30 13:13:13BONKbot logoBONKbot55VxXz…witnbuypumpswap$5.09$5.09$4.80560463963687620$0.19 exact mid clean
09-30 13:12:33GMGN logoGMGN64x566…EW5csellpumpswap1via X$80$80$77393295981521960— exact mid clean
09-30 13:11:35GMGN logoGMGNBase0xa01d…bcc0buyuniswap-v41from Base$273$273$26531211419910113— exact mid—
09-30 13:09:24Banana Gun logoBanana Gun3mytWi…8e54buymeteora-dlmm$13$13$111535143897249971093$0.19 exact mid clean
09-30 13:09:20Maestro logoMaestro31QwL8…4LLfsellpumpswap2via X$3.75$3.75$3.584723731003281629— exact mid clean
09-30 13:08:37Maestro logoMaestroRobinhood0xd47e…7f94buyuniswap-v41from Robinhood$546$546$4988757769910775— exact mid—
09-30 13:08:37Axiom logoAxiomBNB0xd01a…1785buyuniswap-v21from BNB$233$233$22726716710050161— exact mid—
09-30 13:08:37Binance logoBinanceBNB0x5fae…02daselluniswap-v2from BNB$7.85$7.85$7.33661609521920417— exact mid—
09-30 13:07:38Phantom logoPhantom3FsEDv…bEfobuyraydium-launchpad2via X$5.51$5.51$5.33328244851897128— exact mid clean
09-30 13:07:11FOMO logoFOMOon Robinhood via Relay0xfcf6…aab5buylaunchpad-curvefrom Solana$15$15$14442397453629622— exact mid—
09-30 13:06:56FOMO logoFOMOon Base via Relay0xfcc5…9161buyuniswap-v4from Solana$9.00$9.00$8.693422974510501— exact mid—
09-30 13:06:30FOMO logoFOMO2BjCKo…mVN1buypumpswap1$3.50$3.50$3.364022601431439720— exact mid clean
09-30 13:05:36Bloom logoBloomRobinhood0x559f…2ad5selllaunchpad-curvefrom Robinhood$51$51$4930720998399107— exact mid—
09-30 13:05:36Maestro logoMaestroArc0xdbfe…3bc1selluniswap-v4from Arc$14$14$133392429730239— exact mid—
09-30 13:05:14FOMO logoFOMOon Ethereum via Relay0xbaf4…8bd2buyuniswap-v4from Solana$285$285$27631326845910112— exact mid—
09-30 13:04:50pump.fun app logopump.fun app4sexgV…9rfdbuypumpswap$15$15$151301300110030— exact mid clean
09-30 13:04:49FOMO logoFOMOon Arc via Relay0xe9eb…55ccbuyuniswap-v4from Solana$20$20$2018213250140116— exact mid—
09-30 13:04:43FOMO logoFOMOfunding legGax8vP…tTbmbuyrelayfrom Robinhood$12$12$1211373413200— exact mid—
09-30 13:03:30Terminal logoTerminalnMTkkA…mC6isellraydium-launchpad1via X$12$12$123862889820116152— exact mid clean
09-30 13:03:20GMGN logoGMGN2Q9fng…7tVUsellmeteora-dlmm$57$57$552631649800164— previous trade1s clean
09-30 13:02:33pump.fun app logopump.fun appon Robinhood via Relay3wQ3CW…c9pqselluniswap-v4from Robinhood$18$18$185757014023— exact mid—
09-30 13:01:02pump.fun app logopump.fun appfunding legm7ymVg…1ZTgbuyrelayfrom BNB$6.92$6.92$6.87797906800— exact mid—
09-30 12:59:39pump.fun app logopump.fun appon Ethereum via Relay0xd862…7fbebuyuniswap-v41from Solana$110$110$891915190015235043— exact mid—
09-30 12:59:36Axiom logoAxiomRobinhood0xd59f…a4a4buyuniswap-v4from Robinhood$30$30$30238!139!9994045— exact mid—
09-30 12:59:36Axiom logoAxiomBNB0xbdc7…f5f1buyuniswap-v21from BNB$65$65$61617570473120258— exact mid—
09-30 12:59:36GMGN logoGMGNRobinhood0xd4f9…b87bbuyuniswap-v3from Robinhood$8.24$8.24$8.14116161001502— exact mid—
09-30 12:59:36Maestro logoMaestroEthereum0xc674…7b61buyuniswap-v2from Ethereum$234$234$2282711739882091— exact mid—
09-30 12:59:18Bloom logoBloom4JR6k4…K1Wubuypumpswap$124$124$120283181103259363$0.18 exact mid—
09-30 12:59:05Phantom logoPhantom2Jd2M2…KAinbuypumpswap$6.32$6.32$5.709849028230796498$0.18 exact mid—
09-30 12:57:54BasedBot logoBasedBotfunding leg5YzHjs…RE4Mbuyrelayfrom BNB$157$157$15675750200— exact mid—
09-30 12:57:53FOMO logoFOMOon Robinhood via Relay64p8xr…wjWSselluniswap-v4from Robinhood$9.92$9.92$9.4250341786540363— exact mid—
09-30 12:57:02Trojan logoTrojan2c5rnA…gYUsbuypumpswap$350$350$334458361981098252— exact mid clean
09-30 12:56:54FOMO logoFOMO5oUVd8…ZSn3buymeteora-dlmm$8.12$8.12$7.8928814913862088— exact mid clean
09-30 12:56:37Binance logoBinanceBase0x1721…eeb9buyuniswap-v3from Base$8.25$8.25$8.14133795449030— exact mid—
09-30 12:55:51pump.fun app logopump.fun app4KUBoW…yL5jbuypumpswap$6.31$6.31$6.0540340302968621$0.19 exact mid clean
09-30 12:55:49Photon logoPhoton36mRda…QAdpsellpump-curve$212$212$199595499956126367— exact mid clean
09-30 12:55:22BONKbot logoBONKbot49pZpa…PHNubuymeteora-dbc$102$102$98400300100300270$0.18 exact mid clean
Showing 50 of 3000

Frequently asked

Which trading terminal loses the least per swap once its own fee is removed?

As of the last measurement, FOMO at 218 bps (p50, 24h) across 15 trading apps and Telegram bots. The figure is the median value lost per swap against the pool's state before the trade, with the app's own fee subtracted on each swap. It moves with every refresh; the board above is the current answer.

Does the cheapest app to use also execute best?

Not necessarily. An app with a high fee can route well and an app with no fee can route badly; this board isolates the routing. Compare a row's place here with its place on bench 268, trading terminal fill quality (/benchmarks/terminal-fill-quality): the gap between the two is the fee.

How is execution loss measured?

From the user's own transactions read on-chain. Each swap is priced against the pool's state before the trade, the shortfall is split into terminal fee, network, protocol and pool, and the terminal fee is removed. The median of what remains, over a rolling 24 hours, is the row's figure.

Why is this a separate bench and not a column on bench 268?

They answer different questions and a reader usually wants one or the other. Bench 268 is what a swap costs you, which is what you pay and includes the fee. This one is how well the app executes, which is what you would compare if you were choosing between apps whose fees you already know. The underlying swaps are identical and both boards publish the same rows under the same rules.

Why not just subtract the fee column from the loss column yourself?

Because that gives the wrong number. The median of a difference is not the difference of the medians unless the fee is identical on every swap, which is false for any app running promotions, tiered fees or rebates. The size of the gap follows how much an app's fee varies across its own swaps; it is widest on an app like FOMO, which charges 2 % on Solana and about 0.5 % through Relay. So it moves with the cohort, and the board's two columns are the place to read it.

Should the protocol fee count as execution quality?

It stays in, because routing a trade through a launchpad curve that keeps 1 % rather than a migrated pool that does not is a decision the app makes. It is not a fee the app collects, but it is a cost the app chose for the user. The terminal, network, pool and protocol components are each published separately on bench 268 if you want to draw the line elsewhere.

Is a negative figure a bug?

No. It means the fee taken was larger than the total shortfall on that swap: a rebated or sponsored fee, or a reference price that drifted in the user's favour between the previous trade and this one. These are real swaps and stay in the sample; excluding them would bias every median upward.

Source code github.com/ChainBench/OpenChainBench/tree/main/harnesses/terminal-fill-quality