Skip to main content

MEV-Share

Flashbots Protect users' transactions automatically flow to the Flashbots MEV-Share Node, which returns them up to 90% of the MEV that their transactions create. By default, Protect users will be connected with the Stable configuration, which is continuously tuned by Flashbots to optimize execution while protecting users from harmful MEV. Users do not need to do anything to start benefiting from MEV-Share, other than to connect their wallet to Flashbots Protect.

MEV-Share users on Flashbots Protect can directly control how their transactions are processed. These settings can be applied using the "advanced" panel; or by manually configuring your Protect RPC request.

Protect RPC Reference

Preferences are passed as query params in the Protect RPC URL. Users can specify which hints to share about their transactions; which builders to send their transactions to; and how to distribute any refunds if their transaction is bundled.

Hints

To use a custom hint configuration, hint can be specified multiple times to specify exactly which data from the user's transactions is shared with searchers. If no hints are specified, the default Stable hint configuration is used. If one or more hint is specified, any hint not specified is disabled.

HintDescription
calldataShare data sent to the smart contract (if applicable) by the transaction. The function selector and contract address will also be shared if the calldata is shared.
logsShare logs emitted by executing the transaction.
function_selectorShare the 4-byte identifier of the function being called on the smart contract by the transaction. The contract address will also be shared if the function selector is shared.
contract_addressShare the address of the recipient of the transaction; typically a smart contract.
hashShare the transaction hash (or bundle hash if sending a bundle). To use full privacy mode, share this hint and this hint alone. The hash will always be shared if other hints are shared.
tx_hashShare individual tx hashes in the bundle.

Builders

To specify which builders will receive your transactions, the builder parameter can be specified multiple times.

NameRPC

Refunds

To use a custom refund configuration, refund can be specified multiple times to indicate what address(es) should receive what percentage(s) of the payment from a searcher who bundles the user's transaction. If no hints are specified, 90% of any searcher payment will be refunded to tx.origin of the user's transaction.

The refund param contains two values separated by a colon :. The first value is the address that the refund should be transferred to. The second value is the percentage of the searcher's payment that should be refunded. To split the payment across multiple addresses, add a new refund param for each address with the amount that it should receive.

The sum of all percentages specified in refund params must be less than 100. The validator payment is inferred from 100 - sum of refund percentages. Note that keeping a larger percentage of the refund may result in longer inclusion times, because it reduces the payment to the validator.

Common configurations

Stable Configuration

The Stable configuration is the default configuration for Protect RPC. No query parameters are specified to use it.

https://rpc.flashbots.net

Currently, this configuration shares the following information:

  • The hash of all transactions
  • Partial logs (the pool id and the fact that a swap was made) for curve, balancer, and uniswapV2/V3-style trades
  • Transactions are only forwarded to the Flashbots block builder

This may change over time as we gather more data and fine-tune the configuration to maximize benefits.

Full Privacy

To use Protect with full privacy, set only the hash hint in your Protect RPC URL:

https://rpc.flashbots.net?hint=hash

This will completely hide all identifying transaction data sent to the MEV-Share Node from searchers. Transaction hashes cannot be used to gain any information about a transaction or its origin.

Examples

Here are some examples of configurations that you might choose, depending on your goals.

Goal
Flashbots Protect RPC URL
Stablehttps://rpc.flashbots.net
Max Privacyhttps://rpc.flashbots.net?hint=hash
Max MEV Refunds (low privacy)https://rpc.flashbots.net?hint=calldata&hint=logs&hint=hash
Add Builders (share with other builders for faster inclusion)https://rpc.flashbots.net?builder=flashbots&builder=XYZ
Change Refund (send more to validator for faster inclusion)https://rpc.flashbots.net?refund=userAddr:10