MEV on Ethereum vs Solana: Mempools, Bundles and Auctions
How Flashbots PBS and Jito bundles create structurally different MEV extraction environments on Ethereum and Solana — and what that means for your bot strategy.
MEV — maximal extractable value — is often treated as a single concept, but the mechanics that govern it differ so sharply between Ethereum and Solana that a strategy profitable on one chain can be structurally impossible on the other. Understanding why starts with how each network surfaces pending transactions.
Ethereum: PBS, the Mempool and Flashbots
Ethereum's public mempool is an open gossip network. Every pending transaction propagates to nodes before inclusion, making the ordering game visible to anyone running a searcher. Proposer-Builder Separation (PBS) formalised the supply chain: searchers craft bundles of ordered transactions, builders aggregate the most profitable combinations, and validators pick the highest-paying block header via MEV-Boost. Flashbots' eth_sendBundle RPC was the first standardised interface for this pipeline, and it remains the dominant entry point.
The bundle abstraction gives searchers atomic guarantees — either the entire sequence lands in the target slot or none of it does, preventing partial execution that would leave an arbitrage half-completed. Priority fees ride on top of base fee, and builders compete in a second-price auction, surfacing genuine willingness-to-pay rather than a pure gas war. The result is a relatively predictable cost structure: searchers can simulate bundle profitability off-chain against a forked state, subtract the builder's cut, and bid accordingly.
The downside is latency. Ethereum blocks arrive roughly every 12 seconds, and the mempool visibility window creates a front-running surface — private mempools and encrypted mempools (EIP-7702 era designs) are partial mitigations, but the threat model remains.
Solana: No Mempool, Jito Bundles and Geyser Streams
Solana has no persistent mempool. Transactions are forwarded directly to the current leader via the Gulf Stream protocol, and they expire after roughly 150 slots (about 60 seconds) if not included. This eliminates the classic front-running window but creates a different problem: without a shared ordering queue, latency to the leader becomes the primary competitive variable.
Jito Labs rebuilt MEV infrastructure for this environment. Jito-Solana validators run a modified client that accepts bundles through a block-engine auction. Searchers submit ordered transaction groups and attach a tip — paid to the validator via a separate system account — in exchange for atomic, ordered inclusion at the start of a block. The auction settles per-slot, and the highest tip wins placement, effectively recreating the Flashbots bundle model without an underlying mempool.
To compete on Solana, bots also lean on priority fees (computeUnitPrice) alongside Jito tips, since non-Jito validators still process standard transactions based on fee priority. The real edge, though, is data freshness: searchers subscribe to Geyser plugin streams directly from validators to receive account-state updates in under a millisecond, bypassing the standard RPC layer entirely. A Solana arbitrage bot that relies on public RPC for price feeds will consistently be outrun by one consuming a Geyser stream — the latency gap can exceed 50ms, which is multiple slots at 400ms block times.
Our Solana arb bot is built around exactly this stack: Geyser-fed price discovery, Jito bundle submission, and simulation logic that rules out sandwich-able paths before committing a tip.
What Changes for Bot Builders
The structural differences cascade into practical design decisions:
- Simulation depth: Ethereum searchers can fork mainnet state and replay the bundle locally with high confidence. Solana's parallel execution model means account-lock conflicts can invalidate a bundle at inclusion time even if simulation passed — anti-rug checks need to account for concurrent writes to shared accounts.
- Tip vs. gas economics: On Ethereum, gas cost scales with computation. On Solana, compute units are cheap; the tip is the dominant variable cost and should be sized dynamically against expected profit, not set statically.
- Kill-switches: Both chains reward low-latency loop iteration, but Solana's slot speed means a misfiring bot can bleed capital across hundreds of bundles per minute. Hard profit-floor kill-switches and per-slot loss limits are non-negotiable.
- Inventory exposure: Cross-venue strategies that leg across Solana DEXes and centralised order books face correlated slippage during high-volatility slots when Jito block-engine queues back up. Inventory skew limits prevent runaway directional exposure while the fill loop catches up.
If you are migrating an Ethereum MEV strategy to Solana, expect to rewrite the transaction submission layer, replace mempool watchers with Geyser subscriptions, and rebuild your cost model around tip auctions rather than gas priority. The alpha sources — DEX arbitrage, liquidations, sandwich — exist on both chains, but the extraction machinery is entirely different. Explore our trading-bot services to see how we architect for each environment, or review the cross-venue arbitrage case study for a concrete look at bridging chain-specific MEV into a unified strategy.
Ready to build on the right infrastructure for your target chain? Start a project with TierZero and we will scope the bundle logic, data pipeline, and risk controls your MEV strategy actually needs.
Need a bot like this built?
We design, build and run trading bots on Solana, Hyperliquid and Polymarket.
Start a projectMore from the blog
Public vs Paid RPC: How to Run a Fair Benchmark
A fair comparison of public and paid RPC endpoints must account for quotas, workload, freshness and support guarantees.
Read articleRPC Benchmark Percentiles Explained: p50, p95 and p99
Why averages hide the latency spikes that break trading bots, wallets and production blockchain applications.
Read articleHyperliquid REST vs WebSocket Benchmark: What to Measure
A benchmark plan for Hyperliquid market data that separates request latency from streaming freshness and recovery.
Read article