The Hidden Cost of Blockchains
You thought your rent was high
Bitcoin and Ethereum are the two largest (by market cap) and arguably popular blockchains to date. You might have heard of them referred to as Proof-of-Work blockchains which means that nodes on the network compete with one another and do "work", or in this case math, to try and solve math problems for the right to add new transactions to each block. The blocks are limited in size so if you are the validator that is able to add to it, you collect fees to cover your costs for doing the work. When the network gets busy, block space becomes tighter and tighter, and simple supply and demand economics take over. Supply is fixed and demand spikes, the price or "fees" go up as participants try and outbid one another for space in the next block.
To most this is not a scalable system, as a network gets busier and busier, fees increase, and as fees increase more validators come to the network to compete to perform that work and collect the higher and higher fees. As more validators come into the network, there is more competition for the rights to validate those blocks and collect those fees. This competition results in more and more wasted energy and materials and costs remain high for the consumer, not ideal.
To solve this, a new generation of blockchains have been developed largely based on the concept of Proof-of-Stake. PoS, in general, is the idea that as a participant in the network, you need to stake your own tokens for the right to validate transactions and receive a piece of the fees that these transactions generate. The idea is that if you act maliciously, your stake could be taken away from you giving you an incentive to act in the best interest of the network. Given this mechanism, far less energy is consumed in PoS validation meaning transaction fees are lower. Sounds ideal, especially given the issues with PoW chains...but there is another catch here that is often not discussed.
Blockchains operate off of what is called state. State refers to the "state" of something in the network, say you want to store an image that you own on the blockchain, the data that makes up that image and your ownership is the "state" of that token. Simply put, state is data. Once stored on the blockchain, the network has to maintain that state as well as validate transactions, so who is gonna pay for that? Well...you are.
This is called rent, think of it as similar to storing data in an S3 bucket on AWS where you pay Amazon based on the amount of data over the time that you store that data. For most of the more popular new PoS chains, the formulas are rather complex and while I was discussing these calculations from a reputable source they are tricky to verify as very few people understand them outside of the people who have designed them. Let's start with Avalanche. (For reference before we get into this, there are 1 billion bytes per gigabyte)
"For Avalanche cost is calculated based on today’s gas price of 25 NanoAVAX and one word (32 bytes) costing 20,000 gas or 0.0005 AVAX. For simplicity, we skip the gas costs of smart contract code execution and of allocating the storage and instead only consider the bare minimum cost of STORE operations. This makes storing 1GB of data cost about 15,625 AVAX. As of writing, the price of AVAX is $78.36, which gives a total cost of $1,224,375."
$1.2M for a GB of data...yikes. Let's check Solana to see if it is any better.
"With Solana, cost is calculated based on today’s rent fee of 19.05 lamports per byte-epoch and an epoch lasts 2 days. For 1 GB of state, this makes the biennial rent equal to 6,858 SOL. As of writing, the price of SOL is $87.91, which gives a total cost of $602,886. It’s worth noting that this is only the amount required to be rent-exempt, otherwise, Solana will charge a recurring fee of 19.05 SOL every 2 day epoch, or $1,674 every 2 days per GB of state data."
Now in the case of Solana, the rent exempt amount is a deposit and is returned once you give us the state storage. But having to deposit over half a million for every GB of state is not a scalable situation. This is why to date, most NFTs are simply a token with a link in them that points to a database URL somewhere where the actual metadata for the asset is stored off-chain. This is also why the price action on a lot of these newer PoS chains is more important than just the dollars and cents.
This also speaks to the fact that "pure-play" web3 will, at least for the foreseeable future, not be able to exist in any applications that achieve scale. It is more likely we see hybrid systems that utilize conventional centralized storage and other services and then leverage tokens and blockchain wallets to create an application that can have new operating properties and give users greater control over their assets.
Overall I'm actually interested to see where these hybrid systems go. By taking the best parts of blockchain technology and the best parts of traditional web infrastructure we can create secure and scalable systems that layer in the ability to have a trustless mechanic to them. Which has been the biggest driver behind web3. To address the centralized power and authority that major tech companies have and give users the peace of mind that they have proof of ownership for assets they hold in these systems.