At LA Tech Week 2025’s “MEV on L2s” workshop, we analyzed a year of data. The conclusion: L2 MEV is fundamentally different from L1, and most searchers are leaving money on the table.
Here’s what’s actually happening with MEV on Optimism, Arbitrum, and Base.
MEV Landscape: L1 vs L2
Ethereum L1 MEV (Mature Market)
Monthly MEV extracted (Sept 2025): ~$50M
- Sandwich attacks: 45%
- Arbitrage: 35%
- Liquidations: 15%
- Other: 5%
Infrastructure:
- Flashbots MEV-Boost (90%+ blocks)
- Builders compete for block space
- Searchers → Builders → Relays → Validators
- Sophisticated tooling (MEV-Share, Order Flow Auctions)
L2 MEV (Nascent Market)
Monthly MEV across all L2s (Sept 2025): ~$8M
- Optimism: $3.2M
- Arbitrum: $2.8M
- Base: $1.5M
- Others: $0.5M
Key differences from L1:
- Centralized sequencers: Single entity orders transactions
- No MEV-Boost: Sequencer keeps all MEV
- Different mempool dynamics: Varies by L2
- Lower liquidity: Smaller MEV opportunities
Sequencer Extractable Value (SEV)
On L2s, the sequencer has TOTAL control over transaction ordering.
What Sequencers Can Extract
1. Front-running user swaps
User submits: Swap 1M USDC → ETH on Uniswap
Sequencer sees this, orders:
1. Sequencer buy ETH (front-run)
2. User swap (pushes price up)
3. Sequencer sell ETH (back-run)
Sequencer profit: ~$500-2000
2. JIT (Just-In-Time) liquidity
User large swap coming → 1M USDC to ETH
Sequencer:
1. Add 10M liquidity to pool (just before swap)
2. User swap executes (sequencer earns LP fees)
3. Remove liquidity (immediately after)
Sequencer profit: LP fees without IL risk
3. Liquidation priority
Sequencer monitors lending protocols
When position liquidatable:
1. Sequencer's liquidation tx goes first
2. Other searchers' txs fail
Sequencer profit: 100% of liquidation bonuses
Do Sequencers Actually Extract MEV?
Official stance: “We don’t front-run users”
Reality: Unclear. Sequencer operations are opaque.
Evidence from LA Tech Week analysis:
- Optimism sequencer wallet profits: ~$50K/month from “operating costs”
- Could be MEV, could be legitimate fees
- No transparency into ordering logic
Proposed solution: Sequencer commitments (e.g., “first-come-first-serve” ordering)
Searcher Strategies on L2s
Strategy 1: Arbitrage (Cross-DEX)
Opportunity: Price differences between Uniswap, Velodrome, SushiSwap on Optimism.
Example:
Uniswap: 1 ETH = 2500 USDC
Velodrome: 1 ETH = 2505 USDC
Arbitrage:
1. Buy ETH on Uniswap (2500 USDC)
2. Sell ETH on Velodrome (2505 USDC)
Profit: $5 per ETH (minus gas)
L2 advantage: Gas costs 10-50x lower than L1.
Bot code (simplified):
import { ethers } from 'ethers';
const provider = new ethers.JsonRpcProvider('https://mainnet.optimism.io');
const wallet = new ethers.Wallet(PRIVATE_KEY, provider);
async function findArbitrage() {
const uniswapPrice = await getPrice(UNISWAP_POOL, 'ETH', 'USDC');
const velodromePrice = await getPrice(VELODROME_POOL, 'ETH', 'USDC');
if (velodromePrice > uniswapPrice * 1.001) { // 0.1% profit threshold
const profit = velodromePrice - uniswapPrice;
console.log(`Arbitrage opportunity: ${profit} USDC per ETH`);
// Execute atomic arbitrage via flash swap
await executeArbitrage(uniswapPrice, velodromePrice);
}
}
async function executeArbitrage(buyPrice: number, sellPrice: number) {
// Use flash swap to avoid upfront capital
const flashSwapContract = new ethers.Contract(FLASHSWAP_ADDRESS, ABI, wallet);
await flashSwapContract.flashSwap(
UNISWAP_POOL, // Borrow from
VELODROME_POOL, // Repay to
ethers.parseEther('10'), // Amount
{ gasLimit: 500000 }
);
}
// Run every block
provider.on('block', findArbitrage);
Profitability (Oct 2025 data):
- Average profit per trade: $8
- Trades per day: 15-30
- Monthly revenue: $3,600-7,200
- Gas costs: ~$200/month (cheap on L2!)
- Net profit: $3,400-7,000/month
Strategy 2: Sandwich Attacks (Ethical Debate)
How it works:
1. See user swap: 500K USDC → ETH
2. Front-run: Buy ETH (push price up)
3. User swap executes (worse price)
4. Back-run: Sell ETH (profit from price impact)
L2 challenge: Sequencer may reorder or censor sandwich attempts.
Current state: Some L2s (Base) have private RPCs to combat sandwiching.
Ethical question: Is sandwiching “value extraction” or “theft”?
Strategy 3: Liquidations on Lending Protocols
Target protocols: Aave on Optimism/Arbitrum
Monitoring:
import { ethers } from 'ethers';
const aave = new ethers.Contract(AAVE_POOL, ABI, provider);
async function monitorLiquidations() {
// Get all user positions
const users = await getUsersWithDebt();
for (const user of users) {
const healthFactor = await aave.getUserAccountData(user);
// Health factor < 1 = liquidatable
if (healthFactor.healthFactor < ethers.parseEther('1')) {
console.log(`Liquidation opportunity: ${user}`);
await liquidate(user);
}
}
}
async function liquidate(user: string) {
// Liquidate up to 50% of user's debt
const debtToCover = await calculateMaxLiquidation(user);
await aave.liquidationCall(
COLLATERAL_ASSET, // e.g., ETH
DEBT_ASSET, // e.g., USDC
user,
debtToCover,
true, // Receive aToken
{ gasLimit: 1000000 }
);
}
setInterval(monitorLiquidations, 12000); // Every block
Profitability:
- Liquidation bonus: 5-10% of collateral
- Average liquidation: $50K debt → $2,500-5,000 profit
- Competition: Lower on L2s (fewer searchers)
Strategy 4: NFT Sniping
Opportunity: Buy underpriced NFTs the moment they’re listed.
L2 NFT markets: Optimism (Quix), Base (Coinbase NFT)
Bot:
const marketplace = new ethers.Contract(MARKETPLACE_ADDRESS, ABI, wallet);
marketplace.on('ItemListed', async (tokenId, price, seller) => {
const floorPrice = await getFloorPrice(COLLECTION);
// If listed 20% below floor, instant buy
if (price < floorPrice * 0.8) {
await marketplace.buyItem(tokenId, {
value: price,
gasLimit: 300000
});
console.log(`Sniped NFT ${tokenId} for ${ethers.formatEther(price)} ETH`);
}
});
Results: Highly competitive, milliseconds matter.
Private Mempools on L2s
The Problem
Public mempool: Everyone sees pending transactions → MEV bots front-run users.
User pain: Swapping on Uniswap? Get sandwiched, lose 0.5-2%.
Solutions Emerging (2025)
1. Flashbots Protect for L2s (Experimental)
Flashbots expanding to Optimism:
- Users send transactions to Flashbots RPC
- Transactions forwarded privately to sequencer
- Sequencer includes without revealing to public mempool
Status: Pilot on Optimism, not production yet.
2. Base Private RPC
Coinbase offers private transaction submission:
- Submit to
https://mainnet.base.org/private - Transaction goes directly to sequencer
- Not visible in public mempool
Adoption: ~15% of Base transactions use private RPC (Oct 2025).
3. Encrypted Mempools (Shutter Network)
How it works:
- User encrypts transaction
- Sequencer commits to block order
- Transactions decrypted after ordering finalized
- No front-running possible
Status: Testnet on Gnosis Chain, exploring L2 deployment.
MEV-Boost for L2s? (Future)
Proposal: Allow external builders to compete for L2 block space.
How it would work:
Searchers → Builders → Sequencer
↓
Builder pays sequencer for inclusion rights
↓
MEV shared between searchers, builders, sequencer
Benefits:
- More efficient MEV extraction
- Revenue to L2 (not just sequencer)
- Better UX (less user-extracted value)
Challenges:
- Sequencer needs to give up control
- Latency (builders need time to build blocks)
- Complexity
Timeline: Research phase, 2-3 years to production.
Data: L2 MEV by Category (Sept 2025)
Arbitrage: $4.5M (56%)
- Cross-DEX: $3.2M
- Cross-chain: $1.3M
Liquidations: $2.1M (26%)
- Aave: $1.5M
- Compound: $0.6M
Sandwich attacks: $1.2M (15%)
- Optimism: $0.6M
- Arbitrum: $0.4M
- Base: $0.2M (private RPC reducing sandwiches)
NFT sniping: $0.2M (3%)
Total: $8M/month (vs $50M on L1)
My Questions for the Community
-
Should sequencers share MEV revenue with L2 users/token holders?
-
Private mempools: Should all L2s offer private transaction submission by default?
-
MEV-Boost for L2s: Would you trade 100ms latency for fairer MEV distribution?
-
Ethical MEV: Is liquidation hunting “good MEV” and sandwiching “bad MEV”?
L2 MEV is the wild west. It’s less sophisticated than L1, which means more opportunity for builders.
Mike Johnson
Data Engineer & MEV Researcher
Resources:
- Flashbots: https://www.flashbots.net/
- MEV on L2s research: https://arxiv.org/abs/2101.05511
- Optimism sequencer: https://community.optimism.io/docs/protocol/2-rollup-protocol/
- Base private RPC: https://docs.base.org/guides/private-transactions
- LA Tech Week 2025 (October 13-19, Los Angeles)