Why Your LinkedIn Post Preview Looks Wrong (and How to Fix It)
You post a link on LinkedIn. It shows a blank grey box. Or the wrong image. Or a truncated title from three months ago. This guide fixes all of it.
Why LinkedIn is stricter than other platforms
LinkedIn crawls your page when you post the link โ but it caches aggressively. It also has stricter image dimension requirements than X (Twitter) or Slack. A single wrong setting can silently break your card for thousands of views.
The 6 reasons LinkedIn previews break
1. Missing og:image
Most common cause. LinkedIn shows nothing without an og:image โ it doesn't fall back to any in-page image.
<meta property="og:image" content="https://yourdomain.com/og.png" />
2. Image too small (under 1200ร627px)
LinkedIn requires 1200ร627px minimum. Images under 400px wide are rejected entirely.
<!-- Use exactly 1200ร628px for best LinkedIn compatibility -->
3. Image not publicly accessible
LinkedIn fetches as an anonymous bot. Login-protected or CDN-restricted images fail silently.
<!-- Test: curl -I https://yourdomain.com/og.png โ must return 200 with no redirect -->
4. Stale cached preview
LinkedIn caches OG data for ~7 days. Use the Post Inspector to force a re-fetch after fixing your tags.
<!-- Go to: linkedin.com/post-inspector โ paste URL โ click Inspect -->
5. Missing og:title or og:description
Without these, LinkedIn renders a minimal plain-link card with no context.
<meta property="og:title" content="Your Title (max 70 chars)" /> <meta property="og:description" content="Your description (max 160 chars)" />
6. og:url mismatch or missing
LinkedIn uses og:url for deduplication. If it doesn't match the actual URL, reshares may show a different cached card.
<meta property="og:url" content="https://yourdomain.com/exact-page-url" />
The complete working template
<head> <meta property="og:title" content="Your Page Title Here" /> <meta property="og:description" content="150 char description." /> <meta property="og:image" content="https://yourdomain.com/og-1200x628.png" /> <meta property="og:url" content="https://yourdomain.com/this-page" /> <meta property="og:type" content="website" /> <!-- For Next.js App Router, these are handled by the metadata export --> </head>
For Next.js App Router
export const metadata: Metadata = {
title: "Your Page Title",
description: "Your description.",
openGraph: {
title: "Your Page Title",
description: "Your description.",
url: "https://yourdomain.com/this-page",
images: [{ url: "https://yourdomain.com/og-1200x628.png", width: 1200, height: 628 }],
},
}Test your tags before publishing with the OpenGraph Preview Tester โ it shows you exactly how your card looks on LinkedIn, X, Slack, Discord, and Facebook.
Try the related tool
OpenGraph Preview Tester โ free, runs 100% in your browser.
Open OpenGraph Preview Tester โEnjoyed this? Get notified when Pro launches.
