Skip to content

Why is my og:image not showing?

The most common reasons are: the image URL is not publicly accessible, the tag is missing from the static HTML, the image uses HTTP instead of HTTPS, or the platform has a stale cache. Use the checklist below to find and fix the exact cause.

Diagnose your og:image in peek →

Common causes and fixes

Error
Image URL is not publicly accessible
Open the image URL in an incognito browser window. If it doesn't load, the social crawler can't fetch it either.
Error
Image URL uses HTTP instead of HTTPS
All major platforms require HTTPS for og:image. Update your image URL to use https://.
Error
og:image tag is missing or misspelled
Check for typos. The correct attribute is property="og:image", not name="og:image". Open your page source and search for og:image.
Error
Tag is injected by JavaScript
Social crawlers don't execute JavaScript. The og:image must be in the raw server-rendered HTML. Use SSR or static generation to pre-render the tag.
Warning
Image is too small (LinkedIn)
LinkedIn requires images to be at least 401 px wide. Images narrower than this render as small thumbnails instead of large feed cards.
Warning
Stale platform cache
The tag is correct but the platform cached the old image. Use the platform's debug tool to force a re-scrape.
Warning
Image aspect ratio is far off 1.91:1
Extreme ratios (very tall or very wide) may be cropped or rejected. Use 1200×630px to stay within all platform tolerances.
Warning
File size over 5 MB
LinkedIn and some other platforms reject images larger than 5 MB. Compress or resize your image.

How to clear the platform cache

LinkedIn

Open the LinkedIn Post Inspector, paste your URL, and click Re-scrape. Wait 60 seconds and try sharing again.

Open LinkedIn Post Inspector ↗
X (Twitter)

Use the X Card Validator with your URL to force X to re-fetch the metadata.

Open X Card Validator ↗
Slack

Slack caches unfurls for ~30 minutes. Paste the link again after updating your tags and waiting.

Open Slack Unfurl Debugger ↗
Facebook

Use the Facebook Sharing Debugger to clear the Facebook cache.

Open Facebook Sharing Debugger ↗
Discord

Discord embeds are cached. Delete the original message and re-paste the link to force a fresh fetch.

Correct og:image HTML

<meta property="og:image" content="https://example.com/og.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" />
<meta property="og:image:type" content="image/jpeg" />

Related guides

Frequently asked questions

Why is my og:image not showing on LinkedIn?
The most common causes are: the image URL is not publicly accessible, the image is served over HTTP instead of HTTPS, the image is narrower than 401 px, or LinkedIn has a stale cache. Use the LinkedIn Post Inspector to force a re-scrape after fixing the tag.
Why is my og:image not showing on Slack?
Slack requires the image URL to be publicly reachable. Private or localhost URLs will not load. Also check that og:image is in the static HTML source (Slack's crawler does not execute JavaScript).
Why is my og:image not updating after I changed it?
Social platforms cache preview images. LinkedIn caches for up to 7 days (use Post Inspector to clear it), Slack caches for ~30 minutes, Discord caches indefinitely until you re-share, and X's card validator can be used to bust the cache.
Does JavaScript injection work for og:image?
No. Social crawlers (LinkedIn, Slack, iMessage, Discord) do not execute JavaScript when scraping metadata. The og:image tag must be present in the raw HTML source returned by the server.
What image format works best for og:image?
JPEG and PNG are universally supported. WebP is supported by most modern platforms but not all older scrapers. Avoid SVG as a og:image (not supported by most social previews). Keep file size under 5 MB.