Pending Ethereum transactions and fees

How do I know if my transaction is pending?

  1. From the app's home screen, tap on the wallet you made the transaction from (eg. My ETH Wallet). This will bring up that wallet's transaction history.

  2. Tap on the transaction you want more information for.

  3. Note the transaction status (eg. Pending, Confirmed).

  4. Double-check the transaction status by tapping "View transaction on the block explorer." This will take you to etherscan.io. Note the status of the transaction in the block explorer. For example, the following transaction's status is 'Pending' and the estimated confirmation duration is greater than 1 hour:

Why is my Ethereum transaction pending?

Transactions in Ethereum will be pending (not confirmed) when either (1) you haven't paid a high enough transaction fee, or (2) other previously submitted transactions from the same wallet are pending.

Regarding (1) fees, the Ethereum network has limited capacity to process transactions. In order to ensure fair access to that limited space, Ethereum adopts a market solution. This means that transactions that include higher fees are the first ones to be processed by miners. If the fee you attached to your submitted transaction is too low and network congestion remains high, there's a chance your transaction will stay pending for hours or even days. If you're ok with waiting, in most cases your transaction will eventually go through. However, if you're in a hurry to have your transaction confirmed, you may need to take action. There's also a small possibility that your transaction will stay pending indefinitely. In that case, you'll need to resubmit the transaction.

As for (2) transaction sequence, Ethereum is designed such that transactions can only be processed in the order they were submitted. This means that, as long as a previously submitted transaction remains pending (for whatever reason), even if you submit another transaction with a higher fee, that transaction can't go through until your previously submitted transaction is successfully processed.

How do I know what the right fee is for making an Ethereum transaction?

The Bitcoin.com Wallet constantly monitors the market rate for 'gas' (which is how fees are measured in Ethereum) to arrive at the optimal gas price (and therefore fee) for your transaction. We provide you with three convenient preset modes:

Eco → means you'll pay a lower fee, but your transaction will take longer. Estimated confirmation time: 5-15 minutes.*

Fast → strikes the optimal balance between cost and speed. Estimated confirmation time: less than 2 minutes.*

Fastest → optimizes for speed over cost. Estimated confirmation time: less than 30 seconds.*

*In all cases, estimates are for normal network congestion conditions. When there's a sudden demand for block space, the time it takes for miners to get to your transaction may change significantly.

In addition to the above three preset modes, you also have the option to manually customize your 'gas price' for each transaction. Note that, again, whether your transaction is picked up by miners sooner rather than later depends on the gas price you set and the current market rate for gas. You can check gas rates using a tool like https://ethgasstation.info/, use that information to determine your optimal gas price, then choose the exact gas price you want for your transaction. Here's how to set a customized gas price in the wallet:

  1. On the "Enter send amount" screen, tap on the "Network fee" icon at the bottom-left

  2. Select "Advanced fee options." You'll then be prompted to enter your precise desired gas price for your transaction.

What should I do if my transaction is pending for too long?

If your transaction status is listed as pending for significantly longer than the above-described estimates, the most likely explanation is that the market rate for gas increased suddenly at the moment you submitted the transaction. This means that the fee you attached to your transaction is no longer sufficient to attract miners. Similarly, if you submitted a transaction with a customs fee that was too low given the current market rate, your transaction will not be processed. Either way, when your transaction is pending, you have three options:

  1. Wait longer. If you chose one of the three presets, your transaction most likely just needs a bit longer to confirm. In most cases, your transaction will confirm within a few hours at most. If you're in a rush, or if after a day, your transaction still hasn't confirmed, you can:

  2. Resubmit the same transaction with a higher fee, or:

  3. Cancel the current transaction.

How to override or cancel a pending Ethereum transaction

If your transaction is stuck on 'pending,' you can manually resubmit that transaction to the Ethereum network. When you do so, you're effectively replacing your previously submitted transaction with a new transaction. For your new transaction, you're free to change the transaction details however you'd like. You can set a new gas price, change the send amount, and change who you're sending to. While it's technically impossible to initiate a transaction cancellation, if you resubmit a transaction and change the send amount to 0.00000001 ETH, you're achieving effectively the same thing as a transaction cancelation.

As mentioned, when you resubmit a transaction, what you're actually doing is replacing your previously submitted transaction. Assuming the gas price for your new transaction is high enough - and assuming the transaction you're resubmitting is the 'first in line for your wallet - the transaction will get picked up by a miner and the transaction it replaces will disappear forever.

IMPORTANT: transactions can only be processed in the order they were submitted. This means that no matter what gas price you choose for subsequent transactions, you'll have to wait until your previously submitted transactions are first picked up and processed by miners.

Here's the process for overriding and/or canceling pending Ethereum transactions:

  1. From the app's home screen, tap on the wallet for the transaction you want to resubmit (eg. My ETH Wallet). This will bring up that wallet's transaction history.

  2. Tap on the transaction you want to resubmit or cancel.

  3. Tap "View transaction on the block explorer." This will take you to etherscan.io, where you'll see the complete details for your transaction.

  4. Tap on "Click to see more."

5. Take note of the 'nonce.'

The nonce value denotes the position of this transaction in the sequential order of transactions submitted by your wallet. In the above example, the 'nonce' is 1. The previously submitted transaction for this wallet would have a nonce of 0. The next transaction submitted by this wallet will be given a nonce of 2, and so on. Remember, transactions can only be processed in the order they were submitted, so if you have a pending transaction with a lower nonce, only when that transaction is confirmed will the network consider your next transaction.

6. Next, in the app, initiate a new Ethereum transaction.

7. Tap on "Custom Nonce."

8. Enter the nonce value of the transaction you want to resubmit.

9. Resubmit the transaction, but this time increase the gas price. Be sure to set your new gas price so that, given the current market rate, your transaction will confirm within a reasonable amount of time. You can check gas rates using https://ethgasstation.info/. If you'd like to "cancel" the transaction, the easiest way to do so is to set the send amount to 0.00000001 ETH and increase the gas price.

How to set a customized gas price

  1. On the "Enter send amount" screen, tap on the "Network fee" icon at the bottom-left

  2. Select "Advanced fee options." You'll then be prompted to enter your precise desired gas price for your transaction.

Did this answer your question?