Guides
What are open graph tags? The short answer and the six that matter
Four tags are required by the protocol and two more are worth adding; seogeoaeo.ai's checker shows which ones a page really sends.
Open graph tags are meta tags in a web page's head that tell Facebook, LinkedIn, Slack and X which title, description, image and address to show when someone shares the link. The protocol, published at ogp.me, requires four of them (og:title, og:type, og:image and og:url), and most sites add og:description and og:site_name. To see the tags a page really sends, an open graph checker such as seogeoaeo.ai's reads them for you.
The short version
| Question | Answer |
|---|---|
| Where they go | In the page's head, as meta tags with a property attribute |
| Required by the spec | og:title, og:type, og:image, og:url |
| Worth adding | og:description, og:site_name, og:image:alt |
| Who reads them | Facebook, LinkedIn and Slack; X reads its own twitter: tags first and falls back to these |
| What they cost | Nothing, they are plain HTML |
| How to check them | View the page source, or run a checker |
What each tag does
- og:title is the headline on the card.
- og:type says what the page is, such as website or article. The spec says a page without this markup should be treated as a website.
- og:image is the picture, written as a full URL.
- og:url is the canonical address, which the spec calls the page's permanent ID.
- og:description is a short summary; the spec asks for one to two sentences.
- og:site_name is the name of the larger site the page belongs to.
The protocol also defines extra properties for the image: width, height, type and alt. Any page with an og:image should set og:image:alt, according to the spec, and the alt text should describe the picture rather than caption it.
A minimal example
<meta property="og:title" content="Spring pricing update">
<meta property="og:type" content="article">
<meta property="og:url" content="https://www.example.com/blog/spring-pricing">
<meta property="og:image" content="https://www.example.com/og/spring-pricing.jpg">
<meta property="og:image:alt" content="Three plan cards side by side">
<meta property="og:description" content="What changes on April 1 and who it affects.">
<meta property="og:site_name" content="Example">
<meta name="twitter:card" content="summary_large_image">
The last line is for X. X falls back to the og: title, description and image, but twitter:card picks the layout, and without it X may show the small summary card instead of the wide one.
Do the networks agree?
Mostly. Meta lists og:url, og:title, og:description and og:image as its basic tags and recommends og:type and og:locale. LinkedIn says og:title, og:image, og:description and og:url must exist. Slack's link robot looks for oEmbed plus Twitter Card and Open Graph tags. Their image rules differ, though: LinkedIn wants at least 1200 by 627 pixels, Meta recommends 1200 by 630 or larger, and X's large card is 2:1. A 1200 by 630 picture is the common answer.
When two tags give one property different values, the spec says the first one wins. Not every app is that tidy, so keep a single source of tags, for example by turning off the duplicate output of a second SEO plugin.
How to check yours
Open the page source, not the browser's element inspector, because preview crawlers read the HTML your server sends. X's developers say its crawler cannot run JavaScript, so tags a script adds after load are invisible to it.
For a faster read, run the URL through seogeoaeo.ai's open graph tag checker. It lists every og: and twitter: tag, flags missing required ones, og tags written with name= instead of property=, relative image URLs and conflicting duplicates, and tests the share image against each network's limits. A run costs 5 credits.
If all you need is to clear a stale card, Meta's Sharing Debugger and LinkedIn's Post Inspector are free and do that job, which the checker does not.