Validators
Open Graph Checker
How your link looks when someone shares it
When a link is pasted into Slack, LinkedIn, WhatsApp or X, none of those platforms read your page. They read your Open Graph tags. Missing or wrong tags produce a bare grey rectangle with a URL, which is what a link to your site looks like at exactly the moment somebody is recommending it.
- Free, no signupNo account, no card
- No AI in the score986 deterministic rules
- Nothing publishedYour scans stay yours
- Answers in secondsQuick scan, no browser
This checks the tags that matter: og:title, og:description, og:image and its dimensions, og:type and og:url, plus the Twitter Card equivalents and the card type. It also catches the failure that survives every visual check - a relative image URL, which resolves for you and for nobody else, because scrapers do not have your page's base URL.
Getting this right is unusually cheap. It is a handful of tags, they rarely change, and the payoff is every share of every page looking deliberate.
Why this matters
You pasted the link and it came out blank
Nobody looks at a link preview until the link is already in a channel with forty people in it. The tags that decide how it renders sit in the head of the page, invisible in a browser, and they are usually written once and never looked at again. So the first proper review your preview gets is a public one.
What it costs you when this is wrong
A grey box on the share that mattered
The launch post, the price list, the booking page - pasted into Slack or WhatsApp and rendered as a bare URL beside an empty rectangle. You usually find out when somebody replies asking whether the link is broken.
The old preview outlives the fix
Platforms cache whatever they scraped the first time anyone shared the URL. Correct the tag and the stale title, or the old image, keeps appearing until that platform fetches the page again. A typo shipped at nine can still be on screen at five.
The platform writes your headline for you
With no og:title or og:description, the scraper takes whatever text it can find - the site name, a nav item, the first line of a cookie notice. It reads as a page nobody finished, and you never see it, because you are not the one pasting the link.
Why run it here
Both vocabularies in one pass, no account
Eighteen checks read the og: and twitter: tags together in the same run, so one page does not need one tool per platform. No sign-in, nothing to install.
Each finding gives the tag and the source
Every result carries the exact meta element to paste and a citation behind it - the Open Graph protocol or the HTML Living Standard - with the date that citation was last checked.
Weighted, so you know which two to fix
The eighteen are not a flat list. og:title and og:image carry importance 4 of 10, twitter:creator carries 1, and the results are ordered that way. None of the eighteen are scored, so an optional handle is never counted against you.
This check runs on its own here, and as part of the full audit alongside the other 985 rules. Either way the findings carry their evidence and their citation, and the report is never published or kept.
How to fix link previews
A link preview is decided at share time by a scraper that does not run JavaScript and gives up quickly. Everything it needs must be in the initial HTML.
Add og:title, og:description, og:image and og:url to every page you expect to be shared.
Use an absolute https URL for og:image. A relative path is the most common reason a preview renders blank.
Size the image at 1200x630 and keep it under about 5MB, or it will be dropped silently.
Add twitter:card set to summary_large_image, plus twitter:title and twitter:description.
Make sure the tags are in the server-rendered HTML. A scraper that does not execute JavaScript will never see client-side tags.
What happens when you run it
Enter your address
Just the domain is enough — example.com, with or without the https. No account, no card, no crawl of your whole site.
We render it like a visitor
Your page opens in a real browser and JavaScript runs to completion, so what gets audited is the page a person actually sees — not the raw HTML your server sent. A screenshot comes back with the report as evidence of exactly what we measured.
You get findings you can act on
Up to 986 checks run against that rendered page. Each finding names the rule, quotes the evidence found on your page, cites the public specification behind it, and says what to change. Nothing is a judgement call — run it twice on an unchanged page and the score is identical.
What runs this check
- Real browser rendering
Named because provenance is the product. Every finding in your report says which of these produced it, so you can check the reasoning rather than take a score on faith.
What this checks
18 rules · 0 affect your scoreog:description is the summary shown beneath a shared link. Without it platforms fall back to scraping arbitrary page text.
SEO_OG_DESCRIPTION detectionog:image is the preview thumbnail on every social and messaging platform. A shared link with no image gets materially less engagement.
SEO_OG_IMAGE detectionog:title controls the headline shown when the page is shared on social platforms and in chat apps; without it platforms fall back to guesswork.
SEO_OG_TITLE detectionOpen Graph site name refines how this page is represented when shared or parsed as a rich object. Informational - relevance depends on page type.
SEO_OG_SITE_NAME detectionOpen Graph object type refines how this page is represented when shared or parsed as a rich object. Informational - relevance depends on page type.
SEO_OG_TYPE detectionog:url tells social platforms which URL to attribute shares and engagement to, consolidating them on one address.
SEO_OG_URL detectionWithout a twitter:card declaration, links render as a bare URL on X rather than a rich preview.
SEO_TWITTER_CARD detectionOpen Graph image alt text refines how this page is represented when shared or parsed as a rich object. Informational - relevance depends on page type.
SEO_OG_IMAGE_ALT detectionOpen Graph locale refines how this page is represented when shared or parsed as a rich object. Informational - relevance depends on page type.
SEO_OG_LOCALE detectionTwitter description controls the X/Twitter card presentation. Informational - only relevant if you care about that surface.
SEO_TWITTER_DESCRIPTION detectionTwitter image controls the X/Twitter card presentation. Informational - only relevant if you care about that surface.
SEO_TWITTER_IMAGE detectionTwitter title controls the X/Twitter card presentation. Informational - only relevant if you care about that surface.
SEO_TWITTER_TITLE detectionOpen Graph image height refines how this page is represented when shared or parsed as a rich object. Informational - relevance depends on page type.
SEO_OG_IMAGE_HEIGHT detectionOpen Graph image width refines how this page is represented when shared or parsed as a rich object. Informational - relevance depends on page type.
SEO_OG_IMAGE_WIDTH detectionTells social platforms which other language versions exist.
SEO_OG_LOCALE_ALTERNATE detectionTwitter creator handle controls the X/Twitter card presentation. Informational - only relevant if you care about that surface.
SEO_TWITTER_CREATOR detectionTwitter image alt text controls the X/Twitter card presentation. Informational - only relevant if you care about that surface.
SEO_TWITTER_IMAGE_ALT detectionTwitter site handle controls the X/Twitter card presentation. Informational - only relevant if you care about that surface.
SEO_TWITTER_SITE detection
Questions
- Do I need Twitter Card tags if I have Open Graph?
- Mostly no - X falls back to Open Graph for title, description and image. The one tag worth adding is twitter:card, which selects between a small thumbnail and a large image, and Open Graph has no equivalent.
- Why does my image not show?
- Almost always a relative URL, or an image behind a redirect or authentication. Scrapers fetch it cold from a different network with no cookies - the URL has to be absolute and publicly reachable.
Also checks
This page answers these searches too — they are the same job, so they share one page rather than being split across near-identical ones:
- og tag checker
- twitter card validator
- social share preview
- link preview checker
Other checkers
- HTML ValidatorW3C markup conformance, checked by a real parser
- CSS ValidatorStylesheets parsed and checked against the W3C property grammars
- Schema Markup ValidatorJSON-LD parsed, expanded to real schema.org IRIs, and checked
- Rich Results TestWhich search features your structured data qualifies for
- Website Scam DetectorThe trust signals people and payment processors check before believing a site
- AI ValidatorWhether AI models can find, read, quote and operate your site
- Broken Link CheckerEvery link on the page requested, with blocked and broken told apart
- SEO CheckerTitles, meta, canonicals, indexability and internal linking
- Accessibility CheckerTwo WCAG engines — one in a real browser, one on your markup
- Security Headers CheckerResponse headers, CSP quality, and the TLS certificate underneath
- Core Web Vitals CheckerMeasured for real, plus the page-weight causes behind the numbers
- AI Agent Readiness CheckerCan an agent find your buttons, read your labels and finish the task
- W3C ValidatorMarkup and stylesheet conformance in one pass
- Answer Engine CheckerWhether AI answer engines can quote you, and attribute it
- AI Crawler CheckerWhich AI crawlers your robots.txt actually lets in
- SSL Certificate CheckerA real handshake: certificate, expiry, protocol and cipher
- robots.txt CheckerWhat your robots.txt actually allows, group by group
- Meta Tag CheckerTitles, descriptions, canonicals and robots directives
- Image SEO CheckerAlt text, dimensions, formats and lazy loading
- Mobile-Friendly TestViewport, tap targets and responsive behaviour
- Website CheckerEvery module, one scan, one prioritised fix list
Run the open graph checker now
No signup, no credit card. Quick answers in seconds; a full audit takes about a minute.
Run a free scanNo signup. No credit card. Nothing stored but the result.