Transaction Fees in Blockchains

From Miner Incentives to Network Protection

Whenever information is modified in a blockchain - for example, after sending funds from one address to another - the user that initiated it needs to pay a "transaction fee." Why is this? Are they fixed or variable? Where do they go? In this article, we will delve into the mechanics of transaction fees, how they contribute to the overall functioning of the different blockchains, and how they work.

Why do they exist?

Because ultimately blockchains and cryptocurrencies are software running on computers, the people operating them need to be compensated for the energy they spend, their hardware, and their efforts. In our article about consensus mechanisms, we have seen how these actors can be either miners or validators, depending on each blockchain's architecture.

In all cases, the miners and validators work involves a lot of computational work, plus some kind of energy consumption (or loads, in the case of Bitcoin and other PoW-based blockchains). As an economic incentive to maintain the network and its security, they usually receive the block rewards generated by the protocol and the transaction fees the users pay.

Transaction fees also serve as a protective measure against spam transactions or potential network attacks. By imposing a cost on every transaction, malicious actors are discouraged from flooding the network with numerous meaningless transactions, which could cause network congestion and potentially disrupt the network's normal operation. This form of financial disincentive aids in maintaining the network's health and stability.

Transaction Fees Costs

Transaction fee pricing is variable and usually depends on a market-based mechanism, where users bid how much they're willing to pay for their transactions to be processed. Much in the same way that Uber cars are pricier when everyone wants one simultaneously, transaction fees are more expensive when everyone wants to use the network at the same time.

The idea behind this model is that users with less urgent transactions will wait until the network looks less congested and forces of supply and demand will adjust that block space availability. However, in some blockchains, like Ethereum, this model has led to periods with volatile, unpredictable, and prohibitively high transaction fees. During 2020, simply sending ETH from one wallet to another could cost as high as $50 dollars. The Ethereum community has thus implemented new and more complex mechanisms to enhance the overall user experience.

Understanding the role and mechanisms of transaction fees is essential for both users and developers in the blockchain ecosystem. In Maya, for instance, the highly efficient Tendermint consensus mechanism allows for inexpensive and well-structured pricing of transaction costs. During the next years, and as technology evolves, it will be interesting to observe how the models of transaction fee determination progress and evolve.

If you're interested in staying updated with this progress and everything multi-chain, the Maya Protocol official Discord Server is a great place to learn, share, and discuss with other nice and informed individuals. We invite you to join, and we look forward to seeing you there!