Why is My Bitcoin Transaction Pending for So Long? – Bitcoin Fees for Dummies

262

If you’re reading this post I assume that like many others, you sent a bitcoin transaction and was kind of confused as to why it’s still listed as “unconfirmed” or “pending” after a few hours or so.

I mean Bitcoin transactions are supposed to be instant right?

In this post I want to try and explain in a very basic way how a Bitcoin transaction works and why the fee that you attach to each transaction has a crucial role in how long it will take the transaction to go through the network.

Here’s what happens when you send Bitcoins to someone

Whenever you send someone Bitcoins, the transaction goes through different computers running the Bitcoin protocol around the world that make sure the transaction is valid. Once the transaction is verified it then “waits” inside the Mempool (i.e. in some sort of a “limbo” state).

It’s basically waiting to be picked up by a Bitcoin miner and entered into a block of transaction on the Blockchain. Until it is picked up it’s considered an “unconfirmed transaction” or a “pending transaction”. A new block of transactions in added to the Blockchain every 10 minutes on average.

However since there are so many transactions lately due to the price increase, and a block can only hold a finite amount of transactions, not all transactions are picked instantly. So you need to wait for a certain amount of time until a miner decided to pick your transaction out of all of those sitting around in the mempool.

Once your transaction is included in the block it receives its first confirmation and it’s no longer pending. After another block of transactions is added it will get another confirmation and so on….here’s a short video explaining this:

How can you make sure your transaction will get included in the next block?

Simple. By adding a big enough mining fee to it. You see one of the ways miners get paid for their work is by collecting the fees on the different transactions. So naturally they would prefer to include the transactions with the highest fees first. If your fee is high enough – your transaction will go through faster.

How can you tell how much is the right fee?

Fees are calculated by the size of the transaction. Every transaction has a size, just like a file size. The size depends on many factors that I won’t go in to at the moment. The fastest and cheapest transaction fee is currently 60 satoshis/byte. So if, for example, your transaction is 257 bytes, you will need to pay 257*60 = 15,420 Satoshis as a transaction fee in order to be included in the next block.

So now you’re probably asking “How can I calculate my transaction size?”

You can’t, at least not without extensive knowledge of how Bitcoin works. Your wallet is supposed to do this for you. Most wallets today will either automatically add the required fee to get the transaction confirmed as soon as possible or will let you choose from a variety of fees according to the requested confirmation time (e.g. fast, medium, slow).

However, since I wouldn’t want to leave you hanging I decided to give you an overview of how the most popular wallets around handle their fees:

Coinbase – Coinbase pays the miner fees (typically 0.0003 BTC) on external transactions in order to ensure these transactions propagate throughout the bitcoin network quickly. For very small transaction amounts you may be prompted to pay the transaction / miner fee. (source)

Blockchain.info – The wallet implemented a dynamic fee structure.Dynamic fees work to detect changes in network volume and will raise or lower transaction fees accordingly. This means that the same transaction may require a higher fee during a period of network congestion, or a lower fee if sent during a period of decreased activity. If you set a custom fee a warning will display if a custom fee is thought to be unnecessarily high or dangerously low. (source)

Electrum – Has the option to set dynamic fees (similar to Blockchain.info) or set your own fee through the tools -> preference tab. (source)

electrum preferences

Greenaddress – GreenAddress is the first Bitcoin wallet to include a replace-by-fee option. With it, users can increase fees on their transactions and increase the likelihood a miner will include a transaction in a block.

Clicking on the “bump fee” tab opens a mini-menu. On top of the menu, text displays how fast the transaction is expected to confirm. The menu allowed me to bump the fee: times 1.5, times 2 or times 3.

Greenaddress bump fee

if a transaction is not expected to be mined in the first available block because the fee is too low, the mini-menu offers users the option to include a fee big enough to have the transaction included in the next two, three or six blocks. (source)

greenaddress include in block

MyCelium – Mycelium does give you some control over the fee. In Settings/Miner Fee, you can select Standard, Economic, or Priority for (I think) 0.1mBTC, 0.01mBTC, or 0.5mBTC, respectively, per mB. (source)

Bitcoin QT -Bitcoin Core will use floating fees. Based on past transaction data, floating fees approximate the fees required to get into the `m`th block from now. Bitcoin Core will cap fees. Bitcoin Core will never create transactions smaller than the current minimum relay fee. Finally, a user can set the minimum fee rate for all transactions. (source)

TREZOR – Fees will be automatically calculated for you by the myTREZOR wallet. (source)

There’s a very helpful resource created by 21.co that shows how many Satoshis/byte you’ll need to pay in order to get included in the upcoming blocks. Here’s an example of the current situation inside the Bitcoin network:

bitcoin fees

For each Satoshi/byte category you can see the number of unconfirmed transactions as opposed to the transactions that went through. For example, 15405 transactions with a fee of 11-20 Satoshis/byte went through the system in the last 3 hours as opposed to 1533 that are waiting for confirmation.

On the right hand side you can see the estimated number of block confirmation / minutes you’ll have to wait until your transaction gets included.

What happens to transaction that don’t get confirmed ever?

Basically transactions stay in “limbo” (i.e. the mempool) until they are included in a block. However, if a transaction stays inside the mempool for too long the different computers holding it (Bitcoin nodes) may just drop it from their system. In this case the transaction will be canceled.

Some wallets may try to rebroadcast an expired transaction and therefor it will stay inside the mempool for a long time until some miner decides to have pity on your soul and include it :)

VIA BTC offers a transaction accelerator service

Just recently VIABTC (one of the largest Bitcoin mining pools) started offering a new transaction accelerator service. With the Transaction Accelerator for delayed transactions, users can submit any TXID (Transaction ID) that includes a minimum 0.0001BTC/KB fee to ViaBTC. The pool will then prioritize to include the TX in the next block when possible at no extra charge. A maximum of 100 TXs submitted can be accelerated every hour.

Important: Transactions are received on a first come first served basis so try to submit yours at the beginning of every hour to get into the queue before it fills up.

So I hope this clears things up a bit. Next time before sending a Bitcoin transaction make sure to add the appropriate fee in accordance to the wallet you are using.

If you have any more questions or insights about Bitcoin fees feel free to leave them in the comment section below.

Ofir Beigel

Owner at 99 Coins ltd.
Blogger and owner of 99Bitcoins. I've been dealing with Bitcoin since the beginning of 2013 and it taught me a lesson in finance that I couldn't get anywhere else on the planet. I'm not a techie, I don't understand "Hashes" and "Protocols", I designed this website with people like myself in mind. My expertise is online marketing and I've dedicated a large portion of 99Bitcoins to Bitcoin marketing.

262 Comments

    • Zsofia - 99Bitcoins support on

      Hi Mumu, this transaction is indeed pending for a while. You can use ViaBTC for an extra fee to include it in the next block.

    • Zsofia - 99Bitcoins support on

      Hi Erland, it can even take more than a week if your fee is just too low. If no miner picks your transaction it will evenetually be cancelled. You can use ViaBTC to speed up the transaction for an extra fee.

    • Niraj p ranka on

      My transaction is unconfirmed so many time in saw in blockchain info. About 9 days unconfirmed so plz tell me sir it’s Return or unconfirmed… My btcaddress(3P26c4zy6CovEYq7rkWv71zdEoN5QjVUwW) plz sir tell me

      • Zsofia - 99Bitcoins support on

        Hi Niraj, your transaction could be pending because of the low fee. Eventually if no miner picks this up, it will be cancelled and will be returned to the wallet.

    • Ofir Beigel on

      I suggest you use the transaction accelerator of viabtc.com at the beginning of every hour as written in the article.

  1. I used perenosi.com to confirm zero-fee (yes 0.00000BTC) transaction, spent a day but Confirmed!!

  2. Can you please assist.
    About 2 weeks back I sent bitcoins from Bitcoin maker App and they were sent successfully. However, I haven’t received them on my wallet addresses on Luno. Please help me get the transaction id and/or track where my bitcoins are stuck.

    Wallet address:

    12au4MDVRajC6hf7frKre8RGgfzJ7dXCFj

    1BrZECPz4KfcKbsboADyTqXaAckRWd68sH

    • Zsofia - 99Bitcoins support on

      Hi TXK, you can check the Bitcoin transaction on blockchain.info based on the transaction ID. I do not see however any transactions pending on these accounts at the moment. I suggest you to follow up with your wallet provider, they should be able to help.

      • Hi thanks for the response, I did make a follow up with Luno support. They requested a Transaction id of which I do not have, Bitcoin maker app didn’t provide any transaction id. So I think I have lost all my transactions just like that, it’s sad.

        • Zsofia - 99Bitcoins support on

          I am sorry to hear that. Indeed you need a transaction ID to be able to track the transaction on the blockchain. If you are ever in doubt next time I suggest you run the Bitcoin Scam Test Tool and draw your own conclusion if a site is legit or not. You can find it here: https://99bitcoins.com/bitcoin-scam-test/

    • Zsofia - 99Bitcoins support on

      Hi Ben, this trascation is pending because of the low fee. Eventually it will go through you just need to wait a little longer. Please read through the article to make sure your fee is high enough next time.

  3. Today, I sent some LiteCoin over from my Exodus wallet to my CoinBase account. I’m still new to crypto currency so I was unaware that I may have sent too low of a miners fee. Although, it is somewhat of a relatively low transaction, I still want my LiteCoin to go to my CoinBase account. I’m unsure how to go about either retrieving my LiteCoin back to my Exodus or having the transaction complete to my CoinBase account, which the latter I’d prefer.

    Here is my transaction. Thank you

    https://live.blockcypher.com/ltc/tx/be4cec8441b5e94c6cef6764e61c74e28dc405a96899c5867c1afdac693256fb/

    • Zsofia - 99Bitcoins support on

      Hi John, this transaction is pending because of the low fee, it will probably go through eventually, you just need to wait. Please read through the article to make sure the fees is high enough next time.

Leave A Reply