← Documentation

How Each Platform Reads Your Metadata

What Facebook, X, LinkedIn, and Discord actually look for when generating link previews.

How Each Platform Reads Your Metadata

Every platform generates link previews differently. Here’s what each one reads and what happens when tags are missing.

Facebook / Meta

Reads: og:title, og:description, og:image, og:url, og:type

Facebook strictly follows the Open Graph protocol. It reads og:image for the preview image, falls back to the first image on the page if missing (unreliable). Images should be at least 1200x630px.

Cache: Aggressive. Use the Sharing Debugger to force a refresh after changing tags.

X / Twitter

Reads: twitter:card, twitter:title, twitter:description, twitter:image. Falls back to og:* equivalents.

The twitter:card tag controls the layout:

  • summary — small square image beside the text
  • summary_large_image — full-width image above the text

Without twitter:card, X uses summary by default. Most sites want summary_large_image.

Cache: Re-fetches periodically. The Card Validator forces a refresh.

LinkedIn

Reads: og:title, og:description, og:image, og:url

LinkedIn follows OG tags closely. It crops images to a 1.91:1 ratio (1200x628). Images smaller than 200x200 are ignored entirely.

Cache: Very aggressive. LinkedIn’s crawler caches for up to 7 days. The Post Inspector can trigger a re-scrape.

Discord

Reads: og:title, og:description, og:image, og:site_name, theme-color

Discord is unique — it uses <meta name="theme-color"> to color the left border of the embed. It also respects og:site_name for the small text above the title.

<meta name="theme-color" content="#5865F2">
<meta property="og:site_name" content="Your Site Name">

Cache: Re-fetches when you edit and re-paste a link in chat.

iMessage / Apple

Reads: og:title, og:description, og:image

Apple’s crawler is strict about HTTPS and valid SSL certificates. Self-signed certs or HTTP URLs won’t generate previews.

Images must be served from the same domain or a well-known CDN. Apple blocks images from unfamiliar origins.

Slack

Reads: og:title, og:description, og:image, twitter:card

Slack combines OG and Twitter card data. It uses twitter:card to decide the image layout (similar to X). Without it, images show as small thumbnails.

Common pattern

For maximum compatibility across all platforms:

<meta property="og:title" content="Your Title">
<meta property="og:description" content="Your description, 55-200 chars.">
<meta property="og:image" content="https://yoursite.com/og.png">
<meta property="og:image:width" content="1200">
<meta property="og:image:height" content="630">
<meta property="og:url" content="https://yoursite.com/page">
<meta property="og:type" content="website">
<meta name="twitter:card" content="summary_large_image">

This covers Facebook, X, LinkedIn, Discord, Slack, iMessage, and most other platforms that render link previews.

OG image templates for link previews. A rendering platform for dynamic images at any size — email, publishing, and beyond.

Made with ♥️ by Paper Crow