Quick answer
An Open Graph preview shows how a link will look when it is shared: the image, title, description and site name that apps read from a page's og: and twitter: meta tags. Enter a URL in Playxoft's free Open Graph Preview, or paste the page's HTML, to see approximate cards for Facebook, X, LinkedIn, Slack, Discord, WhatsApp and iMessage, plus a checklist that flags a missing og:image, relative URLs, wrong image sizes and a missing twitter:card.
- Seven platform previews
- Fetch any public URL
- Paste HTML for local pages
- Open Graph checklist
- Real image size check
- Edit tags live
How to use the Open Graph Preview
- 1Enter the page's address under Fetch a URL and press Preview. Only the URL is sent.
- 2For a local, staging or password-protected page, choose Paste HTML and paste the page source.
- 3Compare the cards, or pick a single platform to see it larger.
- 4Work through the Checklist from the top: errors first, then warnings.
- 5Press Edit these tags to fix the tags in place and watch the previews update, then copy them back into your page.
How do link previews work?
When someone pastes a link, the app's server fetches the page and reads the tags in its head: og:title, og:description, og:image, og:url and og:site_name from Open Graph, and on X the twitter: tags first. It builds a card from them and caches it.
Two consequences catch people out:
- Crawlers read the HTML the server sends. Apple's guidance for Messages states that link previews do not run JavaScript or follow meta refresh redirects, though server-side redirects are followed (Apple). Tags added by client-side JavaScript are often invisible to preview crawlers, so render them on the server.
- Previews are cached. After you fix a tag, old shares may keep the old card. Ask the platform to fetch the page again with the Facebook Sharing Debugger or the LinkedIn Post Inspector; other apps refresh on their own schedule.
This tool fetches the page the same way, from a server, without running scripts, so what you see is what a crawler gets.
Why is my link preview not showing?
Check these in order. The checklist in the tool tests most of them for you:
- No og:image, or a relative one.
/og.pngmust be a full URL such ashttps://example.com/og.png. - The image cannot be fetched. It sits behind a login, hotlink protection or a firewall, or the URL returns an HTML error page instead of an image.
- The image is too small or the wrong format. Facebook's minimum is 200×200 pixels, and X does not support SVG.
- The page blocks bots. A login wall, a cookie wall or bot protection shows the crawler a challenge page instead of your tags. If this tool cannot fetch your page, many platforms probably cannot either.
- The tags are added by JavaScript, so the crawler never sees them.
- No twitter:card. X may still show a small summary card from Open Graph, but a large image needs
summary_large_image. - An old cached preview. Re-scrape it with the platform's debugger.
What size should an Open Graph image be?
Use 1200×630 pixels, PNG or JPEG, under 5 MB, and keep text and faces away from the edges so a crop does not cut them. That one image satisfies every major platform:
| Platform | What it asks for |
|---|---|
| At least 1200×630 recommended; 600×315 minimum for a large preview; 200×200 absolute minimum; ratio close to 1.91:1; up to 8 MB (Facebook) | |
| At least 1200×627, 1.91:1, up to 5 MB (LinkedIn) | |
| X, large image card | 2:1, from 300×157 up to 4096×4096, under 5 MB; JPG, PNG, WebP or GIF; no SVG (X) |
| X, summary card | 1:1, from 144×144, cropped to a square |
| Messages (iMessage) | At least 900 pixels wide; icons at least 108 pixels square (Apple) |
Also declare og:image:width and og:image:height. Facebook says they let its crawler render the image on the very first share instead of downloading and processing it first.
Which tags does each platform read?
| Platform | Title | Image | Also shows |
|---|---|---|---|
| og:title | og:image | Domain, one line of og:description | |
| og:title | og:image | Domain | |
| X | twitter:title, then og:title | twitter:image, then og:image | Card type from twitter:card |
| Slack | og:title | og:image | Site name and description |
| Discord | og:title | og:image | Site name and description |
| og:title | og:image | Description and domain | |
| Messages | og:title | og:image, else an icon | Site name or domain, no description |
Facebook, LinkedIn, X and Apple document what they read; Slack, Discord and WhatsApp publish less, so their rows describe how their previews usually appear. When og:title or og:description is missing, most apps fall back to the title element and the meta description, which often carry extra branding. Set them explicitly. To write a full set of tags from scratch, use the meta tag generator.
Are the previews exact, and is my page data private?
The cards are close approximations, not screenshots. Each platform changes its layout from time to time, crops differently on phones and desktops, and may show its cached copy. Use them to catch problems early, then confirm with the platform's own debugger before a launch.
Privacy depends on the mode:
- Paste HTML runs entirely in your browser. Nothing is uploaded, which makes it the right choice for staging and local pages.
- Fetch a URL sends only the URL to Playxoft's server. It refuses private and internal network addresses, follows at most three redirects, reads no more than the first 512 KB of the page and stops at the end of the head, gives up after 5 seconds, and returns only the parsed tags. Results are cached for 10 minutes; the page itself is never stored.
In both modes, preview images load straight from your site into your browser.
Frequently asked questions
Last updated by the Playxoft engineering team.