Stale Preview on Instagram

Why Instagram still shows old link preview content after you updated your tags

Why the old preview persists

Instagram shares Meta’s unified cache with Facebook. OG data is cached for about 30 days. Updating tags on your server won’t show up on Instagram until the cache is invalidated. Same cache as Facebook – no separate Instagram cache.

Step-by-step fix

1. Verify your server returns updated tags

curl -A "facebookexternalhit/1.1" https://example.com/page | grep "og:"

If old tags are still in the response, the problem is server-side (CDN caching, deployment issue), not Meta’s cache.

2. Clear the cache via the Sharing Debugger

Open the Facebook Sharing Debugger and click “Scrape Again.” You may need to click it two or three times – Meta has intermediate cache layers.

3. Clear your CDN cache

If you use Cloudflare, Fastly, CloudFront, etc., it may serve old HTML to Meta’s crawler. Purge the URL, then scrape again.

4. Force a new image URL

If you changed the image file but kept the same URL, Meta’s image CDN may still serve the old version:

<!-- Force a fresh image fetch -->
<meta property="og:image" content="https://example.com/image.jpg?v=2">

5. Bulk updates

The Batch Invalidator handles multiple URLs after site redesigns or bulk OG changes.

Gotchas

  • Instagram app caching – the mobile app caches locally. Even after clearing Meta’s cache, existing DM previews may persist until the app refreshes or is force-closed. Only new shares reliably show updates.
  • Existing shares don’t update – DM previews already rendered in a conversation are permanent. Cache clearing only affects new shares.
  • Story stickers are static – once published, the preview image is locked for that Story’s 24-hour lifespan.
  • All Meta platforms in sync – clearing cache in the Sharing Debugger refreshes Facebook, Instagram, and Threads simultaneously.