TryUnfurl

Check How Your Links Unfurl for FREE!

See exactly how your webpage will appear when shared on social media, Slack, Discord, and messaging apps.

Try It Now →

How to Fix Link Preview Problems — Complete URL Unfurl Guide

Link preview broken? This is the practical playbook for fixing every common URL unfurl problem — wrong title, missing image, no preview card, stale cache, platform-specific glitches — ordered from fastest check to deepest fix. Each section tells you how to check URL metadata for the issue, what the root cause is, and exactly which lever to pull.

→ Check what your page is actually showing with TryUnfurl


Understanding URL Unfurl Issues

Every broken link preview comes from one of three places:

  1. The tags on your page are wrong or missing. The URL unfurl is doing exactly what it should — it's just using bad data.
  2. The tags are correct but the platform has cached an old version. Fixing the page doesn't retroactively update the cached card.
  3. The platform crawler can't reach your page at all. Bot blocked by a WAF, page behind auth, JavaScript-only rendering, redirect chain too long.

Knowing which of the three you're in is the difference between a two-minute fix and a two-hour investigation. That's why Step 1 below is always "check URL metadata first." Don't skip it.


Step 1: How to Check URL Metadata

Before changing anything, paste your URL into TryUnfurl. This tells you exactly what metadata platform crawlers are reading from your page — the same way Slack, Discord, Facebook, LinkedIn, X, iMessage, WhatsApp, Telegram, and Teams see it.

This single step tells you which of the three buckets you're in:

Other ways to check URL metadata quickly:

# See exactly what a platform crawler would see:
curl -sL -A "facebookexternalhit/1.1" https://example.com/page \
  | grep -iE '<meta (property|name)="(og|twitter)'

If tags appear in browser DevTools but not in this cURL output, they're being injected client-side by JavaScript — and every platform crawler will miss them.


Common Link Preview Problems and Solutions

Fix: Wrong or missing title / description

Add or correct the Open Graph tags in your HTML <head>:

<meta property="og:title" content="Your Correct Title" />
<meta property="og:description" content="Your accurate description under 155 characters." />

Also set the Twitter Card fallbacks if you want X to show specifically crafted copy:

<meta name="twitter:title" content="Your Correct Title" />
<meta name="twitter:description" content="Your accurate description." />

If the tags are present but showing old content, your CDN may be caching old HTML. Purge the CDN cache for that URL, redeploy, then re-test on TryUnfurl.

Fix: No preview image (or wrong image)

Check these in order:

  1. Is og:image present? — search your page source for og:image. If missing, add it.
  2. Is the URL absolute HTTPS?/images/og.jpg won't work. Use https://yourdomain.com/images/og.jpg.
  3. Does the image load publicly? — paste the image URL into a private/incognito window. If it doesn't load, crawlers can't fetch it.
  4. Is the image large enough? — minimum 600 × 315 px; recommended 1200 × 630 px.
  5. Are dimensions declared? — add og:image:width and og:image:height.
  6. Is the image behind hotlink protection? — some image hosts block requests without a matching Referer. Allowlist platform crawlers or remove hotlink rules for OG image paths.
<meta property="og:image" content="https://yourdomain.com/og-image.jpg" />
<meta property="og:image:width" content="1200" />
<meta property="og:image:height" content="630" />
<meta property="og:image:alt" content="Description of the image" />

Fix: No preview card at all

If no URL unfurl appears on any platform:

  1. Check for Open Graph tags — view your page source (Ctrl+U) and search for og:title. If missing, add the four core tags.
  2. Check for JavaScript rendering — if your site is a React/Vue/Angular SPA without SSR, crawlers see an empty page. Switch to server-side rendering, static site generation, or pre-rendering.
  3. Check robots.txt — make sure your page and og:image aren't disallowed for crawlers.
  4. Check for bot blocking — if you use Cloudflare or a WAF, ensure Slackbot, Discordbot, facebookexternalhit, LinkedInBot, Twitterbot, and TelegramBot aren't being blocked.
  5. Check the HTTP response — the URL must return 200. Redirects to auth pages, 403s, and 5xx errors all produce empty URL unfurls.

Fix: Preview outdated after metadata update

Each platform caches URL unfurl results independently. Fixing your page metadata is only step one — you also need to force each platform to re-fetch:

Platform How to clear the cache
Facebook Sharing Debugger → Scrape Again (click twice)
Twitter / X Card Validator — each validation clears the cache
LinkedIn Post Inspector → Regenerate
Slack Delete the message, re-share the link (or ?v=2)
Discord Add ?v=2 to the URL when re-sharing
WhatsApp Delete and resend, or ?v=2 cache-buster
iMessage Delete message and resend
Telegram Append ?v=2 query param
Microsoft Teams Re-paste the link (or ?v=2)

Also check your CDN — if your CDN is caching old HTML, platform debugger tools will still see old metadata even after you deploy changes. Purge the CDN cache for the affected URL first. See how to refresh a link preview for the full per-platform workflow.

Fix: Preview works on some platforms, not others

Platform-specific issues usually come down to image size differences or metadata format preferences:


Platform-Specific Troubleshooting

Facebook

Run the URL through the Sharing Debugger. Click Scrape Again twice: first scrape re-fetches your page, second reads the fresh cache. Also check CDN cache and verify OG tags are server-rendered.

LinkedIn

Use the Post Inspector → Regenerate preview. If the card is downgraded to a small thumbnail, your og:image is under 1200 × 627 px. LinkedIn only reads Open Graph — Twitter Card tags are ignored.

Twitter / X

Run through Card Validator to re-scrape. Make sure twitter:card is set to summary_large_image for the big hero layout. Each validator run effectively clears X's cache.

Slack

No debugger. Delete the message and re-share, or append ?v=2. Confirm Slackbot can reach your page — check WAF for blocked user-agents.

Discord

Append ?v=2 to the URL. If you're using <URL> angle brackets, remove them — they suppress the embed entirely.

iMessage / Discord together

See Fix preview URL unfurl on Discord and iMessage for the shared troubleshooting playbook.


Advanced URL Unfurl Debugging

Once the basics check out but previews still misbehave:


Full Diagnostic Guide

For a comprehensive symptom-based troubleshooting walkthrough, see the Link Preview Troubleshooting Guide. For root-cause analysis of why previews break, see Why Link Previews Break.


Frequently Asked Questions

How do I check URL metadata without a debugger tool?

Paste the URL into TryUnfurl for a full multi-platform view, or run curl -sL https://example.com/page | grep -i og: from a terminal to see the raw Open Graph tags your server returns.

Why did my URL unfurl work before and suddenly break?

Most common causes: a deploy that stripped OG tags, a CMS or theme update that injected duplicate tags, an og:image URL that now 404s, or a new WAF rule that blocks platform crawlers.

How long until a fixed URL unfurl shows up on Facebook or LinkedIn?

Immediately after running the Sharing Debugger (Facebook) or Post Inspector (LinkedIn) → Regenerate. Without the debugger, caches can last days.

Can I automate URL unfurl checks in CI/CD?

Yes — use the TryUnfurl API to assert og:title, og:description, and og:image are present on every deploy. Pipelines fail if required metadata is missing.

What do I do if no platform shows my preview?

Check that (1) OG tags exist in the server-rendered HTML, (2) the og:image is a public absolute HTTPS URL, and (3) your WAF isn't blocking platform crawlers. TryUnfurl narrows it down in one step.


→ Test your link preview now with TryUnfurl · → Bulk-check up to 100 URLs