Why is my Bitcoin transaction unconfirmed? 6 reasons it gets stuck
“Pending” doesn't mean lost. Here's what's really happening to your transaction and what you can do about it.
How a transaction gets confirmed
When you send bitcoin, your wallet broadcasts a signed transaction to the network. Nodes check it and keep it in their mempool — a waiting room of unconfirmed transactions. Roughly every 10 minutes a miner finds a block and includes the transactions that pay the most per unit of block space. Once your transaction is in a block, it has one confirmation.
Block space is limited to about 4 million weight units (≈1 million vbytes) per block. If more transactions are waiting than fit in the next few blocks, the cheapest ones wait.
1. The fee rate is too low
This is the cause in the vast majority of cases. Miners rank transactions by fee rate (sat/vB), not by total fee or by amount sent. A transaction paying 2 sat/vB will be skipped as long as enough transactions pay 3 sat/vB or more. Some wallets — and many exchanges — choose low fees to save money.
Fix: raise the effective fee with RBF or CPFP, or use premium acceleration.
2. Fees spiked after you sent it
A fee that was fine when you sent can become uncompetitive an hour later. Fee markets jump during price swings, large exchange batches, NFT/inscription waves and token launches. Your transaction didn't change — the queue in front of it grew.
Fix: if you're not in a hurry, wait for fees to fall (often at weekends). Otherwise bump the fee or accelerate.
3. It depends on an unconfirmed parent
If you spent coins that themselves aren't confirmed yet, your transaction can't confirm before its parent. A cheap parent drags the child down with it. Our status checker warns you when this happens and shows the effective rate of the whole package.
Fix: a child with a high enough fee pays for both (that's CPFP); premium acceleration also accounts for the whole package.
4. It didn't propagate well
Occasionally a transaction reaches only a few nodes — for example when a light wallet's server is poorly connected or the wallet broadcast it while offline. Miners can't include what they never received.
Fix: a free rebroadcast sends it to multiple nodes and explorers at once.
5. Mempools dropped it
Nodes limit their mempool size (300 MB by default). When congestion is extreme, the lowest-fee transactions are evicted; transactions older than two weeks are also dropped. Explorers then report “transaction not found”, although your wallet may still show it as pending.
Fix: rebroadcast the raw transaction with the push tool once fees are lower, or — if it's gone everywhere — let your wallet forget it and send again with a better fee.
6. It's non-standard or conflicting
Rarely, a transaction breaks relay policy (for example an output below the dust limit, an unusual script, or a fee below the minimum relay fee of 1 sat/vB on most nodes), or it conflicts with another transaction spending the same coins. Then nodes refuse to relay it at all.
Fix: check what the push tool reports — the error message from each node usually names the exact problem. Conflicting transactions must be resolved by the sender.
How long will it take?
Look at your fee rate versus the next-block rate. Close to it: minutes to an hour. Half of it: likely hours. A small fraction of it: possibly days — or it may drop out of mempools. See how long a Bitcoin transaction takes for typical numbers.