At Cointape.com you’ll quickly find out how many satoshis you need to add to have your transaction confirmed within the next block or two. There are 100 satoshis in each “bit”, so if this site says “23,220” satoshis you should add approx. 233 bits for a typical everyday transaction. Check Preev to get an estimate on how much that fee represents in your local fiat currency. This is useful in situations where you need more control over how quickly the Bitcoin network “settles” (i.e. verifies) that your transaction is valid.
Blocks vs. Minutes
You’ll see a range of colored blocky lines on Cointape’s first page displaying info on the sizes of fees that are currently attached to the transactions waiting in the mempool (the buffer of transactions waiting for confirmation). Some have only a few satoshis or less attached per byte and to the right of each number you’ll find an estimation on how many blocks and minutes those particular transactions should have to wait before being confirmed. The green entries represent transactions this site predicts will get confirmed in the next upcoming block, and as long as you include a fee in par with those ones you should also expect a rather quick confirmation (approx. 5-15 minutes on average).
At times all miners in the network are “unlucky” (when performing the guesswork involved in finding a solution to the next block) and there’s a longer delay before a block is found, but there’s not much you can do about that (that’s part of the design of the network). In any case you’ll be able to deduct the minimum fee needed for a confirmation also at times when you’re in no hurry and this way you can save a few satoshis. Remember; there are 100 satoshis in a bit, and there are one million bits in a bitcoin.
You’ll usually be fine by just following the recommendation below the blocky lines at Cointape, as it’s pretty tricky to calculate the size of a transaction before you make it (that’s preferably done by the client (wallet) you are using). If you really need it to confirm in the next possible block just double the recommended fee.
Larger Transactions (as in bytes, not BTC)
But what is this thing about “satoshis per byte” – how would I know how many bytes my transactions will require? Well, usually you don’t need to worry about that part. A transaction can grow in size if there are many inputs and/or outputs involved. There are instructions on this issue on this wiki, but it’s mainly directed towards developers of clients/wallets.
Here’s a quote from the wiki mentioned above:
“Round up the transaction size to the next thousand bytes and add a fee of 0.1 mBTC (0.0001 BTC) per thousand bytes”.
My personal favorite mobile wallet for the moment is Breadwallet (for the iPhone) and their reply to the question on how they, as developers, calculate their fee is as follows;
“Fee calculation is a quite technical topic, however if you are interested, you can see the code on github in BRWallet.m.
Our goal is to strike a balance between low fees and timely transaction confirmation by the bitcoin network.