Post
Topic
Board Development & Technical Discussion
Re: Who determines bitcoin transaction fees?
by
PrimeNumber7
on 01/08/2021, 03:19:06 UTC
1) Bitcoin base layer - Who determines the bitcoin transaction fees? Is it the sender? For example, if the sender wants to increase the likelihood of miners including the senders transaction into the candidate block, then the sender can set a higher fee to compensate the miner? If this is the case, then how come most of the common exchanges have a fixed bitcoin withdrawal fee (usually around 0.0004 bitcoin or around $20), which I am unable to change?
The entity signing the transaction gets to set the transaction fee, although as a practical matter, the terms of a transaction are negotiated between the bitcoin buyer (receiver) and bitcoin seller (sender); the terms of the transaction would include the transaction fee, and whether or not the fee is deducted from the amount the receiver would otherwise receive.

Exchanges charge withdrawal fees as a means to make money, and to offset the actual amount of expenses they incur in processing a withdrawal. Exchanges charge a fixed fee to process withdrawals because they have dominant pricing power.

2) Lightning network - If A wants to send to D and it appears that the only way to construct a route from A to D is if A goes through the payment channels A -> B -> C -> D, then does that mean in order for B and C to act as "intermediaries", they must be compensated by transaction fees? And if so, does that mean if we have A -> B -> C -> ... -> Z, then transaction fees would be really higher, potentially higher than if A sent directly to Z via Bitcoin base layer? And how are these transaction fees determined within the lightning network?
With LN transactions, every intermediary will potentially receive a transaction fee at a rate they set. In theory, a LN transaction with many intermediaries could have a higher fee than an on-chain transaction, but this would be very unlikely based on the current fee market for LN transactions.

LN fees are negotiated between transaction participants. Nodes can set whatever fees they wish to set. The caveat is that if a node operator sets their transaction fees too high, few (or possibly no) transactions will be routed via his channels.