Stuck and Failed Transactions

2026-07-28

Stuck and Failed Transactions

Few things unsettle a new user more than a transaction that hangs on "pending" for an hour, or one that fails yet still charges a fee. Both are normal parts of how blockchains work, and both are fixable or avoidable once you understand what is happening. Here is why transactions get stuck or fail, and what to do in each case.

Stuck and Failed Transactions: key points at a glance

Pending, stuck, and failed

These three words describe different states, and confusing them causes needless panic. A pending transaction has been broadcast and is waiting in line to be included — perfectly normal for a while. A stuck transaction is pending for an unusually long time because its fee is too low to be picked up. A failed transaction, by contrast, was actually processed but did not complete its intended action. Knowing which state you are in tells you whether to wait, intervene, or investigate.

Why a transaction gets stuck

A transaction is essentially bidding for space in a block. If you set a fee that is too low for current demand, validators simply prefer higher-paying transactions and yours waits, sometimes for hours. There is a second, sneakier cause: every transaction from your wallet carries a sequential number called a nonce, and they must confirm in order. If an early low-fee transaction stalls, every later one is blocked behind it, even if those later ones paid plenty.

How to unstick a transaction

Because a pending transaction is not yet final, you can replace it. The standard tool is replace-by-fee: you resubmit a transaction with the same nonce but a higher fee, and validators take the better-paying version. Wallets usually expose this as a "speed up" button. If you would rather it never execute, you send a "cancel" — a zero-value transaction to yourself using the same nonce and a higher fee, which occupies that slot instead. Either way, clearing the stuck nonce also frees everything queued behind it.

Why a transaction fails and still costs

A failed transaction feels unfair because you are still charged, but the logic is consistent: validators did real work to execute it, so they must be paid regardless of the outcome. Common causes include running out of the gas you allotted, a smart contract rejecting the action with a revert, or a swap failing because the price moved beyond your slippage tolerance. The blockchain records the attempt and consumes the gas, even though your funds otherwise stay where they were.

Reading and avoiding the error

A block explorer will usually show why a transaction failed, often with a short reason like "out of gas" or a contract error message. To avoid failures, let your wallet estimate gas rather than forcing a low limit, set a realistic slippage tolerance on volatile swaps, and be cautious with unfamiliar contracts that may revert. When something fails repeatedly, that is often the contract telling you the action cannot currently succeed, not a problem to brute-force.

The bottom line

Stuck and failed are different problems with different fixes. A stuck transaction is waiting on a fee too low for demand and is solved by speeding it up or cancelling it, remembering that the nonce order blocks everything behind it. A failed transaction already ran and could not complete, still costing gas, and is best prevented with sensible gas and slippage settings. Neither is a lost cause — both are routine, once you know the moves.

Disclaimer: This article is educational content from Bitbase Academy, provided for informational purposes only. It is not investment, trading, tax, or financial advice. Written as of July 2026; rely on the latest official information.

References

[1] MetaMask, "Speed up, cancel, or resubmit a transaction" metamask.io

[2] Blocknative, "Understanding stuck and dropped transactions" blocknative.com

Related Articles

More