The message is the medium

Set Your Transaction Fees Like A Baws

Check the bottom two lines and the text below that for a quick look at how many satoshis you should add to your transaction to get it confirmed quickly.

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.

The fee calculation is currently based on the minimum fee requirements for eligius pool for a 225 byte tx. We take the fee-per-kb for such a tx and apply that to whatever size the tx happens to be. Additionally, when spending an unconfirmed transaction that you recently received, we add the size of that transaction to the size of the transaction being made when calculating the total fee in order to trigger the child-pays-for-parent fee policy followed by eligius pool and some others. This helps prevents a low or no fee transaction you receive from preventing your own sends from confirming.”
Check a rundown of a few wallets that I can recommend here. Good luck with your fee calculations. Or just trust your wallets code.