See anonymized stats of bundles that included the searched tx. Gain visibility into how your bundles compete and understand why they don't get accepted.

Today, searchers "fire and forget" when sending bundles to builders, getting little observability into why they lost an auction, or if the builder misbehaved. We're interested in providing further transparency into the builder auction to support searchers; namely so they can answer the following types of questions:

  • How intense is the competition around a certain target transaction? As a searcher exploring new strategies, should I even attempt to compete, and if I'm already competing, how far off am I from the top bid?
  • Am I consistently overbidding and by how much?
  • Is the builder selecting the most rational bundle to be included? If not, where should I investigate to see if this builder is hijacking bundles?

In the same way tools like mevboost.pics, relayscan.io, mev.to, and rated.network have leveraged the relay data API to provide useful insights into the off-chain block market from the standpoint of the relays, we want to start the discussion around a set of data APIs to provide visibility into the off-chain bundle market. We consider these APIs as a way to aid searchers while maintaining privacy through anonymized fields and aggregation. The first API we're considering is builder_getAuctionStats which provides a 10-block delayed view into an auction targeting a given transaction hash (that landed on-chain). This keeps the auction blind, but opens up past auctions for analysis.

curl --data '{
    "method": "builder_getAuctionStats",
    "params": [{ "txHash": "0x2a67f890..."}],
    "id": 1,
    "jsonrpc": "2.0"
  }' \
  -H "Content-Type: application/json" \
  -X POST "https://builder.gmbit.co/rpc"

The response payload indicates when a bundle was received, if it was valid (eg. they didn't revert), the bid amount, and the bundle hash. What's intentionally not here are the transaction hashes, payloads, or other data that would reveal details about the searcher's techniques.

{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "bids": [
      {
        "slot": 6735544,
        "bundleHash": "0x4F97b90d...",
        "amount": 22228608556237532,
        "valid": true,
        "receivedAtMs": 1689650549166
      }
    ]
  }
}

You can explore a basic visualization on top of this dataset for our own builder over at gmbit.co/auction. If you have any feedback, let's discuss at hello@gmbit.co or twitter.com/gmbitco.