Twitter Card Validator for X Link Previews

Fetches your page as Twitterbot, draws the card X will show, and checks it against the card rules X documented, line by line.

  • Pages are fetched as a crawler: nothing is stored
  • free · no sign-up
  • Embed on your site

Or , or .

Testing a card without X’s validator

Paste the page’s address above and press Check tags. The checker asks our server to fetch the page with Twitterbot’s user agent, so you see what X’s crawler gets, including firewall blocks or bot-protection pages that only bots receive. The X preview comes first in the list and in the live preview, and the X’s documented card rules panel tests the page against the limits X last published in its Cards documentation (the docs have since moved; the table below links archived copies).

Pages on localhost, a staging server or behind a login can’t be fetched from outside. Use Paste HTML or the Bookmarklet tab for those; the X rules apply the same way.

Reading the result

  • The card type decides the layout. summary_large_image gives the full-width picture; summary gives a square thumbnail beside the text. Only these two (plus app and player cards) exist. Keep a single twitter:card tag: with several, which one X picks isn’t something to rely on.
  • The image must fit 2:1. A 1200×630 Open Graph image is close enough and gets trimmed slightly at the top and bottom. Anything far from 2:1 is cropped harder, so keep faces and text in the middle.
  • Length limits are X’s, not Google’s. A title over 70 characters or a description over 200 gets flagged even if it’s fine for search results.

Fixing the common failures

If the panel says the image doesn’t load, open the image address in a private window: a 403 there usually means hotlink protection, which also stops Twitterbot. If the Crawlers panel shows X getting a different page from Facebook, look for a rule in your firewall or CDN that treats Twitterbot differently. When everything passes, the Edit tags section writes the corrected <head> code to copy.

X's published rules, as checked above

From X's "Summary card with large image" and "Cards markup" reference, as last published by X (archived August 2024; the docs have since moved and no current X page lists these rules). Once you check a page, the rules panel above tests it against every row a page's tags can break.

WhatX's rule
Card typetwitter:card set to summary_large_image for the big image card (also summary, app or player)
Without twitter:cardwith og:type, og:title and og:description present, a summary card may still be shown
Titleup to 70 characters
Descriptionup to 200 characters
Image shape2:1
Image sizeat least 300×157, at most 4096×4096 pixels, under 5 MB
Image formatJPG, PNG, WEBP or GIF (first frame only); no SVG

Open Graph CheckerSomeone shared their result

Suggested