Images
How to Make an Open Graph Image (Perfect Social Preview for Every Platform)
July 4, 2026 ยท 8 min read
When you paste a link into Facebook, LinkedIn, Slack, WhatsApp, or X, the big image that appears in the preview card is the Open Graph image. It is the single most visible thing about your link โ a good one earns clicks, and a missing or broken one makes even great content look like spam.
Getting it right is two separate jobs that people often confuse. First, you design an image at the correct dimensions. Second, you add a few meta tags to your page so the platforms actually know to use it. Skip the second part and your carefully made image never shows up.
This guide covers the exact size to use, the meta tags that make the preview appear, where to keep your text so nothing gets cropped, why the image sometimes refuses to update, and how to make one for free without opening a design app.
What an Open Graph image actually is
Open Graph is a small set of meta tags that Facebook introduced in 2010 so any web page could describe how it should look when shared. Almost every platform now reads them: Facebook, LinkedIn, WhatsApp, iMessage, Slack, Discord, and Pinterest all use the same og: tags, and X (Twitter) reads its own twitter: tags but falls back to Open Graph when they are missing.
The image is set by one tag โ og:image โ that points at a full, absolute URL. When someone shares your link, the platform fetches your page, reads that tag, downloads the image, and renders the preview card. No tag, no card: most platforms then show a bare link or grab a random image from the page, which rarely looks good.
The right size: 1200 ร 630
The safe, universal size is 1200 ร 630 pixels โ an aspect ratio of roughly 1.91:1. It is large enough to look sharp on high-resolution screens and matches what Facebook and LinkedIn render at full width. X's large summary card uses 1200 ร 628, close enough that a single 1200 ร 630 image works everywhere.
Do not go much smaller. Facebook needs at least 200 ร 200 to show anything, and below about 600 ร 315 it shrinks your link to a tiny thumbnail instead of a full-width card. When in doubt, make it bigger: one 1200 ร 630 image reused across every platform is simpler than juggling per-network sizes.
| Platform | Recommended size | Notes |
|---|---|---|
| Facebook / LinkedIn | 1200 ร 630 | Full-width card, the 1.91:1 default |
| X (Twitter) large card | 1200 ร 628 | Needs twitter:card = summary_large_image |
| WhatsApp / iMessage / Slack | 1200 ร 630 | Reads og:image directly |
| 1000 ร 1500 | Prefers tall 2:3 โ only worth a separate image if Pinterest matters |
The meta tags that make it show up
Designing the image is only half the job. These tags go in the head of your page so platforms know what to display. At minimum you want the image, a title, a description, and the page URL:
- <meta property="og:image" content="https://example.com/og.png" /> โ must be an absolute HTTPS URL, not a relative path.
- <meta property="og:title" content="Your headline" /> โ often punchier than the page's own title tag.
- <meta property="og:description" content="One-line summary" /> โ the grey text under the title.
- <meta property="og:url" content="https://example.com/page/" /> โ the canonical link being shared.
- <meta name="twitter:card" content="summary_large_image" /> โ tells X to use the big image instead of a small thumbnail.
- Optional but recommended: og:image:width and og:image:height (1200 and 630) so platforms can lay out the card before the image finishes loading.
Safe zones: where to keep your text
Different platforms crop the card differently, and some overlay their own UI on top of it. Keep anything important โ your headline, logo, key numbers โ within the central area, with roughly a 10 percent margin on every side.
Watch the corners especially. LinkedIn and some feeds round the corners, X can letterbox slightly, and play buttons or profile avatars sometimes sit over the bottom edge. Text that runs right to the edge is the first thing to get clipped.
Why your image won't update (and how to force it)
The most common frustration is changing the image and seeing the old one keep appearing. That is caching: platforms store your preview for days so they don't re-fetch on every share, and they will not pick up a new image on their own quickly.
- Use the platform's re-scrape tool: Facebook's Sharing Debugger, LinkedIn's Post Inspector, and X's Card Validator each re-fetch your page and refresh the cached preview.
- Make sure the URL is absolute and served over HTTPS โ relative paths and mixed content silently fail.
- Keep the file reasonably small (well under 5 MB, ideally under about 1 MB) so the fetch doesn't time out.
- Check the image actually loads in a private browser window โ if it is behind a login or a hotlink block, the crawler can't see it either.
How to make one without a design tool
You don't need Photoshop or Canva. Because an OG image is just a 1200 ร 630 rectangle of text and colour, you can build it in HTML and export it as an image. Write a simple styled box at exactly 1200 ร 630 โ a background, your headline, maybe a logo โ then render it to PNG.
The free HTML to Image tool on this site does exactly that: paste your HTML, choose the OG Image (1200 ร 630) preset, set Scale to 2x for a crisp result, and download. Everything happens in your browser, so there's no signup and nothing is uploaded. Duplicate the template, swap the headline, and you have a matching image for every post.
Frequently Asked Questions
1200 ร 630 pixels (about a 1.91:1 ratio) is the safe universal size. It renders full-width on Facebook and LinkedIn and works for X's large card too. Avoid going below 600 ร 315, which triggers a small thumbnail instead of a full card.
Almost always caching. Platforms store your preview for days, so a new image won't appear until you re-scrape the page with Facebook's Sharing Debugger, LinkedIn's Post Inspector, or X's Card Validator. Also confirm the og:image URL is absolute and served over HTTPS.
Usually no. X falls back to your og:image when the twitter: tags are missing, so one 1200 ร 630 image works everywhere. Just add twitter:card = summary_large_image so X shows the big version rather than a small thumbnail.
PNG or JPEG, kept well under 5 MB and ideally around 1 MB or less so the crawler can fetch it quickly. JPEG is smaller for photographic backgrounds; PNG is better for flat colour, sharp text, and logos.
Yes. Design a 1200 ร 630 layout in HTML and export it with a free browser tool like HTML to Image โ no design software, no signup, and nothing uploaded to a server.
Related Tools
Paste a styled 1200ร630 layout, pick the OG preset, and export a crisp PNG in your browser.
compress your OG image so previews load fastShrink the exported PNG or JPEG so platforms fetch it without timing out.
resize an image to the 1200ร630 OG sizeAlready have artwork? Resize it to the exact Open Graph dimensions in a couple of clicks.