Check the Open Graph and Twitter Card tags that control your social share preview. Catch the missing share image or description that makes your links look broken in feeds and kills click-through.
⚡ Interactive demo — sample data
2 issues found — no share image set and the Twitter card type is missing.
og:title: 'Introducing Our 2026 Spring Collection' — presentLooks good
og:description: present (118 chars) — fits before the cutLooks good
og:image: missing — link shares as a text-only card with no pictureIssue
twitter:card: missing — defaults to the small thumbnail; set summary_large_imageWarning
og:type: article — correct for a blog postLooks good
Check the Open Graph and Twitter Card tags that control your social share preview. Catch the missing share image or description that makes your links look broken in feeds and kills click-through.
How it works
Enter your page URL
Paste any public URL and run the check. We fetch the page's HTML and read the Open Graph (og:) and Twitter Card (twitter:) meta tags — the exact tags Facebook, LinkedIn and X read to build the card people see when your link is shared.
Review the share card and warnings
You get a mock share card built from your real og:title, og:description and og:image, plus flags for the tags that matter most: a missing share image (the biggest click-through killer), an absent title or description, and whether your Twitter card type is set for a large image.
Add the missing tags and re-run
Add or fix the Open Graph and Twitter tags in your template or SEO plugin — especially a 1200×630 share image — then re-run the check. Social platforms cache aggressively, so use each platform's debugger to force a fresh scrape after you fix it.
What we check
og:image (share image) — Checks for an Open Graph image — the single biggest factor in how your link looks in a feed. Without it, your link shares as a tiny, text-only card. The recommended size is 1200×630 pixels (a 1.91:1 ratio), at least 200×200, under ~5 MB.
og:title — Reads the title platforms show on the card. If it's missing, most platforms fall back to your <title> tag — usable, but you lose the chance to write a punchier, share-optimized headline.
og:description — Reads the one or two lines of description under the card title. Missing it means platforms guess from page text or show nothing. Roughly 2–4 lines (~200 characters) renders before it's cut off.
twitter:card type — Checks the Twitter/X card type. 'summary_large_image' produces the big, edge-to-edge image card; plain 'summary' produces a small thumbnail. We flag a missing card type so you don't default to the smaller layout.
twitter:image — Checks for an X-specific image. If it's absent, X falls back to your og:image — which is fine, but a dedicated twitter:image lets you crop differently for the card's aspect ratio.
og:type — Reports the content type (article, website, product, etc.). It defaults to 'website' when unset; setting 'article' on blog posts enables richer treatment on some platforms.
Tags in source vs. browser view — Reads the tags straight from the HTML a crawler receives — not from JavaScript that may add them later — so it catches the common case where tags appear in your browser but not to the social scraper.
Common issues we catch
No og:image — link shares with no picture — By far the most damaging issue. A link with no Open Graph image shares as a plain text card that's easy to scroll past, slashing click-through. Add a 1200×630 image and your link suddenly looks like a real, clickable post.
Image too small or wrong aspect ratio — Images under 200×200 may be ignored entirely, and anything far from the 1.91:1 ratio gets awkwardly cropped — heads cut off, text clipped. Design the share image at a true 1200×630 so it renders edge to edge.
Relative image URL instead of absolute — Social scrapers need an absolute URL like https://example.com/share.jpg. A relative path such as /images/share.jpg often fails to resolve, so the platform finds no image even though one exists on the page.
Tags injected by JavaScript — Open Graph and Twitter tags added by client-side JavaScript may be invisible to social scrapers, which typically read the raw HTML and don't fully run JS. Your browser shows the card; the platform sees nothing. Render these tags server-side.
Stale cached preview after an update — Facebook, LinkedIn and X cache the scraped card for days. After you change the image or title, the old card keeps showing until you re-scrape the URL in the platform's debugger (or the cache naturally expires).
Twitter card defaulting to the small thumbnail — Without twitter:card set to 'summary_large_image', X shows a small square thumbnail beside the text instead of the large banner image. One missing tag is the difference between a prominent card and a tiny icon.
og:url or canonical mismatch — If og:url points to a different address than the one being shared, platforms may scrape and cache the wrong page's preview, so the card shows a title and image from somewhere else on your site.
Where this matters
Facebook — Reads Open Graph tags (og:title, og:description, og:image, og:url). Facebook's Sharing Debugger is the canonical place to see exactly what it scraped and to force a fresh re-scrape after you fix tags.
LinkedIn — Also relies on Open Graph tags and caches them hard. Use the LinkedIn Post Inspector to clear LinkedIn's cache; without it, your updated image can take a long time to appear.
X (Twitter) — Reads twitter: tags first, then falls back to Open Graph. 'summary_large_image' gives the big banner card; without a card type you get the small thumbnail layout.
Slack, Discord, WhatsApp & iMessage — Messaging apps generate link unfurls from the same Open Graph tags. Get og:title, og:description and og:image right and your link previews cleanly across all of them — no per-app work.
Pinterest & WordPress / Shopify share plugins — Pinterest reads og:image (and supports its own rich-pin tags), while SEO and social plugins on WordPress and Shopify write these tags for you — sometimes leaving the image blank by default, which this tool catches.
Frequently asked questions
What are Open Graph tags?
Open Graph (OG) tags are meta tags in your page's HTML that tell social platforms how to display your link when it's shared. The key ones are og:title, og:description and og:image. Facebook created the standard, and most platforms — including LinkedIn, Slack and Discord — now read it.
What size should my social share image be?
Use 1200×630 pixels — a 1.91:1 ratio that renders as a full-width image card on Facebook, LinkedIn and X. Keep it at least 200×200 and under about 5 MB. Anything far from that ratio gets cropped, often cutting off faces or text.
What's the difference between Open Graph and Twitter Card tags?
Open Graph tags (og:) are read by Facebook, LinkedIn and most apps. Twitter Card tags (twitter:) are X's own version. X falls back to Open Graph when its tags are missing, so you can usually rely on OG and just add twitter:card set to summary_large_image for the big image layout.
Why does my link share with no image?
Usually the og:image tag is missing, points to a relative URL the platform can't resolve, references an image that's too small, or is added by JavaScript the scraper doesn't run. Add an absolute-URL 1200×630 image rendered in the page's HTML and the image will appear.
I fixed my tags but the old preview still shows — why?
Social platforms cache the scraped preview for days. Your tags are correct immediately, but the platform keeps serving the cached card until you force a re-scrape — use Facebook's Sharing Debugger or LinkedIn's Post Inspector to refresh it on demand.
Do social tags help my SEO?
Not directly — Google doesn't rank pages on Open Graph tags. But better-looking share cards earn more clicks and shares, which drives traffic and can lead to links and brand searches that do help SEO indirectly. Think of it as conversion optimization for your links.
Why does the preview look right in my browser but not when shared?
Social scrapers read the raw HTML and generally don't run JavaScript. If a plugin or framework injects your OG tags after the page loads, your browser shows them but the scraper sees none. Make sure the tags are present in the server-rendered HTML (check view-source).
This is one of several free SEO tools from Custom Web Audits.
For a complete, prioritized analysis of your whole website,
run a full audit.