# OG image size for LinkedIn, X, Facebook, Slack, Discord and WhatsApp

> One size works everywhere: 1200×630 PNG or JPEG under 5 MB. The per-platform limits behind that answer, with sources, and what each platform crops.

Published 2026-10-24 · https://shareglint.com/en/guides/og-image-size

**Use 1200×630 pixels, a 1.91:1 ratio, as a JPEG or PNG — under 600 KB if you want WhatsApp too.** That single image satisfies Facebook's recommendation, LinkedIn's minimum, X's large card limits, and displays well in Slack, Discord, WhatsApp, Telegram and iMessage. Keep the important content — the title, the logo — away from the outer 5–10 % on each side, because some platforms crop.

Below are the per-platform numbers behind that answer, each from the platform's own documentation where one exists, and a note where none does.

## The table

| Platform | Recommended | Minimum for a large card | Max file size | Formats | Source |
|---|---|---|---|---|---|
| Facebook | 1200×630 (1.91:1) | 600×315; 200×200 absolute minimum | 8 MB | Not listed; JPEG and PNG are safe | [Meta](https://developers.facebook.com/docs/sharing/webmasters/images) |
| LinkedIn | 1.91:1 | 1200×627 | 5 MB | JPG, PNG, GIF | [LinkedIn Help](https://www.linkedin.com/help/linkedin/answer/a521928) |
| X (Twitter) | 2:1 (`summary_large_image`) | 300×157; max 4096×4096 | 5 MB | JPG, PNG, WebP, GIF | [X cards docs (archived)](https://web.archive.org/web/2025/https://developer.x.com/en/docs/twitter-for-websites/cards/overview/summary-card-with-large-image) |
| Slack | Uses `og:image` / `twitter:image` | Not published | Not published | Common web formats | [Slack robots](https://api.slack.com/robots) |
| Discord | Uses `og:image`; large with `twitter:card` = `summary_large_image` | Not published | Not published | PNG, GIF, JPEG, WebP, AVIF | [Discord docs](https://docs.discord.com/developers/link-previews/overview) |
| WhatsApp | Uses `og:image` | At least 300 px wide, ratio up to 4:1 | Under 600 KB | Not listed; JPEG is safe | [Meta](https://developers.facebook.com/documentation/business-messaging/whatsapp/link-previews/) |
| Telegram | Uses `og:image` | Not published | Not published | JPEG, PNG | No official spec |

Where a platform publishes nothing, the honest answer is "1200×630 works, and smaller files are fetched more reliably". The tightest published limit is WhatsApp's 600 KB — so a compressed JPEG is the one file that fits everywhere.

## Facebook (and Messenger, Instagram link stickers)

Meta's [image guidelines](https://developers.facebook.com/docs/sharing/webmasters/images) say it plainly: "Use images that are at least 1200 x 630 pixels for the best display on high resolution devices", and at minimum 600×315 "to display link page posts with larger images". Below that you get a small thumbnail; below 200×200 the image is not used. The file must not exceed 8 MB, and Meta asks you to "keep your images as close to 1.91:1 aspect ratio as possible to display the full image in Feed without any cropping."

Add `og:image:width` and `og:image:height`. Meta explains that with them the crawler "can render the image immediately without having to asynchronously download and process it" — otherwise the first share of a new page can appear without an image.

## LinkedIn

LinkedIn's [help page for website owners](https://www.linkedin.com/help/linkedin/answer/a521928) gives a 5 MB maximum, a **minimum** of 1200×627 pixels and a recommended 1.91:1 ratio, in JPG, PNG or GIF. Images narrower than 401 pixels appear as a small thumbnail. Note what is missing from the list: WebP. A WebP `og:image` that works on X can fail on LinkedIn, so do not serve WebP as your share image.

LinkedIn reads `og:title`, `og:image`, `og:description` and `og:url`. Check a URL with the [Post Inspector](https://www.linkedin.com/post-inspector/).

## X (Twitter)

For `twitter:card` set to `summary_large_image`, [X's documentation](https://web.archive.org/web/2025/https://developer.x.com/en/docs/twitter-for-websites/cards/overview/summary-card-with-large-image) (the live page has moved behind X's developer portal; this is the archived copy) states images "support an aspect ratio of 2:1 with minimum dimensions of 300x157 or maximum of 4096x4096 pixels", must be under 5 MB, and may be JPG, PNG, WebP or GIF (only the first frame of a GIF). A 1200×630 image is 1.905:1, so X trims a few pixels from the top and bottom — invisible if you keep text away from the edges.

X falls back to the Open Graph property when an X-specific one such as `twitter:image` is missing ([cards markup](https://developer.x.com/en/docs/x-for-websites/cards/overview/markup)), but `twitter:card` is the tag that selects the card type — set `<meta name="twitter:card" content="summary_large_image">` explicitly to get the large image.

## Slack

Slack's unfurler (`Slackbot-LinkExpanding`) reads oEmbed, Twitter Card and Open Graph tags, fetches as little of the page as it can, and caches the result "for around 30 minutes", according to [Slack's robots page](https://api.slack.com/robots). Slack publishes no image size; 1200×630 displays fully. Slack also does not honour `robots.txt` for unfurling, so a `Disallow` rule will not hide your previews there.

## Discord

Discord's [link preview docs](https://docs.discord.com/developers/link-previews/overview) list the tags it reads — `og:title`, `og:description`, `og:image`, the `twitter:` equivalents and `theme-color` for the accent bar — and the image formats PNG, GIF, JPEG, WebP and AVIF. Give `og:image:width` and `og:image:height`, otherwise Discord downloads the image just to measure it. The page must answer with HTML within 10 seconds, and previews are cached for about 30 minutes. Discord publishes no pixel size; 1200×630 renders without cropping.

## WhatsApp, Telegram and iMessage

Only WhatsApp publishes hard numbers; the other two give guidance:

- **WhatsApp** wants an absolute `og:image` **under 600 KB**, at least 300 px wide, with an aspect ratio no wider than 4:1, and the page's `<head>` within its first 300 KB ([Meta](https://developers.facebook.com/documentation/business-messaging/whatsapp/link-previews/)). The often-repeated "under 300 KB image" is a misreading of that `<head>` limit. There is no cache-refresh tool.
- **Telegram** uses `og:image` and caches previews on its servers; [@WebpageBot](https://t.me/WebpageBot) refreshes a URL's preview for new messages.
- **iMessage** builds rich links from the page's Open Graph tags without running JavaScript. Apple's [TN3156](https://developer.apple.com/documentation/technotes/tn3156-create-rich-previews-for-messages) asks for images at least 900 px wide and pages under 1 MB.

## Safe zone and file size

Because X trims to 2:1 and some apps round corners or overlay a domain label, keep text and logos inside roughly 1080×560 in the centre of a 1200×630 canvas. For file size, aim well under 1 MB: a 1200×630 card with flat colours and text is typically 50–300 KB as PNG or JPEG. Huge files are the most common reason a preview shows on one platform and not on another.

A 2× image (2400×1260) can look slightly crisper on high-density screens, at roughly four times the file size. Either is fine as long as the ratio stays 1.91:1 and the file stays small; if you are near a size limit, use 1×.

## A complete, portable set of tags

```html
<meta property="og:title" content="How we cut our image pipeline to 900 ms">
<meta property="og:description" content="A short summary, under about 155 characters.">
<meta property="og:url" content="https://example.com/blog/image-pipeline">
<meta property="og:type" content="article">
<meta property="og:image" content="https://example.com/og/image-pipeline.png">
<meta property="og:image:width" content="1200">
<meta property="og:image:height" content="630">
<meta property="og:image:alt" content="Title card: How we cut our image pipeline to 900 ms">
<meta name="twitter:card" content="summary_large_image">
```

If you generate images rather than design each one, render them at exactly this size: Shareglint's built-in templates are 1200×630, and `scale: 1` returns exactly 1200×630 pixels instead of the default 2×. To check what each platform actually picked for a URL, see [how to debug og:image not showing](https://shareglint.com/en/guides/og-image-not-showing).

## FAQ

### What is the best OG image size in 2026?

1200×630 pixels, a 1.91:1 ratio, as a JPEG under 600 KB (WhatsApp's limit; everyone else allows 5 MB or more). It meets Facebook's recommendation, LinkedIn's minimum of 1200×627 and X's summary_large_image limits, and Slack, Discord and messaging apps display it well.

### Is 1200×627 or 1200×630 correct for LinkedIn?

Both work. LinkedIn's help page gives 1200×627 as the minimum with a 1.91:1 ratio; 1200×630 is three pixels taller and is the size Facebook recommends, so one 1200×630 image covers both.

### Can I use WebP for og:image?

Not everywhere. X lists WebP as supported, but LinkedIn's help page lists only JPG, PNG and GIF. Use JPEG or PNG for og:image and keep WebP for images inside your pages.

### What happens if the og:image is too small?

Platforms fall back to a small thumbnail next to the text instead of a large card. On Facebook that happens below 600×315 pixels, on LinkedIn below 401 pixels wide; below 200×200 Facebook ignores the image.
