Skip to main content

Overview

Today, orderflow originators like wallets and dapps do not actively participate in MEV. Their users generate MEV when transacting, but this value is captured by builders, searchers, and validators -- not users, wallets, or dapps.

MEV-share is a protocol that enables users, wallets, and dapps to capture the MEV their transactions create.

Introduction

What is MEV-share?

MEV-Share is an open-source protocol, not a company. It uses privacy and commitments to facilitate permissionless collaboration between users/orderflow-providers and searchers. It is credibly neutral, permissionless for searchers, and does not enshrine a single block builder. Aggregating order flow to MEV-Share will greatly reduce proprietary order flow as a centralizing force on Ethereum while enabling wallets and other sources of order flow to participate in the MEV supply chain.

To start earning MEV kickbacks from MEV-share, submit your transactions to the Flashbots Matchmaker, either by connecting your wallet to the Protect RPC, or sending a private transaction to the Matchmaker API.

What is a matchmaker?

A matchmaker is a service that matches user transactions with searcher bundles. Flashbots runs a matchmaker on Ethereum mainnet. Users submit their transactions to the matchmaker, which shares select information about them with searchers. Searchers propose transactions for the matchmaker to bundle with the user transactions. Currently we only support backruns. The matchmaker forwards these bundles to a block builder with a requirement that the user is paid a kickback percent of the winning searcher's backrun profit.

Connect Your Wallet

Ethereum users can start earning MEV kickbacks today by connecting their wallets to Flashbots Protect.



ℹ️ By default, users will connect to the Stable configuration, which is tuned by Flashbots to optimize execution speed while protecting users from harmful MEV. This configuration can be modified to include more data. See the Flashbots Protect MEV-Share docs to learn more.

Technical Information

Searchers should check out the Getting Started guide for a walkthrough of MEV-Share and how it differs from searching on the mempool.

Wallet/Dapp Developers should check out the Integration Guide for information about MEV-Share and instructions on how to integrate your wallet.

Sending Transactions

Wallet users connected to Flashbots Protect do not have to do anything to benefit from MEV-Share. Transactions received by the Protect RPC are automatically forwarded to MEV-Share with the default hint parameters.

To send transactions directly to Flashbots Matchmaker, use a client library or send a request to the sendPrivateTransaction endpoint with the privacy parameter.

Listening for Transactions

MEV-Share dispatches data about pending transactions via an SSE event stream. To learn more, see the MEV-Share Event Stream Docs.

Sending Bundles

Bundles on MEV-Share consist of signed transactions and transaction hashes from the event stream, as well as some metadata about the bundle's validity conditions.

To send a bundle to MEV-Share, use a client library or send a request to the mev_sendBundle RPC endpoint. For more information about sending bundles, see Sending Bundles.

ℹ️ Currently, MEV-Share only allows constructing bundles containing a single input and a single backrun. If the input is also a bundle, the rule applies recursively to that nested bundle. Concretely this means that searchers can only place hashes in the first position of their bundles; and each bundle may include up to one hash. The Matchmaker will reject any bundles that violate these rules. This ensures that searchers cannot frontrun users in-protocol.