Skip to content
Backlnk

Open Graph Tags: How to Control Your Link Previews on Every Platform

Short answer

Open Graph tags are meta tags in a page's head that tell platforms such as Facebook, LinkedIn and Slack what title, description, image and URL to show when the page is shared. The protocol requires og:title, og:type, og:image and og:url; add og:description and og:image:alt, and twitter:card for X.

Written by Emily Parker

Published · 9 min read

Abstract illustration of one web page sending matching preview cards with an image, title and domain to several chat and social windows.
On this page

Which og: and twitter: tags each platform reads, the share image sizes they document, how previews are cached and how to fix the most common preview problems.

When someone pastes your link into LinkedIn, Slack, Facebook or X, the platform fetches the page and builds a preview card: a title, a short description, an image and the domain. If the page tells it nothing, it guesses, and the guess is often the wrong text, a logo cropped to a sliver or no image at all. Open Graph tags are how you tell it what to show.

The basics fit in a dozen lines of HTML, but the details trip people up. Each platform reads a slightly different set of tags, documents different image sizes and caches previews for a different length of time, and X's card documentation has disappeared from its live developer site. This guide sets out what each platform actually documents, with copy-ready tags, a per-platform image table and a workflow for fixing stale or broken previews.

  • The Open Graph protocol requires og:title, og:type, og:image and og:url. Add og:description and og:image:alt as well.
  • X reads its own twitter: tags and falls back to Open Graph for the title, description, image and image alt. Add twitter:card to choose the card type.
  • One 1200 × 630 pixel JPG or PNG under 5 MB meets LinkedIn's minimum, Facebook's recommended width and X's large-card minimum; X may crop it to 2:1.
  • Use absolute https URLs, put the tags in the HTML your server returns, and keep exactly one copy of each tag.
  • Platforms cache previews. Facebook's Sharing Debugger and LinkedIn's Post Inspector refresh them; for a new image, use a new image URL.

What Open Graph tags are and which ones you need

The Open Graph protocol was created at Facebook to turn any web page into a "rich object" that platforms can display. It works through <meta property="og:…"> tags in the page's <head>. The protocol names four required properties for every page and a set of optional ones:

PropertyStatus in the protocolWhat to put in it
og:titleRequiredThe page title; Facebook advises leaving out site branding
og:typeRequiredwebsite for most pages, article for articles
og:imageRequiredAbsolute URL of the share image
og:urlRequiredThe canonical URL, used as the page's permanent ID
og:descriptionOptionalA short summary; Facebook shows it below the title
og:image:altShould accompany og:imageWhat the image shows, not a caption
og:image:width, og:image:heightOptionalThe real pixel size of the image
og:site_nameOptionalThe name of your site
og:localeOptionalLanguage and territory, such as en_US (the default)

Three rules from the protocol prevent most problems. URL values must use http:// or https://, so write full addresses, not relative paths. When a tag appears more than once, the first one is preferred in case of conflict. And a page without markup is treated as og:type website, which Facebook also uses as its default.

Open Graph and X card tags for an article
<meta property="og:type" content="article">
<meta property="og:title" content="How to Plan a Three-Day Hike">
<meta property="og:description" content="Route, gear and food for a three-day trail, with a printable checklist.">
<meta property="og:url" content="https://www.example.com/guides/three-day-hike">
<meta property="og:image" content="https://www.example.com/images/share/three-day-hike-1200x630.jpg">
<meta property="og:image:type" content="image/jpeg">
<meta property="og:image:width" content="1200">
<meta property="og:image:height" content="630">
<meta property="og:image:alt" content="Two hikers with backpacks on a ridge trail above a lake">
<meta property="og:site_name" content="Example Outdoors">
<meta property="og:locale" content="en_US">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@exampleoutdoors">

X cards and their fallbacks to Open Graph

X's card documentation is no longer part of its live developer site. When we checked on October 31, 2026, the former developer.x.com card pages redirected to the docs.x.com overview, and the documentation index there contained no cards section. The details below come from archived copies of X's own card pages, captured in January 2026. Treat them as the last published specification and confirm with a real post.

X uses <meta name="twitter:…"> tags, but its markup reference lists an Open Graph fallback for the most important ones, so you rarely need to duplicate content:

twitter:card
The card type: summary, summary_large_image, app or player. If it is missing but og:type, og:title and og:description exist, "a summary card may be rendered".
twitter:title
Falls back to og:title. Maximum 70 characters.
twitter:description
Falls back to og:description. Maximum 200 characters.
twitter:image
Falls back to og:image. Under 5 MB; JPG, PNG, WEBP and GIF are supported (only the first frame of a GIF); SVG is not.
twitter:image:alt
Falls back to og:image:alt. Maximum 420 characters.
twitter:site
Your site's @username. The markup reference lists it as required, while the individual card pages mark it optional; adding it costs nothing.

The archived card pages also ask for a unique image per page and warn against generic images such as a site logo or an author photo used across many pages.

Share image requirements per platform

Image specifications are where platforms differ most. This table collects what each platform's own documentation says.

PlatformDocumented image requirements
FacebookAt least 1080 pixels wide for best display on high-resolution screens; og:image:type lists image/jpeg, image/gif and image/png; declare width and height so the image loads properly the first time it is shared.
LinkedInMaximum 5 MB; minimum 1200 × 627 pixels; recommended ratio 1.91:1. Images under 401 pixels wide display as a thumbnail.
X (summary_large_image)Aspect ratio 2:1; minimum 300 × 157, maximum 4096 × 4096 pixels; under 5 MB; no SVG (archived documentation).
X (summary)Aspect ratio 1:1; minimum 144 × 144 pixels; cropped to a square on all platforms (archived documentation).
SlackFetches the image referenced in the tags to check that it is valid; the pages we reviewed document no size requirements.
Googleog:image is one way to suggest a page's preferred image. Choose a relevant, high-resolution image; avoid logos, images with text and extreme aspect ratios.

Our reading of these documents: one 1200 × 630 pixel JPG or PNG under 5 MB meets LinkedIn's minimum, exceeds Facebook's recommended width and is well above X's large-card minimum. X's 2:1 card may crop it slightly, so keep faces and words away from the edges. WebP works on X, but Facebook's documented type list does not include it, so JPG or PNG is the safe common choice. For compression and file formats in general, see our image SEO guide.

How Facebook, LinkedIn, Slack and X read your tags

Facebook

Meta's guide to sharing for webmasters says that without Open Graph tags its crawler "uses internal heuristics to make a best guess" at the title, description and image. It defines og:url as the canonical URL where likes and shares aggregate, so it should match your canonical link (our guide to duplicate content explains canonical URLs). Your server must support gzip and deflate encoding for pages to be shared correctly.

LinkedIn

LinkedIn Help lists four tags that must exist: og:title, og:image, og:description and og:url. If an image meets the requirements but still doesn't appear, LinkedIn suggests the site may be blocking it or the image may sit in a protected directory.

Slack

Slack's robots page says its link-expanding bot fetches as little of the page as it can, using HTTP Range headers, and looks for oEmbed and Twitter Card / Open Graph tags; it then fetches any referenced image to check it. Responses are cached across Slack for around 30 minutes. Slack also states that it does not honor robots.txt, because it acts on behalf of a person rather than crawling. Since Slack reads as little of the page as it can, our recommendation is to place these tags early in the <head>.

X

X's archived troubleshooting guide says its crawler, Twitterbot, follows robots.txt, so a Disallow rule can stop cards. It also lists a 2 MB limit for page responses, requires the image to be publicly accessible and says the crawler re-reads card tags roughly every seven days.

Staging sites, pages behind a login and images on protected paths cannot be previewed: the platforms' fetchers need public access. Test previews on the live URL, and check that robots.txt, firewall or hotlink protection does not block the image file itself.

Fix stale or broken previews

Most "my preview is wrong" problems are either a tag problem or a cache problem. Work through them in this order:

  1. Check what your server returns. View the page source rather than the browser's element inspector, and confirm each tag appears once, with absolute URLs. None of the platform documentation we reviewed says its fetcher runs JavaScript, so don't rely on tags inserted by scripts.

  2. Open the image URL on its own. It should load publicly over https as a JPG or PNG of the right size, without a login, redirect loop or hotlink block.

  3. Use a new URL for a new image. Facebook states that images are cached by URL and won't update unless the URL changes; X's archived guide says the same.

  4. Refresh Facebook. The Sharing Debugger shows which tags Meta's crawler reads, lists errors and triggers a fresh scrape; otherwise Meta updates scraped content on a standard 24-hour cycle.

  5. Refresh LinkedIn. Run the URL through Post Inspector. LinkedIn notes that only new posts pick up the refreshed preview; existing posts keep the old one.

  6. Allow for the other caches. Slack caches link expansions for around 30 minutes. For X, the archived documentation describes a re-read roughly every seven days.

A team at www.example.com redesigns the share image for a popular guide but uploads it under the same file name, share.jpg. LinkedIn and Facebook keep showing the old picture. The fix: upload the new file as share-2.jpg, point og:image at it, then run the URL through Post Inspector and the Sharing Debugger.

Common Open Graph mistakes

Do

  • Use absolute https URLs in og:url and og:image.
  • Make og:url the same URL as your canonical link.
  • Use a page-specific JPG or PNG of at least 1200 × 627 pixels and declare its width and height.
  • Describe the image in og:image:alt.
  • Keep the X title within 70 characters and the description within 200.

Avoid

  • Relative paths such as /images/share.jpg.
  • A theme and an SEO plugin both printing og: tags with different values.
  • SVG share images or images under 401 pixels wide.
  • Your logo as the share image on every page.
  • Empty content attributes, which leave a tag present but blank.

"Open Graph tags are a ranking factor." None of Google's documentation we reviewed describes them that way. Google does use them as inputs for how a result looks: og:title is one of the sources listed for title links, og:site_name is considered for site names, and og:image can suggest a page's preferred image. So keep your Open Graph title consistent with your <title> and main heading.

Check your tags with Backlnk's Meta Tags & Social Preview

The Meta Tags & Social Preview tool reads every meta tag on a page with its source line and shows how the link will look in Google results, LinkedIn, X, Facebook and Slack. It checks:

  • The four required Open Graph properties, og:description, og:image:alt, absolute URLs and whether og:url matches the canonical URL.
  • The twitter:card type, which value each X field falls back to, and X's 70, 200 and 420-character limits.
  • The share image with one request: HTTP status, an image content type and a file size within 5 MB, with a warning for SVG.
  • Declared og:image:width and og:image:height against LinkedIn's and X's documented sizes.
  • Duplicated tags with conflicting values, empty tags and any oEmbed discovery link, which Slack also reads.

Two limits are worth knowing. It compares the width and height you declare but does not download the image to measure its pixels. And its previews show what your tags supply according to each platform's documentation; platforms can still crop, cache or rewrite what they display. Choose Rendered mode if your tags are added by JavaScript. For titles, canonicals and the rest of your technical setup in one pass, run the free full audit, which e-mails you a combined report.

Next step

Take the page you share most often, add the tag block above with your own values and a 1200 × 630 image, and check it in the Meta Tags & Social Preview tool. Then refresh its preview in the Sharing Debugger and Post Inspector so the next share shows the new card.

Frequently asked questions

Which Open Graph tags are required?
The Open Graph protocol names four required properties: og:title, og:type, og:image and og:url. LinkedIn also lists og:description among the tags that must exist, and the protocol says a page that specifies og:image should also specify og:image:alt.
What size should an Open Graph image be?
Platforms document different sizes. LinkedIn asks for at least 1200 by 627 pixels and at most 5 MB, Facebook recommends at least 1080 pixels wide, and X's large summary card needs at least 300 by 157 pixels at a 2:1 ratio. A 1200 by 630 pixel JPG or PNG under 5 MB meets all three minimums.
Do I need Twitter card tags if I already have Open Graph tags?
Mostly not. X's archived card documentation says twitter:title, twitter:description, twitter:image and twitter:image:alt fall back to their Open Graph equivalents. Add twitter:card to choose the card type, for example summary_large_image, and twitter:site for your account.
Why does LinkedIn or Facebook still show my old preview image?
Both platforms cache previews. Facebook caches images by URL, so publish the new image under a new URL and use the Sharing Debugger to trigger a fresh scrape. On LinkedIn, run the page through Post Inspector; only new posts pick up the refreshed preview.
Do Open Graph tags affect Google rankings?
Google's documentation does not describe them as a ranking factor. It does list og:title among the sources it uses for title links, considers og:site_name for site names and accepts og:image as a hint for a page's preferred image.

How this article was produced

Byline
Emily Parker
First published
Evidence
  • External research (cited below)
  • Editorial interpretation
  • Hypothetical, illustrative examples (marked “Illustrative example”) — not real customer results

Sources

  1. The Open Graph protocol, Open Graph protocol (ogp.me) (accessed Oct 31, 2026)
  2. A Guide to Sharing for Webmasters, Meta for Developers (accessed Oct 31, 2026)
  3. Sharing best practices, Meta for Developers (accessed Oct 31, 2026)
  4. Make your website shareable on LinkedIn, LinkedIn Help (accessed Oct 31, 2026)
  5. Use Post Inspector to refresh URL, LinkedIn Help (accessed Oct 31, 2026)
  6. Cards markup (archived copy captured 2026-01-16; the live page now redirects to docs.x.com), X Developer Platform via Internet Archive (accessed Oct 31, 2026)
  7. Summary with large image (archived copy captured 2026-01-12), X Developer Platform via Internet Archive (accessed Oct 31, 2026)
  8. Summary Card (archived copy captured 2026-01-28), X Developer Platform via Internet Archive (accessed Oct 31, 2026)
  9. Troubleshooting Cards (archived copy captured 2026-01-24), X Developer Platform via Internet Archive (accessed Oct 31, 2026)
  10. Slack Robots, Slack API (accessed Oct 31, 2026)
  11. Unfurling links in messages, Slack Developer Docs (accessed Oct 31, 2026)
  12. Google image SEO best practices, Google Search Central (accessed Oct 31, 2026)
  13. Influencing your title links in search results, Google Search Central (accessed Oct 31, 2026)
  14. Provide a site name to Google Search, Google Search Central (accessed Oct 31, 2026)

About the author

Emily Parker

On-Page SEO & Content Strategist