You sent crypto, and then… nothing. The wallet shows “pending,” the block explorer shows zero confirmations, and the minutes turn into hours. Watching a transaction hang in limbo is one of the most stressful moments in crypto — especially when the amount matters.
The good news: a stuck transaction is almost never lost money. In this guide, you’ll learn why crypto transactions get stuck in the first place, how to speed one up, how to cancel one on networks that support it, and how the fix differs between Bitcoin and EVM chains like Ethereum. You’ll also learn when the smartest move is simply to wait.
id=”why-stuck”>Why your transaction is stuck
Before you fix anything, it helps to understand what “pending” actually means. Every blockchain transaction goes through the same life cycle: you sign it, your wallet broadcasts it to the network, it waits in the mempool (the queue of unconfirmed transactions), miners or validators pick it up and include it in a block, and only then is it confirmed.
A transaction gets stuck when it sits in the mempool too long without being picked up. Nine times out of ten, the cause is the fee you attached. Miners and validators are economically motivated: they pick the transactions that pay the most per byte of space. If you set a low fee while the network is busy, your transaction gets pushed to the back of the line — and can stay there for hours or even days.
Other common causes include network congestion (a busy NFT mint, a market panic, or a spam event can flood the mempool), wallet defaults (some wallets suggest conservative fees), and nonce gaps on EVM chains (if an earlier transaction from your wallet is stuck, everything after it queues up behind it). On Bitcoin, a transaction signed without replace-by-fee (RBF) enabled is harder to rescue, which is why prevention matters.
How do you know it’s actually stuck rather than just slow? Check the transaction hash on a block explorer. If the explorer can’t find it, it was never broadcast — restart your wallet and resend. If the explorer shows it as unconfirmed with zero confirmations, it’s genuinely pending. Most explorers will also show the fee rate you paid and the mempool’s current fee bands, so you can see exactly where you stand in line.
One more scenario: the transaction might be pending inside your wallet app rather than on the network. Some wallets show a transaction as “pending” while they’re still trying to broadcast it, often because of a connectivity glitch. Closing and reopening the app, or checking your internet connection, fixes this surprisingly often.
How to speed up a pending transaction
Speeding up a transaction means convincing the network to confirm it sooner, and the mechanism is simple: pay a higher fee. Both Bitcoin and EVM chains support this, though the method differs.
On Ethereum and other EVM chains, most wallets — MetaMask, Rabbi-like browser wallets, Trust Wallet — offer a “Speed Up” button right on the pending transaction. What the wallet does behind the scenes is broadcast a replacement transaction: identical in every way (same recipient, same amount, same nonce) but with a higher gas price. The network sees two versions and keeps the one that pays more, dropping the other. This works because EVM chains follow a “same sender + same nonce” replacement rule — the newer, higher-fee transaction replaces the older one.
To use speed-up effectively, don’t just add a tiny bump. Check a gas tracker first (type the address of a well-known gas tracker into your browser yourself — never click a link from a stranger) and set the new gas price at or slightly above the current “fast” rate. A timid bump that still leaves you below the clearing price accomplishes nothing and just wastes gas on the replacement.
On Bitcoin, the equivalent is replace-by-fee (RBF). If your wallet enabled RBF when you created the transaction (most modern wallets like Electrum and Sparrow do this by default), you can broadcast a replacement with a higher fee rate. Look for a “bump fee” or “increase fee” option. If RBF wasn’t enabled at send time, RBF won’t work — which is where child-pays-for-parent comes in (more on that below).
Timing matters too. Network congestion is cyclical. If your transaction isn’t urgent, speeding up during a quiet period — early mornings and weekends in most time zones — often costs far less. Many wallets let you preview the fee before you commit to the replacement, so check twice.
A practical warning: every replacement costs a fee, and the replacement fee can only go up. Speeding up three times at rising gas prices is a great way to pay more than the transfer was worth. Do your fee homework before you broadcast the replacement, not after.
How to cancel a pending transaction
Canceling sounds counterintuitive — how do you cancel something that’s already “sent”? On EVM chains, you use the same replacement trick as speeding up, but with a twist: instead of replacing with a higher-fee version of the original, you replace it with a zero-value transaction to yourself that carries a higher gas price.
Here’s how it works in practice. Most wallets offer a “Cancel” button on pending transactions. The wallet creates a new transaction with the same nonce as the stuck one, sends 0 ETH (or 0 of the native token) to your own address, and sets a competitive gas price. Once miners confirm the cancellation transaction, the original is invalidated — a nonce can only be used once, so the stuck transaction is dropped from the mempool forever.
The catch: cancellation is not free. You still pay gas for the cancellation transaction, and you need to outbid the stuck transaction, so cancellation typically costs as much as a normal transfer. It’s worth it when the stuck transaction is dangerous (a swap you no longer want, a transfer to the wrong address you caught in time) or when it’s blocking your queue.
On Bitcoin, true cancellation isn’t really a thing. There’s no nonce system, so you can’t invalidate a transaction by replacing it with a self-transfer. Your options on Bitcoin are: RBF to a new recipient (effectively “redirecting” rather than canceling), CPFP to get it confirmed faster, or waiting for the mempool to drop it. Some nodes evict transactions after roughly two weeks if they remain unconfirmed, at which point the funds become spendable again — but two weeks is a long time to wait, and not every node follows the same policy.
One more thing to know: cancellation only works before the transaction confirms. Once it’s in a block, no wallet button in the world can reverse it. If the block explorer shows even one confirmation, stop trying to cancel and start thinking about the next steps (contacting the recipient, and so on).
Child-pays-for-parent, explained
Child-pays-for-parent (CPFP) is the Bitcoin-specific rescue technique for transactions that weren’t sent with RBF enabled. The idea is clever: miners evaluate transactions by the combined fee rate of a parent transaction and any child transaction that spends its outputs. So if your stuck parent paid a low fee, you create a child transaction that spends the parent’s unconfirmed change output — and you attach a very high fee to the child.
Miners see the package: to claim the child’s juicy fee, they must also confirm the parent. The combined fee rate becomes attractive, and both transactions get mined together. In practice, this means spending your own unconfirmed change back to yourself at a high fee rate. Wallets like Electrum and Sparrow support CPFP with a few clicks.
CPFP has real limitations. It only works if there’s a change output you control — if you sent your entire balance with no change, there’s nothing to build the child on. It also costs money: the child fee has to be high enough to compensate for the parent’s low fee, so you’re effectively paying for two transactions’ worth of block space. And CPFP is primarily a Bitcoin technique; EVM chains don’t have UTXOs, so the concept doesn’t map directly (on EVM chains, you’d use the nonce-based cancel instead).
When should you use CPFP instead of RBF? Use RBF first whenever it’s available — it’s simpler and cheaper. CPFP is your fallback for the common situation: you sent from an exchange or a wallet that didn’t enable RBF, and the transaction is now crawling. Knowing both techniques means you’re never truly stuck without options.
Bitcoin vs EVM chains: what works where
The rescue options look different depending on which chain your transaction is stuck on, because Bitcoin and EVM chains handle pending transactions with fundamentally different machinery. Here’s how to think about it.
On Bitcoin, transactions live in the mempool as independent objects. If you enabled replace-by-fee, you can broadcast a higher-fee replacement directly. If not, CPFP lets you “drag” the parent through by attaching a high-fee child. If neither is available — no RBF, no change output — your remaining option is patience: many nodes drop transactions after about two weeks, after which you can respend the coins. Bitcoin has no native “cancel” button, and no nonce queue, so one stuck transaction never blocks your others.
On EVM chains (Ethereum, Arbitrum, Base, Polygon, and friends), everything revolves around the nonce: a counter that must increase by exactly one for each transaction from your address. This creates both the problem and the solution. The problem: one stuck low-fee transaction blocks every transaction after it — your whole queue freezes until the first one clears. The solution: replacement is built into the protocol. Speed up (same nonce, higher gas) or cancel (same nonce, 0-value self-transfer, higher gas) always works, as long as the transaction is still unconfirmed.
Layer 2 chains add a wrinkle: fees there are usually tiny, so a “stuck” L2 transaction is often caused by something other than fees — like the sequencer being temporarily down, or a wallet glitch. If your Arbitrum or Base transaction has been pending for hours despite a normal fee, check the network’s status page (type the official status URL yourself) before paying for a replacement that won’t help.
For a deeper dive on reading network congestion before you send, our explainer on what a mempool is and how pending transactions work covers the fee-band strategy in detail, and our guide to sending Bitcoin with low fees shows how to set fees right the first time so you rarely need these rescue techniques.
When to just wait it out
Not every stuck transaction needs a rescue. Sometimes the cheapest, calmest fix is to do nothing — but “wait” is only the right call in specific situations, so let’s be precise about when.
Wait when the transaction isn’t time-sensitive and the fee you paid is reasonable. Mempools clear in waves: a congestion spike that pushed fees to 100 sat/vB on Friday night often settles back to 5 sat/vB by Sunday morning. If your transaction paid a mid-range fee, it will very likely confirm during the next quiet window without you spending another cent. Block explorers show mempool depth charts — if the queue is visibly draining, patience is free.
Wait when the fix costs more than the problem. If you’re moving $10 and the speed-up would cost $8 in gas, that’s a bad trade. This comes up most on Ethereum mainnet during congestion, where a single replacement can cost more than a small transfer is worth.
Don’t wait when the transaction is blocking your queue. On EVM chains, one stuck transaction freezes every transaction behind it, including unrelated ones. If you need your wallet functional — to move funds, interact with a dapp, or respond to something time-sensitive — cancel or speed up promptly rather than letting the queue sit.
Don’t wait when the transaction itself is wrong. If you sent to the wrong address, the wrong amount, or a malicious contract you spotted too late, every minute of “pending” is a minute you could be canceling. Act fast: once it confirms, there’s no undo.
And don’t wait indefinitely on Bitcoin without a plan. If a transaction sits unconfirmed for many days, check whether nodes are still relaying it. After roughly two weeks, many nodes evict it and the coins become spendable again — but until you verify the eviction (by seeing the funds available in your wallet), don’t assume anything. Some wallets need a rescan to recognize that the coins are free again.
| Option | How it works | Best for | Cost | Works on |
|---|---|---|---|---|
| Speed up | Replace with same-nonce (EVM) or RBF (Bitcoin) transaction at a higher fee | Getting a legit transaction confirmed sooner | One extra transaction fee | EVM chains, Bitcoin (RBF) |
| Cancel | Replace with 0-value self-transfer at the same nonce, higher fee | Killing a wrong or unwanted transaction before it confirms | One extra transaction fee | EVM chains |
| Child-pays-for-parent | Spend the stuck transaction’s change output at a high fee so miners confirm both | Bitcoin transactions sent without RBF | Child transaction fee (often high) | Bitcoin |
| Wait it out | Do nothing; let congestion clear or the mempool evict the transaction | Non-urgent transfers with reasonable fees | Free | All chains |
FAQs
The Bottom Line
A pending transaction feels alarming, but it’s a solvable, well-understood problem: in almost every case, the fee was too low for current conditions. On EVM chains, speed up or cancel through your wallet’s built-in replacement flow; on Bitcoin, use RBF when available and CPFP when it isn’t; and when nothing is urgent, waiting for congestion to clear costs nothing. The one thing you should never do is hand your seed phrase to anyone promising to fix it — the real fix always happens inside your own wallet.
This guide is for education only — not financial advice.


1 Comment
Pingback: How to Set Up Lightning Wallet: 7 Steps (2026)