Open Graph & Link Preview Tester

See how a link will look when shared and audit its OpenGraph, Twitter Card, and meta tags. Fetched on the edge — URL not stored, image never hotlinked.

published

  • [FREE]
  • [NO_SIGNUP]
  • [USES_SERVER]

⚠ Unlike most of the site, this tool runs one request on a server because your browser cannot make it directly. It keeps none of your input — see the tool and the privacy page.

The Open Graph preview tester shows how a link will look when shared and audits the tags that drive it — fetched server-side because a browser can’t read another site’s HTML.

Why this tool has a server

Most tools here are 100% in your browser. This one needs a server for one step: fetching the target page’s HTML, which CORS blocks from client-side JavaScript. The page is fetched on Cloudflare’s edge and the tags are parsed in your browser. The URL is used for the request and not stored.

What it checks

  • Preview card — a mockup from the resolved title, description, domain, and image. The image is shown as a link, not loaded — this site never hotlinks third-party images (it would leak your IP to that host).
  • OpenGraphog:title, og:description, og:image, og:url, og:site_name, og:type, and any others.
  • Twitter Cardstwitter:card, twitter:title, twitter:description, twitter:image.
  • Basic meta<title>, meta description, canonical link, favicon, final URL.
  • Missing-tag warnings — flags absent og:title / og:description / og:image / twitter:card.

Note on platform previews

Facebook, LinkedIn, Slack, Discord, and X each read these same tags but apply their own caching, image rules, and fallbacks. This shows the raw tags a crawler sees; for the final say on a given platform, use that platform’s own debugger and clear its cache.

Frequently asked questions

Why does this need a server?

Reading a page's OpenGraph and meta tags means downloading its HTML, and browsers block cross-site HTML fetches with CORS. So the fetch has to happen on a server. This tool fetches the page from Cloudflare's edge, then parses the tags in your browser with a small parser. The URL is used for the request and not stored.

Why isn't the preview image actually shown?

On purpose. This site never hotlinks third-party images — loading a remote og:image in your browser would leak your IP/visit to that host and conflicts with the site's content-security policy. So the image is shown as a link you can open instead. Every text value (title, description, tags) is shown in full.

Which tags does it check?

OpenGraph (og:title, og:description, og:image, og:url, og:site_name, og:type, …), Twitter Cards (twitter:card, twitter:title, twitter:description, twitter:image), plus the page <title>, meta description, canonical link, and favicon. It flags missing recommended tags (og:title, og:description, og:image, twitter:card).

Why do Facebook / LinkedIn / Slack show a different preview than this?

Each platform reads the same tags but applies its own rules, caching, image-size requirements, and fallbacks — and some require their own crawler to have visited. This shows the raw tags a scraper sees; use each platform's own debugger (and clear its cache) for the final word on that platform.

Does it follow redirects?

Yes — it follows the URL to its final destination and parses that page's tags, showing the final URL.

Can I test a localhost or staging URL?

Only publicly reachable http/https URLs. Localhost, .local/.internal hostnames, and private IP ranges are blocked. For staging, expose it on a public URL (or a tunnel) first.