All posts
Launching7 min read

Link preview not showing? The fix for each platform

Link preview not showing on Facebook, WhatsApp, Discord, LinkedIn, X, Slack, or iMessage? The specific cause and fix for each, plus how to refresh a cached card.

A raccoon repairs a blank link preview by fitting its thumbnail and title into a small frame.
Key takeaway

A link preview not showing almost always means one of five things: missing Open Graph tags, tags added by JavaScript, an image the crawler cannot load, an image outside the platform’s limits, or an old cached card. Put the tags in the server-rendered HTML, use a 1200 x 630 JPEG or PNG under 600 KB with a full https URL, then refresh each platform’s cache with its own tool or a new query string.

A link preview not showing means the platform’s crawler either could not read your page’s Open Graph tags or could not use the image they point to. Every platform reads the same small set of tags, but each one fails in its own way, so the fix depends on where you shared the link.

Start by running the page through the OG image checker. It fetches the page the way a preview bot does and shows which tags it found, whether the image loads, and its real size. Then use the section for your platform below.

The tags every link preview needs

Put these in the <head> of the HTML your server sends. Preview crawlers fetch the page once and do not run JavaScript, so tags a script adds after load are invisible to them.

<meta property="og:title" content="Your product: one clear promise" />
<meta property="og:description" content="Who it is for and what it does." />
<meta property="og:image" content="https://yoursite.com/og.jpg" />
<meta property="og:image:width" content="1200" />
<meta property="og:image:height" content="630" />
<meta property="og:url" content="https://yoursite.com/" />
<meta name="twitter:card" content="summary_large_image" />

Use a full https image URL. A 1200 x 630 JPEG or PNG under 600 KB fits every platform below.

Link preview not showing on Facebook

Paste the URL into Meta’s Sharing Debugger. It shows exactly which tags Facebook’s crawler scraped, lists errors, and triggers a fresh scrape. Two causes are specific to Facebook: Meta says its crawler needs your server to support gzip and deflate encoding, and it caches images by URL, so a changed image needs a new image URL to update.

Link preview not showing on WhatsApp

WhatsApp has the strictest documented rules. Meta’s WhatsApp guide says the <head> with your tags must appear within the first 300 KB of the HTML, og:title, og:description, and og:url must not be empty, and the image should be under 600 KB, at least 300 pixels wide, and no wider than 4:1.

Large inline scripts or styles before your meta tags are a common hidden cause, because they push the <head> past 300 KB. To test, paste the link into a message without sending it: if no preview appears above the composer within about 10 seconds, a requirement is not met.

Link preview not showing on Discord

Discord makes a single request and needs a 2xx text/html response, at most 5 redirects, and the whole fetch, including measuring your images, finished within 10 seconds. Declaring og:image:width and og:image:height saves Discord from downloading the image to measure it.

Set twitter:card to summary_large_image for the large image layout; otherwise Discord shows a small thumbnail. Discord caches previews for about 30 minutes, so after a fix, share the URL with a new query string such as ?v=2 to see it immediately. If nobody in a server sees previews, check that the viewer has not turned off embeds and link previews in their Discord settings.

Link preview not showing on LinkedIn

LinkedIn requires og:title, og:image, og:description, and og:url, and asks for an image of at least 1200 x 627 pixels at a 1.91:1 ratio, under 5 MB. Images under 401 pixels wide show as a small thumbnail.

If the image meets the rules but still does not appear, LinkedIn says your site may be blocking its crawler or the image may sit in a protected directory. To refresh, use the Post Inspector. The new preview only applies to new posts; existing posts keep the old one.

Link preview not showing on X

X reads Open Graph tags, but without twitter:card it may fall back to a small summary card. Set it to summary_large_image for the large image. If X keeps showing an old card, share the URL with a small query string added; it treats that as a new link and fetches the tags again.

When a card fails only on X, check your CDN or firewall. Rules that block unfamiliar user agents can stop X’s crawler while Facebook and LinkedIn get through.

Link preview not showing in Slack or iMessage

Slack’s classic unfurling crawls the link when it is posted and reads Open Graph and X card metadata, so a page that works elsewhere usually works in Slack. Test with a fresh message after a fix.

Apple’s guidance for Messages is more specific: previews do not run JavaScript, the linked page is limited to 1 MB, all preview assets together to 10 MB, and images should be at least 900 pixels wide. Images under 150 pixels may be ignored. Without a usable image, Messages shows a grey bubble with only the title, domain, and icon.

How to refresh a cached link preview

PlatformFacebook
How to refreshSharing Debugger, and a new image URL for a changed image
PlatformLinkedIn
How to refreshPost Inspector (affects new posts only)
PlatformDiscord
How to refreshWait about 30 minutes, or add a query string such as ?v=2
PlatformX
How to refreshAdd a query string to the shared URL
PlatformWhatsApp, Slack, iMessage
How to refreshTest the link in a new message
Check the preview before you share anything on launch day. A card that caches broken in the first hour stays broken in every thread that already contains it.

Once the card works, give each place you share its own tracked link with the UTM builder, so you can see which one actually sent visitors.

Frequently asked questions

Why is my link preview showing the old image?

The platform cached the first version it saw. Use the Facebook Sharing Debugger or LinkedIn Post Inspector, or share the URL with a new query string. Facebook caches images by URL, so a changed image also needs a new image URL.

What size should a link preview image be?

1200 x 630 pixels as a JPEG or PNG under 600 KB works everywhere. LinkedIn asks for at least 1200 x 627, WhatsApp for at least 300 pixels wide and under 600 KB, and Apple for at least 900 pixels wide.

Why does my preview work on Facebook but not WhatsApp?

WhatsApp has stricter limits: the head of your HTML must fall within the first 300 KB and the image must be under 600 KB. A heavy page or a large image passes Facebook and fails WhatsApp.

Do link previews work on single-page apps?

Only if the meta tags are in the HTML the server sends. Discord, Messages, and other preview crawlers do not run JavaScript, so tags set in the browser after load are never seen.

Ready for people to share your launch?

Launch on DanielLaunches for a permanent product page with a clean share card and real visitor and click numbers.

Get my roadmap

Sources