I’m working on an ERC721 contract for a big NFT project with loads of images. Storing all those image bytes directly in the contract seems like a bad idea. It would eat up so much space!
What do other successful NFT projects do? I’ve heard about CryptoKitties, but I’m not sure how they manage their images. Do they keep everything on-chain or use off-chain storage with URIs?
The URI option worries me though. If the server hosting those images goes down, wouldn’t the NFT owners basically lose their art? They’d just have a useless link instead of the actual image data.
Anyone have experience with this? What’s the smartest way to handle image storage for a big NFT collection while keeping things decentralized and reliable? Thanks for any tips!
hey there! i’m really curious about your nft project. sounds exciting! 
have you thought about using arweaver? it’s this cool permanent storage solution that’s getting popular for nfts. basically, you pay once to store your stuff forever. no worries about servers going down or anything.
how many images are we talking about here? and what kind of art is it? i’d love to hear more about your project!
oh, and have you checked out how the bored ape yacht club does it? they’re pretty big and might have some good ideas. just a thought!
anyway, let me know if you wanna chat more about this. nft storage is such an interesting problem to solve!
Having worked on several large-scale NFT projects, I can confidently say that off-chain storage with IPFS is the way to go. It’s a distributed file system that ensures your images remain accessible even if individual nodes go down.
For the smart contract, you’ll store IPFS hashes as URIs. This keeps your contract lean while maintaining decentralization. We’ve used this approach successfully for collections with 10,000+ NFTs.
To address your concern about image availability, consider pinning your IPFS content on multiple nodes. Services like Pinata or Infura can help with this. It’s also worth implementing a fallback mechanism in your dApp’s front-end to fetch from alternative IPFS gateways if the primary one fails.
Remember, on-chain storage is prohibitively expensive and unnecessary for image data. The IPFS approach balances cost, scalability, and decentralization effectively.
hey man, ive done alot nft projects. ipfs is def the best. it keeps your images decentralized and cheap. store ipfs hashes in your contract. use a pinning service to keep your images up. way better than storing all on-chain, trust me