Key Takeaways
A pending Ethereum transaction can get stuck when your gas fee is too low compared to current network demand.
You can speed up or replace a stuck transaction by broadcasting a new one with a higher priority fee, using the same nonce as the original.
This method works with ETH and ERC-20 tokens on any Ethereum-compatible wallet.
You’ll need a crypto wallet like MetaMask or Trust Wallet that allows manual nonce and gas settings.
Introduction
If you’ve ever sent a transaction on Ethereum and watched it sit in a pending state for hours, you are not alone. Ethereum processes thousands of transactions at a time, and when the network is busy, transactions with lower gas fees can be left waiting. This article explains why that happens and how you can fix it.
The good news is that you can replace a stuck pending transaction with a new one that pays a higher fee. This works for both ETH and ERC-20 tokens. The most common tools for this are MetaMask and Trust Wallet, though any wallet with nonce customization support will work.
Keep in mind that you cannot cancel a transaction that has already been confirmed on-chain. The technique described here only applies to transactions that are still pending in the mempool.
Why Is My Ethereum Transaction Stuck?
Ethereum uses a fee market to prioritize transactions. Since EIP-1559 was introduced, each transaction includes a base fee (set by the network) and a priority fee (a tip you pay to validators). Validators choose which transactions to include in each block, and they generally prefer those with higher priority fees.
When the network is congested, many users compete to get their transactions included. If your priority fee is too low, your transaction may sit in the mempool indefinitely. The mempool is a waiting area where unconfirmed transactions queue before being picked up by a validator.
Sometimes a stuck transaction will clear on its own if network activity drops. But if you need it resolved sooner, you can replace it manually.
Requirements
MetaMask or Trust Wallet installed and set up.
Access to the wallet that sent the stuck transaction (seed phrase or private key if importing).
A small amount of ETH to cover the higher gas fee on the replacement transaction.
How to Speed Up a Transaction on MetaMask
MetaMask offers a one-click option to speed up a pending transaction. This is the simplest approach.
1. Open MetaMask and go to the Activity tab. Find the pending transaction.
2. Click Speed Up. MetaMask will suggest a higher gas fee.
3. Confirm the new fee and submit. MetaMask will rebroadcast the transaction with a higher priority fee, using the same nonce as the original.
Once a validator includes the new transaction in a block, the original pending transaction is effectively replaced and dropped.
How to Replace a Transaction on MetaMask
If the Speed Up option does not work, or if you want to cancel the transaction entirely (by sending 0 ETH to yourself), you can do it manually using the custom nonce feature.
1. Go to MetaMask Settings, then Advanced. Turn on Customize transaction nonce.
2. Find the pending transaction in the Activity tab. Click on it and note the Nonce value. If you have multiple pending transactions, start with the one with the lowest nonce.
3. Click Send. In the recipient field, paste your own wallet address. Set the amount to 0 ETH.You need to send 0 ETH to your own wallet using the nonce of the pending transaction (noted down on step 2). Click [Confirm] when you are ready.
4. Before confirming, click the nonce field and enter the same nonce number you recorded in step 2.
5. Set a gas fee that is higher than the stuck transaction. You can check current gas prices on Etherscan's gas tracker.
6. Click Confirm. Wait for the new transaction to be confirmed. This replaces the original.
After the replacement transaction confirms, remember to go back to Settings > Advanced and turn off Customize transaction nonce to avoid accidental nonce errors in future.
FAQ
What happens if I do nothing?
If you leave a stuck transaction alone, it will either eventually be picked up by a validator when fees drop, or it will be dropped from the mempool after a certain time. However, some wallets keep rebroadcasting stuck transactions, which means they could unexpectedly confirm later. Replacing it manually gives you more control.
Can I cancel a confirmed transaction?
No. Once a transaction has been included in a block and confirmed on the Ethereum blockchain, it cannot be reversed or canceled. This is one of the core properties of blockchain technology. The replacement technique only works on transactions that are still pending.
What is a nonce and why does it matter?
A nonce is a sequential number assigned to each transaction from a given wallet address. Ethereum processes transactions in order, so a transaction with nonce 5 cannot be confirmed before the transaction with nonce 4. By sending a new transaction with the same nonce, you effectively tell the network to ignore the old one.
Does this method work for other networks?
Yes. The nonce replacement method works on any Ethereum Virtual Machine (EVM)-compatible network, such as BNB Smart Chain or Polygon. The steps are the same, but you will need to check gas fee levels relevant to that network rather than Ethereum mainnet.
Closing Thoughts
Getting a transaction stuck in a pending state can be frustrating, but the fix is fairly straightforward once you understand how Ethereum's fee market works. By sending a replacement transaction with a higher priority fee and the same nonce, you can push the original out of the queue.
Further Reading
Disclaimer: This content is presented to you on an "as is" basis for general information and or educational purposes only, without representation or warranty of any kind. It should not be construed as financial, legal or other professional advice, nor is it intended to recommend the purchase of any specific product or service. You should seek your own advice from appropriate professional advisors. Where the content is contributed by a third party contributor, please note that those views expressed belong to the third party contributor, and do not necessarily reflect those of Binance Academy. Digital asset prices can be volatile. The value of your investment may go down or up and you may not get back the amount invested. You are solely responsible for your investment decisions and Binance Academy is not liable for any losses you may incur. For more information, see our Terms of Use, Risk Warning, and Binance Academy Terms.