RevealTheme logo

Twitter Card Validator

Fetch any public URL and preview how its Twitter/X Card meta tags resolve. The tool reads five core twitter: tags and flags the required ones that are missing.

How to use this tool

  1. 1

    Paste the full public URL (including https://) of the page you want to inspect.

  2. 2

    Run the tool so the server fetches the page and parses its HTML head.

  3. 3

    Read the status banner: green means card, title, and description were all found; red means at least one is missing.

  4. 4

    Scan the tag table and the rendered card preview to see exactly which twitter: values came back and which show as missing.

What does this Twitter Card validator actually check?

Twitter/X renders a rich Card when you share a link by reading meta tags in the page's HTML head whose name attribute starts with twitter:. This tool fetches the URL on the server, parses the returned HTML with a DOM parser, and pulls the content attribute of exactly five tags: twitter:card, twitter:title, twitter:description, twitter:image, and twitter:site. It marks the page as valid only when card, title, and description are all present, then shows every value in a table with anything absent labelled missing. The card type lives in twitter:card, where summary_large_image gives the wide image layout and summary gives the small thumbnail. Two important limits: this is a subset checker, not a full audit. It does not read twitter:creator, twitter:image:alt, twitter:url, or the app and player Card tag families, and it does not contact X's own servers, so it cannot confirm how X will ultimately crop, cache, or rank your image. The preview only appears when a twitter:image (or fallback og:image-style image) URL is returned. For a definitive render, follow up with X's official Card validator after deploying.

Common use cases

  • Confirm a new blog post exposes twitter:card, twitter:title, and twitter:description before you publish it.

  • Debug why a shared link shows a bare URL instead of a rich card by spotting which required tag is missing.

  • Check that twitter:card is set to summary_large_image when you expect the wide-image layout rather than a small thumbnail.

  • Verify a twitter:image URL actually loads by viewing it in the rendered card preview.

  • Audit a competitor or reference page to see how they configure their five core twitter: tags.

  • Spot-check a staging or production deploy to catch templates that dropped the twitter: meta tags during a build.

Frequently asked questions

Which Twitter Card tags does this tool read?
Exactly five: twitter:card, twitter:title, twitter:description, twitter:image, and twitter:site. It does not parse twitter:creator, twitter:image:alt, twitter:url, or the app and player Card tag families, so treat it as a quick core check rather than a complete audit.
What makes a page show as valid here?
The status turns green only when twitter:card, twitter:title, and twitter:description are all present. twitter:image and twitter:site can be missing and the page will still read as valid, even though a missing image means no large preview will render on X.
Does this contact Twitter/X to test the card?
No. The tool fetches your URL directly and parses the HTML itself. It never calls X's servers, so it cannot show how X caches, crops, or rate-limits the card. Run X's official Card validator for the authoritative render.
Why is there no image in the preview?
The preview block only renders when an image URL is found in the page's tags. If twitter:image is missing, you will see the tag table flag it as missing and no card image will appear.
Does it work if I only have Open Graph tags?
Partly. X falls back to og:title and og:description when the twitter: equivalents are absent, and this tool mirrors that by using og values for the preview text. But twitter:card itself has no og fallback, so without it the status will stay red.
Can I validate a page behind a login or on localhost?
No. The server can only fetch publicly reachable URLs. Pages requiring authentication, internal-only hosts, or localhost addresses will fail to load and return an error instead of a card.
Why does my live card look different from this preview?
This preview is an approximation built from the raw tags. X applies its own image cropping, aspect-ratio rules, caching, and truncation, so the final card on the platform can differ in framing and length even when every tag is correct.

Related tools