Why NFT Creators are Picking Arweave Over IPFS (What Solana and Metaplex Have Known for Some Time now)
Permanence is a big issue when creating NFTs on any blockchain. You don’t want the owners of your NFTs waking up to a dead link. Collectors want their NFTs to live on forever. So when it comes to storing your NFT files, which option will you choose? One where you have recurring fees and a high risk of file loss? Or one where you know the longer your files are stored, the more the nodes storing them are rewarded?
NFTs – as permanent as their contracts?
To explain how the asset and contract are technically separate, let’s take a quick look at how an NFT is created, aka minted.
The minting process takes place via a smart contract. Think of a smart contract as a piece of code, or a small app that runs on the blockchain. When someone mints an NFT the smart contract runs that code and creates a so-called Token. Each token has its own URI (Uniform Resource Identifier). The URI is essentially a link pointing to a file on storage somewhere. This file contains all the NFT’s information, including its unique properties and the link to the actual image file.
This file is called the metadata file.
Wait a minute! So my NFT is just a link?
In a way yes, but there’s more to it. To be precise your NFT is a chunk of information that includes a link. A link to a file that then in turn points to another file. So each NFT is made up of an image and a metadata file. And we will need to store these somewhere.
But you see, images are just too large to store on a blockchain like Ethereum and would be really costly to do so, and this is why NFTs and URIs were created. An NFT’s technical name is an ERC-721 token. But we won’t get too technical right now. Let’s see how we can go about storing these files.
You might be thinking “Ok cool, I’ll store them in my personal Dropbox account!”. That would work, right? Yes, it would work. And also, no-one would buy your NFTs. The reason for this is that the future of these NFTs would depend on:
- You not deleting the files at any given moment.
- Your Dropbox account never being deactivated.
- Dropbox not going out of business.
It’s just too centralised, hence too risky. So in come the decentralised storage solutions – IPFS and Arweave.
With both of these options your data will be stored on multiple nodes (computers running the IPFS or Arweave software) and hence will be decentralised and not susceptible to one person’s errors or account deactivation. So which one is best? Well, let’s take a closer look.
IPFS and Garbage Collection
When uploading a file to IPFS your file is stored on a node. It is cryptographically encoded (hashed) and given a unique identifier (CID) in order to be recognised by other nodes.
When you query your file, another node can find it by using the CID and serve it to you. That node can then itself store the file for future use. But what happens when everyone wants to store their files and storage space starts running low? This is where the Garbage Collection starts.
Garbage Collection is a process in which software automatically starts deleting files that it thinks are no longer needed. This could mean the files get deleted unless they are pinned.
Pinning a file simply means that you are asking the Garbage Collector not to delete the file. You can pin a file through a pinning service, such a Piñata. Some pinning services now offer free accounts for small amounts of data, but if you go over that limit you will need a paid account. So we have the whole Dropbox problem again. If you stop paying for the pinning service the files will be deleted.
This is where Filecoin comes in to play. Filecoin is a decentralised storage solution where the user and the node agree on a fixed price to store data for a set time. Once the storage period is up, and you download your data from Filecoin, it can then be deleted. So we are limited by time. Our files are not stored permanently.
In essence, it’s fine for the short term, but not for the long term as there’s no guaranteed permanence.
Arweave as a permanent storing solution
Arweave set out to resolve the above issues. The solution was simple. Incentivise the nodes to hold the data permanently. It is done by users paying a one time fee in AR (the native Arweave token) to the nodes.
The formula used for the fee calculation in essence incentivises the nodes to hold the data for well over 200 years. The fee takes into calculation the rising price of AR over time alongside the decreasing price of physical storage. And on top of that the Arweave team deliberately underestimated the decreasing cost of storage over the years in order to play it even more safe.
On top of that the nodes are periodically asked for a random piece of data from the entire Arweave network. If the node can verify they are storing that piece of data they get awarded extra AR tokens. This means that every single node on the network benefits from holding a copy of the entire data.
If you aren’t convinced on Arweave yet, just take a look at what Solana chose to do.
Solana and Arweave
Over the past year Solana has become one of the biggest and most recognisable blockchains. Recently they chose Arweave to store a backup of their entire blockchain ledger via KYVE.
“As a collectively owned hard drive that never forgets, Arweave allows us to indefinitely preserve crucial information and records, preventing any possible rewriting of history.” From solana.com
Solana was one of the first blockchains to utilise Arweave in this way. (Since, there have been numerous others from Avalanche to NEAR.)
Metaplex is a set of tools built on Solana and designed primarily to help users mint and auction NFTs with ease. One of their main tools is called “The Candy Machine”.
What The Candy Machines does is take all your assets (both image and metadata files) and combine them into an NFT. It does this by firstly uploading all files to Arweave and then referencing them to create an NFT when the user mints one. A multitude of NFT collections that launched on Solsea used this very method, and it seems to be gaining traction fast, with over 10,000 projects launched this way.
Conclusions on the trade-offs
Generally speaking, IPFS has it’s advantages but it can’t offer permanent storage without workarounds – and even then, the workarounds tend to have drawbacks and catches making your NFTs unsafe to store. And if it’s not stored on an incentivized blockchain, it’s more like the cloud.
Having an NFT stored on Arweave is the answer for the long-term since it provides permanent storage without the monthly fees that would make it so that you technically just rent your NFT from the storage provider. Having this option makes NFT creators (and collectors) opt for Arweave as the safer solution to sell and store art without the risk of 404s.