Hey everyone! I’m having trouble with my NFT collection display and wondering if my IPFS setup is wrong. Here’s what I did: I made a collection of 50 NFT images with their JSON metadata files. First, I uploaded all the images to Pinata IPFS storage. Then I updated each JSON file to point to the IPFS links of the images. After that, I uploaded all the JSON metadata files to Pinata too. This means my images and JSON files have different IPFS hashes. My smart contract uses the JSON files hash as the base URI. But now my NFTs aren’t showing their images on the OpenSea testnet. Am I doing the IPFS upload process correctly or should the images and metadata be in the same folder with one hash?
opensea testnet is notorious for being buggy tbh. your ipfs setup is fine - i always seperate my images and metadata too. check if your json files have the right “image” field pointing to the ipfs urls. sometimes opensea just needs a kick, try the refresh metadata button or wait it out. worst case redeploy on polygon testnet instead
Your IPFS setup sounds correct actually. Having separate hashes for images and metadata is perfectly fine and pretty standard practice. The issue you’re experiencing is most likely related to OpenSea’s caching system on testnet rather than your IPFS structure. I had the exact same problem when I deployed my first collection last month. OpenSea testnet can be really slow to refresh metadata and sometimes doesn’t pick up images immediately. Try refreshing the metadata manually on each NFT’s page using the refresh button, or wait 24-48 hours for OpenSea to crawl your metadata again. Also double check that your JSON files are properly formatted and the image URLs in the metadata are accessible when you paste them directly in a browser. The separate folder approach you used is actually more organized than putting everything in one directory.