Open Graph & Social Preview Inspector
Fetch any live URL, inspect its Open Graph and Twitter/X tags, simulate social previews, and validate og:image readiness.
This tool fetches URLs server-side via the CodeAva Worker fetch layer — your browser never contacts the target directly. The fetched HTML is used only to extract metadata and is not stored or logged. Image dimensions are read from binary headers; no full image is stored.
This tool fetches URLs server-side via the CodeAva Worker fetch layer — your browser never contacts the target page directly. HTML is parsed in memory to extract metadata tags and is not stored, logged, or archived. The image probe reads binary headers to determine dimensions and is not stored. No user data or submitted URLs are retained beyond the duration of the request.
Why Open Graph tags matter for social sharing
When someone shares a link on LinkedIn, Slack, Twitter/X, or in a messaging app, the visual preview — the card with a title, description, and image — is driven almost entirely by the Open Graph and Twitter/X card tags in the page's <head>. A broken, missing, or poorly sized og:image can make a carefully crafted blog post or product launch look like a blank or low-quality link — reducing click-through rates before anyone reads a word.
The challenge is that social platforms cache previews, so a broken image or missing title may persist even after you fix the underlying tags. And static copy-paste simulators can only show you what you have typed — not what the live server is actually returning. This tool fetches the live page server-side, extracts every relevant tag, resolves and probes the referenced image for dimensions and accessibility, and simulates how the link may appear across major platforms — so you can debug what is actually live, not what you think is live.
The preview simulations are approximations based on Open Graph protocol rules and practical platform heuristics. Each major platform (Facebook, LinkedIn, Twitter/X, Slack, iMessage) has its own crawler, caching layer, and rendering quirks. This tool gives you a reliable starting point and validation layer — for confirming a cache refresh, use the platform's own debugging tool such as the LinkedIn Post Inspector or Facebook Sharing Debugger.
What this tool helps with
Best for
- Debugging a missing social preview imagefetch the live page and check whether og:image is present, absolute, accessible, and correctly sized.
- Validating tags after a CMS publishconfirm that the Open Graph tags the CMS is generating match your expectations before sharing.
- Checking og:image dimensions before a campaign launchprobe the actual pixel dimensions and aspect ratio against the 1200×630 recommendation.
- Identifying missing twitter:card or og:urlcatch missing fields that cause degraded or missing previews on specific platforms.
- Understanding why Slack or LinkedIn shows an old previewconfirm the live page tags are correct — if they are, the issue is platform caching, not your source code.
- Auditing social metadata across multiple URLsinspect each page individually to verify consistent title, description, and image across a site section.
Limitations to know
- Guaranteeing exact platform renderingpreviews shown here are simulations. Each platform renders its own card — use official debuggers to confirm platform-specific behavior.
- JavaScript-rendered metadatathis tool does not execute page JavaScript. Tags injected by client-side frameworks will not appear unless the server also renders them into the HTML response.
- Forcing platform cache refreshCodeAva shows what the live server currently returns. Cache refreshes on LinkedIn, Facebook, or Slack require those platforms' own tools.
- Non-public pagesthe fetch layer requires a publicly accessible URL. Pages behind authentication, VPNs, or private networks cannot be inspected.
How to use the Open Graph Inspector
- 1
Enter the page URL
Type or paste the public URL of any page you want to inspect. HTTP and HTTPS are supported.
- 2
Click Inspect
The tool fetches the live HTML server-side and extracts all Open Graph, Twitter/X, and standard metadata tags.
- 3
Review social preview simulations
Open the Preview tab to see platform-style card simulations for Facebook/LinkedIn, Twitter/X (both card types), Slack/Discord, and iMessage/WhatsApp. These are approximations — label "simulation" is shown on each.
- 4
Check extracted tags and fetch details
The Tags tab shows every tag value alongside HTML title, meta description, canonical, and the raw fetch details including final URL and status code.
- 5
Validate the social image
The Image tab probes the og:image URL directly — checking whether it is absolute, accessible, what content type it returns, its pixel dimensions, aspect ratio, and file size.
- 6
Fix issues and re-inspect
The Issues tab groups findings into Critical, Warnings, and Informational with detail for each. Fix the flagged tags in your source, publish, then click Inspect again to confirm the live page reflects the changes.
Common issues and fixes
og:image is a relative URL
Social crawlers require an absolute URL for og:image — for example https://example.com/images/social.jpg. A relative path like /images/social.jpg will not resolve correctly. Update your og:image tag to use a full absolute URL including the scheme and domain.
og:image is smaller than 600 px wide
Images narrower than 600 px will not trigger a large social card on most platforms. Aim for at least 1200 × 630 px (1.91:1 ratio) for strong large-card support across Facebook, LinkedIn, and Slack. Use the Image Optimizer to resize and export at the right dimensions.
og:image file is too large (over 5 MB)
Large images may be refused or degraded by social crawlers. Most platforms work best with images under 1 MB. Compress and convert to WebP or JPEG using the Image Optimizer, then re-inspect.
twitter:card is missing
Without twitter:card, Twitter/X will not render a rich preview card. Add <meta name="twitter:card" content="summary_large_image"> for a prominent visual card, or "summary" for a compact card with a thumbnail.
og:title and twitter:title show different values
This is not a blocking error, but it can cause inconsistent previews across platforms. If intentional — for example, a shorter title for Twitter — confirm both values are correct. Otherwise, align them to avoid surprises.
LinkedIn still shows an old image after I fixed og:image
LinkedIn caches social previews aggressively. After updating og:image, use the LinkedIn Post Inspector (linkedin.com/post-inspector) to force LinkedIn to re-crawl and refresh the cached preview for that URL.
og:image returns a 404 or is inaccessible
The image URL in og:image returned an error or could not be fetched. Verify the image exists at the declared URL, that the server does not block requests from crawlers, and that the URL does not require authentication.
og:url is missing
og:url declares the canonical URL for this content as a social object. Missing it can cause inconsistent share counts and URL display on some platforms. Add <meta property="og:url" content="https://example.com/your-page/"> to your page head.
Frequently asked questions
Related tools
Why is my Open Graph image not showing up on LinkedIn or Facebook?
The most common causes are a relative og:image URL (social crawlers require an absolute URL including scheme and domain), an image that is too small (under 600 px wide will not trigger a large card), an image that is too large (over 5 MB may be refused), or stale platform caching where the platform is still serving a previously crawled version of the tag.
The fastest way to diagnose the issue is to fetch the live page with this tool, inspect the actual returned og:image value, and validate the image directly. If the tags are correct and the image is accessible, the issue is likely platform caching — use the LinkedIn Post Inspector or Facebook Sharing Debugger to force a re-crawl.
Social tag requirements cheat sheet
A practical reference for the tags most relevant to social sharing. Actual platform behavior can vary — this table reflects commonly observed requirements and strong recommendations.
| Tag | Purpose | Practical status |
|---|---|---|
| og:title | The title shown in social previews | Required by core Open Graph protocol |
| og:description | The description shown below the title | Strongly recommended |
| og:image | The preview image — must be an absolute URL | Required for image cards; critical to get right |
| og:url | Canonical URL for the social object | Strongly recommended for consistent share counts |
| og:type | Content type — website, article, etc. | Defaults to "website" if absent; set explicitly |
| twitter:card | Controls Twitter/X card format | Required for rich Twitter/X previews |
| twitter:title | Title override for Twitter/X | Falls back to og:title if absent |
| twitter:description | Description override for Twitter/X | Falls back to og:description if absent |
| twitter:image | Image override for Twitter/X | Falls back to og:image if absent |
Platform crawlers, caching, and what live tags actually mean
Open Graph is the base protocol used by Facebook and adopted by the majority of social platforms and messaging apps. Tags follow the og:* property convention defined at ogp.me and are read from the <head> of the HTML response.
LinkedInrelies on Open Graph for link shares. It expects og:image to be absolute, at least 1200 × 627 px for a large card, and under 5 MB. LinkedIn's cache can persist for days — use the Post Inspector to force a refresh after updating tags.
Slack crawls links and looks for Open Graph tags, Twitter Card tags, and oEmbed endpoints. It caches responses, so an updated og:image may not appear in Slack immediately for previously shared URLs.
Live server output and cached platform output are not always the same thing.This tool shows you what the live server is currently returning — which is the correct starting point for diagnosis. If tags are correct here but a platform still shows wrong data, the issue is the platform's cache, not your page.