Many people forget that NFTs are simply smart contracts on the blockchain that record a trail of ownership. Out of the box it has no data inside. Just like an envelope without the letter, an NFT without the token data lacks value, serving only as an empty container for information. The value to the token is derived mainly from the media and properties representing the NFT, which is set up in a data source that points to the NFT contract.
There are three ways you can store data in the NFT: onchain, on your own private database, and on decentralized file storage layers like IPFS. In all three cases, the token URL works as a pointer to the data source. When you store NFT on your own private database, the updates to the token are made locally and reflected across all NFTs.
While this approach is cheaper, it comes with zero governance and problems with dispute resolution. Storing NFTs on IPFS allows you to point data to the NFT contract while maintaining immutability. The downsides, however, are the cost of gas fees, developer overhead and the added limitation of static data which constricts the creative applications one can build.
Unlike the other two methods, onchain is not designed to be a massive storage layer. It is capable of keepingonly minimal numeric or string data. This might work well for static profile picture projects, which want a frozen data set.
However, NFTs that store token data on-chain have the limitation of being harder to link to data streams and are impossible to automate.
Revise, an innovative rails for developing dynamic NFTs, provides a tradeoff between private databases and decentralized file storage, like IPFS. It empowers developers to program NFTs stored in the private databases to interact with apps and data without sacrificing the governance.
When the update happens, programmers can safely validate off-chain data using Merkle Proofs enabled by the Revise Data Structure which the team plans to open-source and choose between which they can deploy on web3 storage layers like IPFS, Arweave or Web2 layers following high security standards.
Developers of dynamic NFT projects usually prefer going with off-chain storage for their projects mainly because of the low latency and high throughput at a very low cost enabled by scaled storage layers like S3. This approach offers them an ability to make more frequent updates to the NFT and enables deeper interactivity for the end-user and the community.
With Revise, developers don’t have to deal with chain compatibility issues or language localization.
The underlying data model is decoupled from the storage layer from the presentation layer. Revise Data Structure, which is soon to be open-sourced, also generates Proofs for all state changes enabling entries in a private off-chain data layer to be independently verifiable.
This means great governance for the community and complete transparency with how the off-chain data has evolved over the NFT's lifespan.
Disclaimer: This article is provided for informational purposes only. It is not offered or intended to be used as legal, tax, investment, financial, or other advice.