6 ms·
How are these transaction fee amounts even determined? With something like credit cards, PayPal, or EFT the fees are deterministic. With Bitcoin it seems fees
by bigtunacan 9y ago
How are these transaction fee amounts even determined? With something like credit cards, PayPal, or EFT the fees are deterministic.
With Bitcoin it seems fees are both ridiculously high, plus I can't even tell what I am going to be charged?
- Klathmon 9y agoWhen you make a bitcoin transaction, it gets put into a "mempool". Basically you send your TX to a node, that shares it with other nodes on the network, and they all hold it in memory. Once a block is found, the miner that found the block will pull as many transactions as possible from the mempool and put them into that block and sign it on the blockchain forever. Since TX fees go to miners, they are incentivized to pick the transactions with the largest "fee per size" to include first to maximize their profit (though they aren't required to do so). So basically you can envision all transactions as a stack, with the highest fees at the top. Once a block is found, it takes the top ~1MB worth of transactions, and the cycle repeats. [0] is a good visual representation of this. Unfortunately this means there isn't an easy way to determine what fee will absolutely get you included in a block before it's mined, since if thousands of transactions show up with higher fees than yours after you (but before a block is mined) yours might not make it in the next block (even if your fee was the highest when you made the transaction). It's a tough problem to solve, but there are some solutions being worked on to help solve this problem for the vast majority of bitcoin transactions. [0]https://core.jochen-hoenicke.de/queue/#24h https://core.jochen-hoenicke.de/queue/#24h
- simpsond 9y agoI don’t understand why miners wouldn’t include all pending transactions in their block. Seeing as how pow is a guessing game, there are plenty of permutations of the Merkle tree to generate plenty of roots. I guess to dissencentivize free loaders so miners can continue to make money once Coinbase txns are no longer a thing? It’s certainly not free to mine!
- Bootvis 9y agoThe number of transactions that can be included in a block is limited. A block is generated on average 10 minutes (a bit quicker due to increasing hash rate) so the number of transactions in an hour is also limited. Naturally the transactions that pay most to the miners are getting selected by them and included in these blocks.
- Klathmon 9y agoAs the other commenter said, there is about 1 MB of room in each block, and almost always >1 MB worth of transactions in the "mempool" (actually it's often >12MB for the most part, because people will make tons and tons of transactions at 1sat/byte and not really care if they take forever to go through). And you are correct that bitcoin's ultimate goal is to have mining income come solely from transaction fees eventually. But by that point the hope is that "second layer" systems will take the brunt of the transactions and the actual core blockchain will only be a settlement layer where a $500 fee is no big deal for 2 banks settling hundreds of millions of dollars directly on the blockchain.
- greenhouse_gas 9y agoSo are fees a percentage (.05bc a transaction) or a Flat fee (.05bc a transaction)?
- Klathmon 9y agoFees are set as a "flat rate" per transaction, but normally expressed as a fraction of "price over size" So if a fee is 150 "sat/byte" or satoshi's per byte. A satoshi is 0.00000001 of a bitcoin. So if your transaction is 250 bytes (which is average for a single transaction to a single person), then you will pay (250 * 150) satoshis (37500 sat), which is about $5. If your transaction is larger, you'll pay more, if it's smaller, you'll pay less. But they are "ranked" in terms of who is picked first by "sat/byte" since the amount of room in the block is only 1MB. So a 500 byte transaction with 37500 sats in fees is worth less than a 250 byte transaction with 37500 sats in fees, because the 500 byte transaction takes up more room that other higher paying transactions could fit in.
- seanwilson 9y ago> Once a block is found, the miner that found the block will pull as many transactions as possible from the mempool and put them into that block and sign it on the blockchain forever. Might be a nitpick, but you mean the miner puts as many high value transactions as they can fit into a block and then searches for a valid hash?
- Klathmon 9y agoYeah that's more correct. Technically the miner needs to know what they are going to be including in a block when they begin trying to find a valid hash, but for the sake of explanation I generally switch it around for simplicity.
- bigtunacan 9y agoSo how does one make money as a miner via processing these fees? Is this money being taken by pools, individual miners? Who is the middle-man that is actually taking this profit?
- Klathmon 9y agoIt's pretty clever. Whenever you make a transaction in bitcoin, you point to the previous balance you have from a previous transaction, then you say how much you are sending to what address. The "fee" is the difference between the amounts. So if I have 1 Bitcoin, and I send .9 to you, the fee is .1 If you want to make sure you keep some Bitcoin, you just send it to yourself. So 1 have one, and I send .1 to you, and .8 back to me, the fee is .1 Then when a miner mines a block, any unspent money is now theirs, and they claim it via the address they liked for.
- deleted 9y ago[deleted]
- rlpb 9y ago> How are these transaction fee amounts even determined? The number of transactions that can fit into a block (ie. "clear") is roughly fixed. The rate at which new blocks are added (ie. "clearing rate") is roughly fixed. Traders effectively bid for clearing via the transaction fee, and the highest bidding transactions are accepted. In order words: supply of transactions is effectively fixed, and demand for transactions determines the fee. There is work going on to enable external clearinghouses called the lightning network that will fix this problem, but that work isn't ready yet.
- bdcravens 9y agoYou can pick the fee with most Bitcoin wallets - the amount will determine how fast it confirms. This site gives guidance as to amount: https://bitcoinfees.earn.com https://bitcoinfees.earn.com
- nicky0 9y agoThe fee is chosen by the person making by the transaction.
- DSMan195276 9y agoI think it's easiest to think of Bitcoin TX fees as a bribe to the miners to include your transaction in a block sooner then other transactions that have a lower fee attached. You get to choose the fee that you provide to the miner. The problem is that there are now so many transactions that are attempting to get through (And there is a maximum number of transactions that can be placed in a single block) that miners can be more selective. At this point your transaction is unlikely to get through without a minimum fee/bribe being provided because there are enough transactions with fees already at or above that level.
- donarb 9y agoLooks like we need some form of "block neutrality".
- DSMan195276 9y agoNot really, this is an intended feature of Bitcoin, not a bug. Every so many blocks, the number of new Bitcoin handed to the miners is halved, and eventually it will drop to zero. When that happens, the only incentive for miners to continue mining (And thus keep Bitcoin going) is the fees collected from the transactions. So required fees are only going to go up.
- rawoke083600 9y agoStupid question.... What sort of compression is used on the block ? I.e If you use a better compression or re-align the transaction in the block can you not get more transactions per block ?
- Klathmon 9y agoThere is no compression at that level. There is some compression at a storage level after blocks have been created, but it's not all that important. Pretty much all the data in Bitcoin is very difficult to compress with most of it being signatures, transactions, and addresses all stored in a binary format. The random nature of encryption makes it difficult to compress, and the formats have already been "hand tuned" for minimum size in many cases.