Updated 2026-10-20

Open Graph tags for every page

When someone shares your link in Slack, LinkedIn, Facebook, iMessage or X, the preview card is built from Open Graph tags (og:title, og:description, og:image, og:url) and X's twitter:* tags. Without them, the card is a bare URL or whatever text the previewer guesses.

Why your tags may be invisible

Link previewers fetch the raw HTML and don't run JavaScript. Tags that a script adds after the page loads, including those from many client-side SEO tools and from single-page apps that set the head at runtime, never reach them. The tags have to be in the HTML the server sends.

Check what previewers see

curl -s https://example.com/pricing | grep -E 'og:|twitter:'

If that prints nothing but your browser's inspector shows the tags, they're added by JavaScript. LinkedIn's Post Inspector and Facebook's Sharing Debugger show the card each network builds. The free SEO checker reads the same raw HTML and previews the Google, LinkedIn, Slack and X cards in one go.

What Headlark writes

TagValue
og:title, og:descriptionWritten per page, a little more conversational than the search title and description.
og:urlThe page's canonical address.
og:typewebsite, article, product or profile, from the content.
og:image, twitter:imageYour page's existing og:image if it has one, otherwise its most representative image, otherwise the default share image you set for the site. Headlark doesn't create images.
og:site_name, og:localeWhen the page makes them clear.
twitter:card, title, descriptionsummary_large_image when there's an image, otherwise summary.

Which route puts them in the HTML

Try it

The free plan covers one site and 25 pages. Add your site, copy its secret key, and your next build ships with SEO.