Hello? How do I get my bitcoins confirmed? And what do I do when a transaction is stuck?
When traffic jams are on the blockchain again: how do you calculate the fees correctly? And what do you do when a transaction is stuck. We try to explain the most important questions how to help yourself when the Mempool is full.
Fees? Bitcoin is not for nothing?
Theoretically yes, practical no. You can send transactions without fees if they exceed the minimum size for Dust. Transactions, including a fee, fall below a certain threshold (a little over 5.000 Satoshi or 0.00005 Bitcoin) are not forwarded by the other nodes and do not come into the blocks. However, miners usually do not accept any feeless transactions. Why should you too?
However, there is a small “priority space” in each block, in which transactions sometimes accommodate without fees. This works properly when the blocks are empty, but very bad when they are full. So it was still possible to send free transactions one to 1.5 years ago, while today you have to expect that they will never arrive.
With the latest version of the client, Core 0.12, have to be made even more difficult to make transactions. So nodes can clean up their mempool and throw out the transactions with the low fees, and miners can reduce their priority space. This makes it almost impossible to get a transaction without fees in a reasonable period of time, since they are effectively deleted from the network (which, as we see later, it also has advantages).
How do I know how high the correct fees are and how do I set them?
The calculation of the fees is confusing at first glance and logical to the second. The amount of the fees does not depend on the amount of the amount sent, but on the «size» of the transaction in kilobyte. We remember: Every Bitcoin transaction is permanently saved in the blockchain, i.e. on thousands of computers around the world. Therefore, you pay for the space that a transaction needs. In common, it can happen that a transaction over 100.000 Bitcoin is only 0.2 kb in size, while a transaction over 0.0450 Bitcoin can be 16 kilobytes.
The Bitcoin client has a somewhat inaccurate automatism to calculate the fee. You can assess them more precisely if you are at Bitcoinfees.21.Co looks at how many Satoshi you have to pay per byte to quickly find a place in the blocks, then convert this into Bitcoin per kilobyte (z. B.: 50 Satoshi / byte = 0.0005 kilobyte) and then set this in the client. Most other wallets, such as electrum, should automatically calculate the fees. For some, like blockchain.Info, you can even set whether you want to send in a hurry or economical. If your wallet does not do this, but sends transactions with much too low fees, it is time to download an update – or change the wallet.
Who of Bitcoin.de over transends, has a big advantage: because the marketplace bundles transactions. By contributing a small of their own fee, each participant in the transaction, the bitcoins come smoothly into the next block even in very overloaded times.
How do I know how «big» my transaction is?
Most of the time you only know when you send the transaction. I have z. B. A transaction with electrum recently formed, for which the wallet – correctly – then requested a horrendous fee of 0.015 Bitcoin (that’s more than 5 euros!))). I didn’t send them then. However, if you put together a transaction with a coin controll in the client, you can make sure that it is as «small» as possible. But that will be a bit complicated.
First you should know what a transaction is made of. The two most important components are input and output. Whenever I receive bitcoins on an address, my wallet gets an input. If I receive bitcoins with the same address twice, I have two inputs. When my wallet then builds a transaction, it takes the inputs that are most practical and forms the corresponding outputs from it.
Let us imagine that we pay 6.50 euros from the wallet at a cash register. We take about two coins with two euros each, one coin with one euro, two coins with fifty cents, two with twenty and one with ten. That would be 8 inputs. If, on the other hand, I pay with a 10 euro note is an input and I get 3.50 euros back as an change.
Due to important cryptographic details, the inputs are by far the “largest” components of a transaction. Therefore, a transaction that, as in our example, takes seven inputs, needs a lot more space than a transaction that manages with an input – and accordingly more fees. My «huge» transaction in Electrum consisted of hundreds of tiny inputs and therefore rightly needed huge fees.
How can I save a transaction when it is stuck?
That is now getting tricky. I am not aware of any wallet that can do that, which is why you have to «free» the transaction. For future versions it is planned to be replaced by RBF, but this is not yet ready for operation and can currently also be incomprehensible to the miners. Therefore, I present two other variants that do not always work, but under some circumstances: Child Pays-for-Parent and a double spent. Both methods can work, but there is no guarantee. However, it should be worth a try.
Child Pays for Parent (CPFP)
The prerequisite for this is that a change is part of a transaction. We remember: If we as an input take a ten-euro license to pay 6.50 euros, we will receive an Output of 3.50 euros. This change goes back to one of our addresses as an input and is immediately displayed in the client as a credit (or. not debited from the balance sheet at all). In the client you can set that you can spend the change before confirmation. Unfortunately, this does not work in some other wallets, which is why CPFP does not work.
The trick is now: if a transaction hangs because the fees are so low that the miners simply do not want to add them to blocks, then we make them more attractive. To do this, we take the change and send it to us again. But this time with an opulent fee. If the miners want to catch this fee, they must also include the previous transaction in a block. This would solve the problem.
However, CPFP is not possible if the actual transaction does not include any change. It is also problematic if the previous transaction has not even entered the Mempool due to a lack of fees or not even entered the Mempool due to a lack of fees. was thrown out of this. Then the other nodes do not accept the second transaction as far as I know because they think that there is no credit at all.
Double donation
In itself you should never spend a double. But there are situations in which it may be necessary. For example, if you have made a transaction that was debited by your own wallet, but does not make it into the blocks or into the Mempool. If a transaction is in all other nodes, a double spend shouldn’t really work or. be problematic. But if the transaction appears in your own client, but for example with blockchain.Info is not recognized, then you know that the other nodes do not know anything about her.
In this case, some people recommend simply emptying the RAM and putting on the blockchain. That is possible, but too complicated. It is easier to open an online wallet into which you can import a private key. Then all you have to do is find out how to export the private key from your own wallet. Most good wallets – such as the client, electrum and mycelium – enable this, at least via the console. With what command you have to google in individual cases. If your wallet can’t do that, you should look for another for the future.
We can then use the private key, for example, at the Blockchain online wallet.Include info. And Voila: You can spend the post again. Now you can form the same transaction again, but this time with a higher fee.
Replace-by-fairy
With the «Replace-by-Fee» (RBF) function, it is possible to change a transaction as long as it is in the mempool. Newer versions of the Wallets Greenaddress and Electrum have a «Bumb Fee» button, with which RBF can subsequently increase the fee of a transaction. This should be the most convenient way to speed up the confirmation of a transaction.
Comentarios recientes