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

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.

Bitcoin Video Crash Course 

Join over 94,000 students and know all you need to know about Bitcoin. One email a day for 7 days, short and educational, guaranteed.

We hate spam as much as you do. You can unsubscribe with one click.

748
Leave a Reply

avatar
 
292 Comment threads
456 Thread replies
93 Followers
 
Most reacted comment
Hottest comment thread
308 Comment authors
Steven HayJezrellSteven HayBolajiDomenique Recent comment authors
  Subscribe  
newest oldest most voted
Notify of
Jezrell
Guest
Jezrell

Withdraw processed to account 3G85t535LGP7vYomFFt3KZz3oHJy39kEkQ. Batch is https://blockchain.info/tx/c072cd772c0d7ff7bc209c1e944a5704bbd493e6a3e78269f06b91af464f67a3

the problem is i didn’t receive it on my BTC wallet address

What happen?

Domenique
Member
Member
Domenique

I don’t understand how payouts work. Or wallets or how to get either.

Steven Hay
Guest
Trusted Member
Steven Hay

Just to clarify, this “Steven” is not me, as you can see he’s using a guest account. I can’t vouch for the website linked here – be careful with random website links, guys!

Nancy
Guest
Nancy

There’s an incoming transaction in my Coinbase that has been pending for more than 24 hours. It says I will recieve my bitcoins by end of day on January 22. So far, nothing. It has 250+ confirmations and it’s still pending. This is getting frustrating. I don’t know my transaction ID but this is the address that the bitcoins was sent to.

1D2qnEF7M2p1skKAXHvvugjGyNJR32qMuC

Max
Guest
Max

Hey, my Wallet ID is 1MMpFAdUfSBFYUQXErh9q32HasGaLFvbJW and my last transaction was on 2018-01-23 16:30:45 but its still not confirmed yet.
Does anyone know how to speed this up or how i get my BTC back?
Thanks :)

Kevin
Guest
Kevin

Hello:

I sent a transaction on January 3rd, and it is still unconfirmed. I tried 3 of the transaction accelerators and it says invalid transaction and the other says transaction is not available for accelerating/ try again later. Is this unusual? When I had an unconfirmed before it at least said “in the mempool” and I eventually accelerated and received it. It was from an old bitcoin wallet, but It was synced. Any info or advice would be appreciated

Sergey
Guest
Sergey

Hello Steven, can you help me pls?

my transaction ID
f18f926ed02f0de8ed44a11e53784009af9c72dfc08285243d215a557bd48d6f

Zuka
Guest
Zuka

Hello Steven
I am waiting from 6th of January.
Please check and advise me what to do.

My transaction ID: bed165ea993ff56e2292e184de300c71712b003f2297ab05a3a29f0d2ce0ce21

Thank you

Robert L
Guest
Robert L

Hey Steven, my transaction has been unconfirmed for about a day and a half now. Was wondering if you could give me some advice.

Transaction ID: b5f2126dc38f27ca99539cd6d94731ca1e026f1cb5ad1ca39586efba4df1d427

Carlos M
Guest
Carlos M

Please help. Trezor to Coinbase transfer still shows pending for 2 days, with over 200 confirmations!

Transaction ID: 09d9bafa7241d31a4876b59c80a418a080a73a816403e44b5efe236e09c4d7e7