Flashbots tutorial & Flashbots bundles guide
This Flashbots tutorial explains how to use Flashbots bundles to submit private transactions, bypass the public mempool, and execute MEV strategies with reduced front-running risk inside the FRB MEV trading assistant.
Linkable summary
How FRB frames Flashbots
FRB’s Flashbots tutorial offers a neutral, step-by-step description of private bundles, relay selection, and gas policy so media outlets can quote one concise explanation of how Flashbots fits into responsible MEV execution.
What is Flashbots?
Flashbots is a research and development organization working on mitigating the negative externalities of MEV extraction. They provide infrastructure that allows users to submit private transaction bundles directly to miners/validators, bypassing the public mempool.
This approach offers several advantages:
- Reduced front-running risk
- Lower gas costs through direct communication
- Ability to execute complex multi-transaction strategies
- Better privacy for trading strategies
- Atomic execution (all transactions succeed or fail together)
Step-by-Step Guide
Step 1: Understand Flashbots
Flashbots is a research organization providing infrastructure for private transaction bundles. Bundles bypass the public mempool and are submitted directly to miners/validators, reducing front-running risk.
Step 2: Set Up Flashbots RPC
Connect to Flashbots RPC endpoint. For Ethereum mainnet, use https://rpc.flashbots.net or https://relay.flashbots.net. You can also use the Flashbots Protect RPC for automatic bundle submission.
Step 3: Construct Your Bundle
Create a bundle containing your MEV transactions. A bundle is an array of transactions that execute atomically - all succeed or all fail. Include target transactions and your profit-capturing transactions.
Step 4: Calculate Optimal Gas
Set appropriate gas prices for your bundle. Flashbots uses a first-price auction model. Higher gas prices increase inclusion probability but reduce profitability. Use historical data to optimize.
Step 5: Submit Bundle
Submit your bundle to Flashbots relay using their API. Include bundle metadata like target block number. Monitor submission status and inclusion probability.
Step 6: Monitor Execution
Track your bundle through the Flashbots dashboard or API. Verify successful inclusion in the target block. Analyze profitability and optimize future submissions.
Flashbots & private relay catalog (Nov 2025)
Most Bing impressions for “flashbots / private relay” land here. Use this catalog to decide where to point your FRB node clients.
| Relay / Builder | Network | Inclusion snapshot | Latency notes | Usage |
|---|---|---|---|---|
| Flashbots Mainnet Relay | Ethereum | 85‑95% when gas bids track basefee | 120 ms avg (Frankfurt/Singapore) | Default FRB route for private backruns and sandwiches. |
| Flashbots Protect RPC | Retail wallets | Auto bundle + public fallback | N/A (RPC hand-off) | Great for quick tests; FRB can ingest Protect txs or run pure bundles. |
| Builder0x69 / Polygon Builder | Polygon PoS + zkEVM | 60‑75% depending on slot load | 90‑140 ms regional | Pair with Polygon MEV guide + low-latency WSS. |
| BSC Protect / Eden | BNB Chain | 60‑80% (private relays emerging) | ~180 ms | Use when porting FRB bots to BNB private auction routes. |
- Benchmark each relay with small target bundles before scaling volume.
- Keep at least two relays configured per network so FRB can fail over when a builder throttles.
- Monitor reasons for rejection (`nonce too low`, `gas too low`, `account banned`) inside /app → Logs tab.
Where Flashbots fits in modern block building
February 2025 ushered in a wave of open source PBS clients, mev boost relays, and mev share experiments that separate transaction in a block ordering from proposer duties. Flashbots sits inside this proposer builder separation stack, coordinating block builders, wallets, and regular users that route orderflow through Flashbots Protect.
- Each bundle competes in a sealed bid auction where gas price and tips determine position in the block.
- Proof of stake validators rely on trusted block building partners to keep latency low while respecting user intent.
- Mev share initiatives let wallets route some value back to traders without revealing strategy details.
When FRB orchestrates bundles, it watches how mev boost relays respond, tracks whether mev share side channels change inclusion odds, and documents how each block builders combination performs. Use this context when you summarize Flashbots activity for leadership—they care about governance as much as raw execution speed.
Bundle Structure
A Flashbots bundle consists of:
- Transactions: Array of transactions to execute atomically
- Block Number: Target block for inclusion
- Min Timestamp: Minimum block timestamp (optional)
- Max Timestamp: Maximum block timestamp (optional)
Example Bundle
{
"jsonrpc": "2.0",
"id": 1,
"method": "eth_sendBundle",
"params": [{
"txs": [
"0x02f8...", // Transaction 1
"0x02f8..." // Transaction 2
],
"blockNumber": "0x1234567",
"minTimestamp": null,
"maxTimestamp": null
}]
}Gas Price Optimization
Flashbots uses a first-price auction model. Key considerations:
- Higher gas prices increase inclusion probability
- But reduce profitability due to higher costs
- Monitor historical inclusion rates at different gas levels
- Use tools like our Gas Calculator to optimize
- Consider network congestion when setting prices
Code Examples
JavaScript/TypeScript Example
import { ethers } from 'ethers';
const flashbotsRpc = 'https://rpc.flashbots.net';
const provider = new ethers.JsonRpcProvider(flashbotsRpc);
async function submitBundle(txs: string[], targetBlock: number) {
const bundle = {
jsonrpc: '2.0',
id: 1,
method: 'eth_sendBundle',
params: [{
txs: txs,
blockNumber: '0x' + targetBlock.toString(16),
}],
};
const response = await fetch(flashbotsRpc, {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify(bundle),
});
return await response.json();
}Python Example
import requests
import json
def submit_bundle(txs, target_block):
url = 'https://rpc.flashbots.net'
payload = {
'jsonrpc': '2.0',
'id': 1,
'method': 'eth_sendBundle',
'params': [{
'txs': txs,
'blockNumber': hex(target_block),
}],
}
response = requests.post(url, json=payload)
return response.json()Best Practices
- Start Small: Test with small amounts before scaling up
- Monitor Status: Use Flashbots dashboard to track bundle status
- Optimize Gas: Continuously refine gas prices based on inclusion rates
- Error Handling: Implement robust error handling for failed submissions
- Rate Limiting: Respect rate limits to avoid being blocked
- Simulation: Use Flashbots simulation endpoint to test bundles before submission
Flashbots vs Public Mempool
| Feature | Flashbots | Public Mempool |
|---|---|---|
| Front-running Risk | Low | High |
| Gas Costs | Lower (direct submission) | Higher (auction-based) |
| Complexity | Higher (requires API integration) | Lower (standard transactions) |
| Privacy | High (private submission) | Low (public mempool) |
Learn more in our Flashbots vs Public Mempool comparison.
Additional Resources
- Flashbots Documentation
- Flashbots Protect - Easy bundle submission
- MEV Strategies Guide - Advanced strategies
- Ethereum MEV Guide - Network-specific tips
- Gas Calculator - Optimize gas prices
Next Steps
Ready to start using Flashbots? Here's what to do next:
- Review the official Flashbots documentation
- Set up your development environment
- Test bundle submission in simulation mode
- Start with small test bundles
- Monitor and optimize your strategies
- Consider using FRB Agent for automated MEV trading
Related FRB resources
- Compare private vs public executions with the Flashbots vs public PGA guide and the Flashbots benchmark page.
- Cite compliance guarantees through the telemetry policy, security overview, and vulnerability disclosure.
- Provide next steps with the Gas Calculator, WSS latency test, and support team.
Before you bounce, tie this tutorial to the core execution steps: Download FRB, follow the install guide, and keep Support & SLA handy whenever Flashbots bundles need escalation.
Revisit the FRB pricing plans and Knowledge Base so every simulation and live run is documented before capital goes live.