All tools

Link preview checker

Preview a link on Facebook, Zalo, Telegram and X, and find what breaks it.

Check a URL sends this address to our server, which fetches the public page, its robots.txt and its image and sends back the result. Nothing is stored. Pasting HTML never leaves your device.

The page is also fetched as the other crawlers, to spot a firewall that treats them differently. Zalo does not document its crawler, so its user-agent here is an approximation.

Run a check to see the previews.

What this tool does

Type a page address and the tool fetches the page the way a chat app's crawler does, reads its Open Graph and X card tags, and draws an approximate card for Facebook, Messenger, Zalo, Telegram, X and LinkedIn. It also loads the og:image and measures it, reads the site's robots.txt for the crawlers that build previews, and lists errors, warnings and notes, each with why it matters and how to fix it. A table shows every raw tag it found.

The point is the cases where a card is wrong or empty: the image is too small for the large layout, the address redirects, the title shows broken Vietnamese letters, robots.txt blocks the crawler, or a firewall answers a chat app's crawler with an error page while your browser sees the normal page.

Three ways to check

  • Check a URL. The address is sent to this site's server, which fetches the public page, its robots.txt and its image, and returns the facts as data. Nothing from the page is run or shown as page content, nothing is stored beyond a 60-second cache, and private-network addresses are refused. You can choose which crawler's user-agent the page is fetched with; it is also fetched as the others so differences show up.
  • Paste HTML. Paste the page source or just the head. It is read in your browser and nothing is sent. Without a network the image cannot be loaded, so its size and robots rules are not checked.

What makes a good card

Use an image of 1200 x 630 px, a ratio of 1.91:1. Facebook draws the large card from 600 px wide and a small square thumbnail below that; under 200 px it ignores the image. Keep the file under 300 KB if you can, since a crawler that times out shows no picture, and never above 8 MB. Use PNG or JPEG: SVG is not drawn. Write the image address in full, with https. Keep titles to about 60 characters and descriptions to about 155. Set og:url to the canonical address and add twitter:card so X draws the large card. The Open Graph tag generator writes all of these tags, and the SERP snippet preview measures how the same title and description look in Google. The article Open Graph tags that work explains the details.

Refreshing a preview

Apps remember a preview for days. After fixing the tags, ask them to read the page again. The tool gives you buttons that open the Facebook Sharing Debugger and the LinkedIn Post Inspector in a new tab; it never fetches anything for you there. Telegram re-reads a link when you send it to the @WebpageBot. Zalo has no public debugger and refreshes on its own; adding a parameter such as ?v=2 to the shared link makes it a new address, and the tool can copy that link.

What it cannot tell you

Our server's address is not Facebook's, Zalo's or Telegram's. A block by address, and each app's own cache, are not simulated, so this is a close approximation, not the real crawler. Zalo does not publish how its crawler identifies itself or how its card is laid out, so the Zalo user-agent and card here are approximations kept to what Zalo reads: title, description and image. The drawings of the other apps are approximate too, and every app changes its design from time to time. A noindex tag does not stop previews; the tool notes it so you do not worry.

Frequently asked questions

Why is my link preview not showing?

The usual causes are a missing or tiny og:image, a page that redirects or answers with an error to crawlers, robots.txt blocking the crawler, a firewall that challenges bots, or an old preview still cached by the app. This tool checks each of those and lists what it finds.

What size should the og:image be?

1200 x 630 px, a ratio of 1.91:1, as PNG or JPEG under 300 KB if possible. Facebook draws the large card from 600 px wide, ignores images under 200 px and refuses files over 8 MB.

How do I refresh a preview that is out of date?

Open the Facebook Sharing Debugger or LinkedIn Post Inspector with the buttons here, send the link to Telegram's @WebpageBot, or add a parameter such as ?v=2 to the link you share. Zalo has no public tool and refreshes on its own.

Does noindex stop link previews?

No. A noindex tag only keeps the page out of search results. Chat apps still fetch the page to build the card. To stop previews you would have to block the crawler, which also stops people seeing a card.

Is the Zalo preview accurate?

It is an approximation. Zalo does not document its crawler or card layout, so the drawing keeps to what Zalo reads: the title, description and image. Share a test link in Zalo to see the real card.