All Collections
What is 1inch "RabbitHole" protection and how does it work?
What is 1inch "RabbitHole" protection and how does it work?

Everything you need to know about front-running protection for Metamask usesrs

Matt avatar
Written by Matt
Updated over a week ago

What is 1inch RabbitHole?

RabbitHole is a custom RPC feature that protects Metamask users from front-running (aka 'sandwich attacks), directly within the 1inch user interface. It sends 1inch swap transactions directly to validators, allowing them to avoid the Ethereum mainnet mempool and the prying eyes of MEV bots hunting for victims. Currently the validators include Flashbots, BloXroute, Eden, and Manifold.

RabbitHole is designed as a layer between 1inch-Metamask users and Ethereum validators. It is very similar to the Flashbots feature but will only send users transactions to validators directly if there is a threat of sandwich attacks.

How to use the 1inch RabbitHole feature when swapping assets.

***Please note: This feature is designed to help MetaMask extension users specifically, and it won’t work for other wallets.

***Also note: RabbitHole only works for transactions going to 1inch v4 and v5 routers and doesn't work for every transaction.

In this tutorial you will need the RabbitHole Custom RPC added to Metamask wallet. To do this you must go to your Metamask wallet.

Go to Settings > Networks

> Add Network

Use the following parameters:

Once added, switch to the RabbitHole network in Metamask . Then connect your Metamask wallet to the 1inch dApp.

Once connected, select the token pair and amounts you would like to swap, adjust your slippage tolerance and gas price. Then click swap.

On the next confirmation screen, review the information and click "Confirm Swap".

Then finally, click "Confirm" within the Metamask pop-up window.

You have now submitted a RabbitHole transaction! Your transaction will go directly to a miner, and avoid the mempool entirely.

Once your transaction succeeds, there will be several indicators on Etherscan which will signify that the transaction did not go to the mempool. First, in the upper left corner, there will be a "Flashbots" and "Private transaction" label:

Also, if you scroll down to the bottom of the page and click "See more", you can see that your transaction will maintain first position (or close to first) in the block.

Questions, comments, concerns? Feel free to reach out to us in the live support chat!

Did this answer your question?