UnlockPool Bitcoin Learning Center
Stuck Bitcoin Transaction
A Bitcoin payment can appear stuck when it has been broadcast but has not yet been included in a block. An unconfirmed transaction may be waiting in mempools for block inclusion. In Bitcoin Core, block-template transaction selection considers expected mining feerate, including related transactions in a package.
Is Your Bitcoin Transaction Really Stuck?
If a wallet or exchange shows “pending,” first obtain the TXID, if one has been provided, and inspect that transaction independently. For the meaning of the provider’s account status, use that provider’s own documentation or support.
Start by separating an on-chain transaction from an account-service update. If you have a transaction ID, or TXID, you can inspect whether the transaction is known to an explorer and whether it has confirmations. If there is no TXID, the sender may not have broadcast a transaction yet, or may need to provide it.
Why a Bitcoin Transaction Can Stay Unconfirmed
Bitcoin Core orders mempool transactions for block-template construction by expected mining feerate, which can account for related transactions as a set. Total fee alone is therefore not enough to describe competitiveness: compare fee with virtual size while also considering unconfirmed parents or children.
A transaction can depend on an earlier unconfirmed transaction, conflict with another transaction under local mempool policy, or be absent from the particular node or service you are checking. Fee estimates are approximate and do not guarantee a confirmation time.
Check the TXID and On-Chain Status First
Copy the complete TXID from the sending wallet, exchange withdrawal history, or merchant receipt. Look it up with UnlockPool’s Bitcoin Transaction Checker at /bitcoin-transaction-checker. Check the transaction’s confirmation status, fees, inputs, and outputs. Use the input data to investigate whether a parent transaction is unconfirmed where the available transaction data provides enough information to do so.
A transaction with one or more confirmations has been included in a block. RBF concerns replacement of unconfirmed transactions in node mempools, so a transaction already included in a block is no longer a mempool replacement candidate. A transaction missing from one service's results is not, by itself, conclusive: Bitcoin Core's transaction lookup is node-local by default and depends on that node's mempool or indexing configuration.
Compare the Fee Rate with Current Mempool Conditions
Compare the transaction’s fee rate with fee estimates for the confirmation target you need. UnlockPool’s Bitcoin Fee Estimator at /bitcoin-fee-estimator and Bitcoin Mempool Tracker at /bitcoin-mempool provide context for the fee market without treating any one node’s mempool as the network’s definitive view.
Fee estimates are approximate estimates, not confirmation guarantees. They may change as fee-estimation data and local mempool conditions change.
Check for Unconfirmed Parent Transactions
Bitcoin transactions can spend outputs created by earlier unconfirmed transactions. Bitcoin Core recognizes parent/child relationships among unconfirmed transactions and can evaluate related transaction sets for mining selection.
Inspect the transaction inputs to identify the outputs being spent and any relevant unconfirmed parent transaction. Rebroadcasting an identical transaction does not create a new independent payment. Constructing another transaction that spends the same inputs can conflict with the original and is subject to the receiving node’s mempool policy.
When Replace-by-Fee (RBF) Can Help
RBF may allow an unconfirmed transaction to be replaced by a conflicting transaction, but acceptance depends on the receiving node’s replacement policy and fee-related conditions; simply paying more is not by itself sufficient. If the sending wallet supports fee bumping, use its documented replacement flow.
Under BIP 125’s opt-in policy, a replacement needed at least the originals’ fees plus sufficient additional relay fee and could not introduce unrelated unconfirmed inputs. Current Bitcoin Core replacement acceptance uses updated mempool policy, including requiring the resulting mempool feerate diagram to be strictly better. RBF acceptance is a node mempool and relay policy, not a consensus rule; wallet users should rely on their wallet’s supported fee-bump flow.
When Child-Pays-for-Parent (CPFP) May Apply
Child-Pays-for-Parent, or CPFP, uses a child transaction that spends an output from an unconfirmed parent. Bitcoin Core's transaction selection can consider a transaction together with its unconfirmed ancestors when calculating mining feerate. A sufficiently high-fee child can therefore improve the competitiveness of the related package. Actual acceptance and mining behavior remain subject to node policy and miner transaction selection.
A CPFP attempt requires the ability to create and sign a child transaction that spends an output from the unconfirmed transaction. The party attempting CPFP therefore needs the spending authority required for that output and must be able to construct and sign the child transaction.
Can You Cancel a Pending Bitcoin Transaction?
RBF concerns replacement of unconfirmed transactions in node mempools; once a transaction is in a block, it is no longer a mempool replacement candidate. For an unconfirmed transaction, a sender who can construct and sign a policy-accepted replacement may attempt to replace it with a transaction paying a higher fee and directing value to an address they control. This is a replacement attempt, not a protocol cancellation command.
There is a timing risk: the original may confirm before a replacement reaches miners, and different nodes may receive or relay transactions differently. Do not assume a cancellation succeeded until the replacement has confirmed. If the transaction was sent from an exchange, only that exchange can determine whether it can alter or cancel its own withdrawal request.
When a Wallet or Exchange Still Shows Pending
A wallet interface can show a local status that does not by itself establish the transaction state seen by every Bitcoin node. Verify the TXID independently. If the wallet display and the on-chain result appear to disagree, use the wallet’s own documentation or support before taking recovery actions. Do not restore or reinstall a wallet unless you have securely verified the recovery material and understand the consequences.
If an exchange shows “pending,” check whether it provides a TXID and compare that TXID with the on-chain state. If there is no TXID, or the account status does not match the on-chain result, use the exchange’s own transaction history, documentation, or support.
Monitor a Stuck Transaction with UnlockPool
Use the TXID in UnlockPool’s Bitcoin Transaction Checker at /bitcoin-transaction-checker to inspect confirmation status, fees, inputs, outputs, and block details. Use the Bitcoin Mempool Tracker at /bitcoin-mempool for the local mempool view available to UnlockPool’s infrastructure, and the Bitcoin Fee Estimator at /bitcoin-fee-estimator for current fee estimates shown with block and mempool information. These tools provide context; they do not guarantee confirmation in a particular block.
Monitor for a confirmed block rather than relying only on a wallet notification. If you are deciding whether to wait or use a fee-bumping method, review the transaction’s replaceability, its unconfirmed parents, and which outputs you control. For a broader explanation of confirmation timing, see /learn/bitcoin-confirmation-time.
Frequently Asked Questions
How long can a Bitcoin transaction be stuck?
There is no fixed confirmation time for an unconfirmed transaction. It may confirm in a later block or remain unconfirmed while its fee and transaction relationships affect its competitiveness for block inclusion. Bitcoin Core also has configurable node-local mempool expiry, so mempool retention is not a permanent network-wide transaction status.
How do I check whether my Bitcoin transaction is really stuck?
Ask for the TXID and use it to inspect the transaction independently. If no TXID has been provided, ask the sender or service for one; without it, you cannot look up that specific on-chain transaction by transaction ID.
Why is my Bitcoin transaction taking so long?
A common reason is that its effective fee rate is not competitive under current mempool and mining conditions. A transaction can also be affected by an unconfirmed parent or by local mempool policy. Compare the transaction’s fee information with current fee estimates and inspect its inputs for dependencies.
Can I cancel a pending Bitcoin transaction?
RBF is a mempool replacement mechanism for unconfirmed transactions. A sender who can construct and sign a policy-accepted replacement may attempt to replace the original with a higher-fee transaction directing value to an address they control. This is a replacement attempt rather than a protocol cancellation command, and acceptance or confirmation is not guaranteed.
Can Replace-by-Fee help a stuck Bitcoin transaction?
RBF may help while a transaction remains unconfirmed and the sender can construct and sign a replacement. BIP 125 describes opt-in replacement policy, while current acceptance depends on node mempool policy and the replacement’s fee conditions. Use the fee-bump workflow supported by the sending wallet; replacement does not guarantee a particular confirmation time.
When can CPFP help an unconfirmed Bitcoin transaction?
A CPFP attempt requires the ability to create and sign a child transaction spending an output from the unconfirmed transaction. Bitcoin Core's transaction selection can consider a transaction together with its unconfirmed ancestors when calculating mining feerate, so a sufficiently high-fee child can improve the competitiveness of the related package. Acceptance and mining behavior remain subject to policy and miner transaction selection.
What if my transaction is not visible in the mempool?
Verify that the TXID was copied correctly. A transaction missing from one service's results is not by itself conclusive because Bitcoin Core's default transaction lookup is node-local and depends on that node's mempool or indexing configuration. If no transaction can be located, check with the sender or the service that created the payment.
Why can a wallet or exchange still show pending?
When a wallet or exchange shows “pending,” first check whether a TXID has been provided and verify that transaction independently. For the meaning of the provider’s account status, use the provider’s documentation or support.
Summary
A stuck Bitcoin transaction is best handled by verifying its TXID and confirmation state first, then evaluating its fee rate, dependencies, and available controls. Waiting may be appropriate, while RBF or CPFP can be practical in the right circumstances.
Explore Bitcoin with UnlockPool
Primary Technical References
Technical statements were reviewed against Bitcoin Core, Bitcoin Improvement Proposals, and first-party UnlockPool product pages.
- Bitcoin Core chain parameters
- Bitcoin Core raw transaction RPC
- Bitcoin Core fee estimation RPC
- Bitcoin Core mempool terminology
- BIP 141 - Segregated Witness
- BIP 125 - Replace-by-Fee
- Bitcoin Core 31.0 release notes
- UnlockPool Bitcoin Transaction Checker
- UnlockPool Bitcoin Block Explorer
- Bitcoin Core raw transaction creation and signing
- Bitcoin Core transaction submission and mempool acceptance RPC
- Bitcoin Core 0.13.0 CPFP mining selection
- Bitcoin Core mempool expiry configuration
- UnlockPool Bitcoin Mempool Tracker
- UnlockPool Bitcoin Fee Estimator