Is IPFS forever? The myth of permanent storage
The IPFS protocol is forever. Your access to a CID is forever only as long as someone is paying to pin it. Why pinning providers shut down, and what real permanence actually requires.
Every IPFS pitch deck includes the words "permanent" and "immutable." Every NFT marketplace tagline mentions "decentralized storage." And every six months, another project posts on Twitter that their NFT artwork has disappeared. This isn't a contradiction — it's a misunderstanding of what IPFS actually guarantees.
The short answer:
- The IPFS protocol is forever. The content-addressing math doesn't expire. A CID will identify the same content in 2026, 2030, and 2100.
- The availability of any given CID on the network is forever only as long as someone is paying to keep the bytes online. The moment the last pin drops, the content is gone from the network — even though the CID still "exists."
Read those two sentences again, because they're the entire post. Everything else is examples.
The pinning provider business model is the actual risk
When you "upload to IPFS" through Pinata, Storacha, NFT.Storage, or Octopin, what you're really doing is:
- The provider runs an IPFS node and chunks your file into blocks, producing a CID.
- The provider stores those blocks on their own infrastructure (cloud buckets, dedicated servers, whatever).
- The provider runs a public IPFS gateway, so when anyone in the world asks for that CID, the provider serves the bytes.
- You pay (or use a free tier) for steps 2 and 3 to continue happening.
Notice what's missing from that list: any other party promising to keep your bytes alive. If your provider goes out of business, raises prices to unaffordable levels, decides to discontinue free tiers, or simply has a multi-month outage, your content's availability is entirely their problem — until you migrate to another provider.
The peer-to-peer network exists, but in practice almost no random third-party nodes are going to pin your specific CID just because it's on IPFS. Random people aren't hosting your NFT collection out of altruism. They're hosting their own.
Real things that have happened
This isn't hypothetical. In just the last few years:
- Storacha (formerly web3.storage) announced in early 2026 that it was sunsetting its IPFS gateway by May 31. Thousands of NFT collections that had hardcoded
w3s.linkgateway URLs in theirtokenURIcalls suddenly had a deadline to migrate or break. We wrote a playbook for that exact case. - NFT.Storage changed its free-tier policy multiple times, including discontinuing the "perpetual storage" promise that was originally pitched. Projects relying on the original promise had to scramble.
- Multiple smaller pinning providers have quietly shut down, taking pinned content with them. You won't hear about most of these because the projects affected are small.
None of these are scandals or fraud. Running infrastructure costs money. Providers shut down or pivot for ordinary business reasons. The mistake is treating any single provider's "forever" promise as a load-bearing assumption.
What "permanent" actually requires
For your NFT collection's media to genuinely outlive any one company, you need at least one of:
- Multiple independent pins. Pin the same content with at least two providers. The IPFS spec makes this trivial — same CID, multiple homes. If provider A vanishes, provider B keeps serving.
- Filecoin or Arweave as a long-term backstop. Both are blockchain-backed storage networks with cryptoeconomic incentives for nodes to hold content for years. Filecoin pricing is based on storage deals; Arweave charges once for storage measured in centuries. Pair an IPFS pin (for fast serving) with a Filecoin deal (for cold backup) and you have something that resembles actual permanence.
- Run your own IPFS node. Costs a few dollars a month on a small VPS. You become your own backstop. Combine with a paid provider and you're covered against either's failure.
- Use
ipfs://URIs in your contract, not gateway URLs. This doesn't add permanence directly, but it gives you the freedom to migrate providers without redeploying your contract. Hardcodinghttps://w3s.link/ipfs/<cid>/in tokenURI is what trapped Storacha's customers.
What Octopin commits to and doesn't
We can't promise "forever" with a straight face — no honest pinning provider can. What we do commit to:
- Pricing transparency. No bait-and-switch where the free tier you built on disappears in year two.
- Standard CIDs. If we ever shut down, your
ipfs://URIs work through any other IPFS provider you pin to. Nothing locks you in to us. - An export-friendly architecture. If you decide to migrate, the listing of your pinned CIDs is available via API; you don't have to scrape our dashboard.
We'll be honest: we're a small team. The right move for any long-lived collection is to pin with us and at least one other provider, and ideally to maintain a Filecoin deal for the archival copy. That's the industry-standard belt-and-braces approach in 2026, and any pinning provider telling you otherwise is selling you a story rather than a system.
Action items if you're launching today
- Use
ipfs://<cid>URIs in your smart contract. Never hardcode a gateway domain. We have a post on exactly why. - Pin with at least two providers. If you're using Octopin, also pin with Pinata, or vice versa.
- For collections you expect to live decade-plus, look at Filecoin storage deals as an archival backstop.
- Maintain an exportable list of your CIDs somewhere off your provider — a git repo, a Notion doc, anywhere — so if you ever need to migrate, you have the canonical list.
IPFS is one of the best primitives we have for portable, verifiable content. It's not a magic permanence wand. Treat it like the excellent tool it is, not like a guarantee, and you'll be fine.
Try Octopin for free
1 GB free. Unlimited bandwidth. No credit card.