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 →

Preview Image Not Showing — How to Fix og:image Not Displaying

Your URL unfurl appears but shows no image — or the wrong image. This is one of the most common link-sharing problems, and it almost always has a fixable root cause. Nine times out of ten it's a missing og:image, a relative URL, an image that's inaccessible to crawlers, or a size below the platform's minimum.

This guide is the complete fix checklist for every reason your og:image won't display, the exact platform-by-platform fixes, advanced troubleshooting for the less-obvious causes, and how to test your URL unfurl image before you send another broken card.

→ Check why your image isn't showing with TryUnfurl


Why Preview Images Fail

Before the checklist, it helps to know what's actually happening. When a platform unfurls your URL, it:

  1. Fetches your page's HTML.
  2. Reads og:image from the <head>.
  3. Follows that URL to download the image.
  4. Validates the image dimensions and format.
  5. Renders the card — or falls back to text-only if anything failed.

A preview image fails when any one of those five steps goes wrong: the tag is missing, the URL is malformed, the image can't be fetched, the dimensions are too small, or the format is unsupported. Your job is to figure out which step is broken, and the fix checklist below is ordered to catch the most common causes first.


Fix Checklist

Work through this list in order. Most issues are caught within the first three steps.

1. Check that og:image exists in your HTML

View your page source (Ctrl+U or Cmd+U) and search for og:image. If it's not there, add it:

<meta property="og:image" content="https://yourdomain.com/og-image.jpg" />

2. Check the image URL is absolute HTTPS

Relative URLs like /images/og.jpg will not work. It must be a full URL:

<!-- Wrong -->
<meta property="og:image" content="/images/og.jpg" />

<!-- Correct -->
<meta property="og:image" content="https://yourdomain.com/images/og.jpg" />

HTTP URLs are also blocked on most modern platforms — always use HTTPS.

3. Verify the image loads publicly

Open the exact image URL in a private/incognito browser window. If the image doesn't load there, crawlers can't fetch it either. Common reasons it fails:

4. Test Your URL Unfurl Results with TryUnfurl

Paste the URL into TryUnfurl. You'll see whether og:image is detected, the full image URL, the dimensions, whether the image loads, and a rendered URL unfurl card for every major platform. Most image issues are identified in this single step.

5. Check image dimensions

Images that are too small are silently ignored by most platforms.

Platform Minimum to display Recommended
Facebook 200 × 200 px 1200 × 630 px
Twitter/X 300 × 157 px 1200 × 628 px
LinkedIn 1200 × 627 px 1200 × 627 px
Slack 500 × 262 px 1200 × 630 px
Discord 300 × 157 px 1200 × 630 px
iMessage 300 × 157 px 1200 × 630 px
WhatsApp 300 × 200 px 1200 × 630 px
Telegram 200 × 200 px 1200 × 630 px
Microsoft Teams 200 × 200 px 1200 × 630 px

The safest universal size is 1200 × 630 px.

6. Declare image dimensions in your tags

Some platforms won't display an image unless dimensions are explicitly declared:

<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="Descriptive alt text" />

7. Check robots.txt

If your image files are disallowed in robots.txt, crawlers won't fetch them. Check that your image path isn't blocked:

# Bad — blocks all images
Disallow: /images/

# Fine — only blocks a private area
Disallow: /private/

8. Check your image format

9. Check file size

Images over 8 MB may time out or be skipped when crawlers fetch them. Optimise your image and keep it under 1 MB where possible — smaller images also mean faster URL unfurl previews.

10. Clear the platform cache

If you've fixed your image but the old broken state is still showing, the platform has cached the failed result. Force a refresh:

See how to refresh a link preview for the full per-platform cache-clearing workflow.


Platform-Specific Image Requirements

LinkedIn

LinkedIn requires a minimum of 1200 × 627 px to display the large preview-card format. Images below this will show as a tiny thumbnail or no image at all. This is stricter than other platforms.

Twitter / X

For summary_large_image cards, ensure twitter:card is explicitly set to summary_large_image — without it, Twitter may default to a small square card regardless of image size.

Facebook

Facebook requires og:image to be at least 200 × 200 px but recommends 1200 × 630 px. Images must have a public, stable URL — ensure you're not using CDN URLs that rotate or expire.

iMessage

iOS crops wide images to a square thumbnail in compact thread views. Keep the subject of the image in the centre 800 × 400 px so the crop still works.

WhatsApp and Telegram

Both require HTTPS image URLs, both prefer JPEG/PNG over WebP, and both cache aggressively — so test before you send.


Advanced Troubleshooting

If the checklist above doesn't reveal the cause, these are the sneakier edge cases:


Testing Your URL Unfurl Image

Paste your URL into TryUnfurl. You'll see:

For campaign launches or content migrations, the bulk URL unfurl checker runs up to 100 URLs in one pass and flags every image that's missing, too small, or unreachable.

→ Test your URL unfurl image now · → Bulk-check up to 100 URLs


Frequently Asked Questions

Why does my og:image load in my browser but not in the URL unfurl?

Your image URL is accessible with your browser cookies or a matching Referer, but platform crawlers don't have those. Test the image URL in a private/incognito window with no cookies, or with cURL using the platform's user-agent.

How small is too small for og:image?

Below 200 × 200 px, most platforms silently skip the image. Below 1200 × 627 px, LinkedIn downgrades to a small thumbnail. For reliable large cards across every platform, use 1200 × 630 px.

Why does the image show on Facebook but not LinkedIn?

LinkedIn is stricter about minimum dimensions — it requires 1200 × 627 px. Facebook accepts images as small as 200 × 200 px.

How do I test URL unfurl image without posting?

Paste the URL into TryUnfurl. It renders the preview card for every major platform and shows the detected og:image details — no posting required.

Can I use a dynamically generated og:image?

Yes — many sites use CDN templates (Cloudinary, Imgix, Vercel OG) to generate per-page images at build time or request time. Just make sure the image URL is deterministic (same URL always returns the same image) or the platform cache will eventually break.

Why did my og:image work yesterday and break today?

Most common causes: the image URL changed, a signed URL expired, a CDN rotation altered the path, or a new WAF rule blocks platform crawlers.


Related Guides