Dear sisters, mothers, brothers, and peoples of this earth,
I have seen a great number of people who have had issues with their Bitcoin transactions taking a long time to confirm, or not confirming at all. Many are asking why this is and what to do. I have seen a number of answers from people who are helpful but don't seem to understand exactly what's going on.
I will attempt both a brief, and a compelete, version of the situation.
Situation
The Bitcoin blockchain has a limited capacity. There is a a lot of debate on the best way forward, and there are two pretty opposing camps. The details don't matter, but the effect is the same: the number of transactions that can happen is limited to approx 3-7 transactions per second.
Your transactions are slow because many other people are transacting. If you want to get your transaction in the chain you must pay competitive fee.
How do I pay a fee that will give me a fast confirmation?
https://bitcoinfees.21.co/ has a chart with the amount of satoshis per byte you should pay. If you know what that means check it out. If you don't know what that means read the next paragraph sister
Using Electrum, go to Tools > Preferences, and select the tick box for "Use dynamic fees". This will make Electrum give each transaction a fee based on the current fee market.
I already sent my transaction before reading this beautiful post. wat do?
If you sent the transaction to an address you do not control e.g. a market or a tumbler the best you can do is try the ViaBTC Transaction Accellerator. It may or may not work. If not, you'll just have to wait and try again with another wallet software (outside the scope of this post; if you need this PM me)
If you sent to and address you do control you can use a feature called Child Pays For Parent. That's a long way of saying, make a transaction from the address you're waiting on coins to arrive to, and pay double the fee (enough for this transaction and to add more to the older one).
If I can assist any further please let me know. I will try to check this post occasionally but feel free to DM any questions as well.
TL;DR
The number of transactions the network can handle is limited. Many people want to make transactions. In order to get your transactions confirmed quickly you must use a competitive fee. Use Electrum and choose "dynamic fees" in settings.
Postscript
If anybody has anything else to add, or any corrections, let me know.
This thread is dedicated soley to helping guide users through issues with the congested chain.
But I would like to take this comment, and any children, as a political aside to say that supporting Bitcoin Unlimited is IMO the best way to support a healther Bitcoin network. I agree that transactions needs to be more scalable (i.e. segwit) however right here, right now, we have issues we need to overcome and I don't think they'll be detrimental in the long term.