What the checker measures
og:image sets the picture shown when your link is shared, and it’s usually the largest part of the preview. This checker requests the image from our server and reads the file itself, so the results come from the real image and not just what your tags claim:
- Whether the image URL is valid, absolute and on https.
- Whether the image can be fetched, returns an image, and responds quickly.
- The actual format, read from the file. A file named .png may not be a PNG.
- The real width and height, the aspect ratio, and the file size.
- Whether
og:image:widthandog:image:heightmatch the file. - Whether the image has alt text.
You’ll then see the image in previews for Facebook, X, LinkedIn, WhatsApp, Telegram, Discord and Slack, plus a Google result that shows why standard search listings have no image. These previews are approximations of each platform.
The image that works almost everywhere
- Size: 1200×630 pixels, a 1.91:1 ratio.
- Format: JPEG or PNG. WebP and GIF work on most platforms, AVIF on only a few, and SVG on none.
- File size: under 300 KB if you care about WhatsApp, which seems to be the strictest. Facebook allows 8 MB, and X and LinkedIn 5 MB.
- Layout: keep text and logos near the center, since some platforms crop to a square or a 2:1 shape.
<meta property="og:image" content="https://example.com/images/card.jpg">
<meta property="og:image:width" content="1200">
<meta property="og:image:height" content="630">
<meta property="og:image:alt" content="What the image shows">Declaring the width and height helps platforms lay out the image before they’ve downloaded it, which helps the first share of a new page. The cheat sheet lists the rules for each platform.
How size affects the score
The health report flags images below 200×200, since Facebook won’t show them, and images below 600×315, which get a small thumbnail there. It also flags ratios outside 1.6:1 to 2.2:1, which get noticeably cropped. Each finding comes with a fix.
Why your og:image isn’t showing
- The URL is relative:
/images/card.pngwon’t work. Use the full address, starting with https. - The image is blocked: a login, hotlink protection or a bot filter can stop crawlers while your browser loads the image without trouble. Test the URL in a private window, and check your firewall rules.
- The format isn’t supported: SVG is the usual cause. Export a JPEG or PNG.
- The file is too big: you’ll usually notice this on WhatsApp first.
- The tag is added by JavaScript: crawlers don’t run it, so the tag must be in the HTML your server sends.
- The old image is cached: platforms store images separately from pages. Give the new image a new URL, then refresh the page on each platform.
Our crawler has its own user agent, and it can be treated differently from each platform’s crawler. If the image passes here but is missing on one platform, check whether your server or firewall treats that platform’s crawler differently.
Do you need a different image for every page?
Not by hand. A site-wide logo is easy to scroll past, so it’s worth giving important pages their own image, and you can generate them from a template using each page’s title. When you’re done, check your page to confirm the image passes.