iMessage Link Preview Checker
Messages on iPhone and Mac builds a rich link from Open Graph tags. Paste a URL to confirm those tags are in the HTML. The cards below are the other platforms that read the same tags — Peekly does not draw an iMessage bubble.
What the imessage link preview checker checks
- What Messages reads. With no Open Graph tags, Messages shows a gray bubble: the page title, the domain, and a small icon. og:title and og:image are what turn that into a rich link. Keep the site name in og:site_name, not repeated in the title. Serve the same tags to every user agent. Apple documents og:description for the text of a social post, not as a required line on every page.
- Image size. Apple's guidance is an image at least 900 pixels wide. An image under 150 pixels wide may be ignored or shown as an icon. Also ship a square icon — an apple-touch-icon or a favicon — at least 108 pixels on a side. If the preview image is too small, Messages falls back to that icon. Prefer a graphic image; text inside the image gets hard to read when the bubble scales.
- Why the rich link fails. Link previews do not run JavaScript and do not follow a meta refresh. The tags have to be in the HTML response. Server redirects are followed. The HTML itself is limited to 1 MB, and the icon, image, and video together are limited to 10 MB. A page behind a login should still describe the real page — otherwise every share says Sign In. Apple does not publish a cache-busting tool for Messages.
Tags covered: og:title · og:image · og:site_name · og:description · apple-touch-icon
More checkers
Twitter Card ValidatorOpen Graph CheckerLinkedIn Link Preview CheckerDiscord Embed PreviewWhatsApp Link Preview CheckerSlack Link Preview CheckerFacebook Link Preview CheckerOpen Graph Image SizeAll platforms
What each platform reads
- X / Twittertwitter:card, twitter:* → og:* fallback1200×630 (min 300×157), < 5 MB
- Facebookog:title, og:description, og:image1200×630, 1.91:1
- LinkedInog:title, og:image (og: only)1200×627, 1.91:1
- Discordog:site_name, og:*, theme-color, twitter:cardLarge image needs summary_large_image
- Slackog:site_name, og:title, og:description, og:image1200×630
- WhatsAppog:title, og:description, og:imageKeep < 300 KB
Guidance based on each platform's public documentation and observed behavior. Platforms change their rules without notice.
FAQ
+Is Peekly free?
Yes. Checking a single URL is free forever — no signup and no limit on one-off checks. Batch watching and monitoring may arrive later as a paid Pro plan; the free single-URL tool stays.
+Why does my link show no image when I share it?
Usually one of four things: there's no og:image tag, the image URL is relative instead of absolute, the image is behind a login, firewall or bot block, or the file is too big or in an unsupported format like SVG. Peekly checks all four and tells you which one it is.
+What size should my og:image be?
1200×630 pixels (a 1.91:1 ratio) as a PNG or JPG under about 300 KB. That size works for large cards on X, Facebook, LinkedIn, Discord, Slack and WhatsApp.
+Do I need twitter: tags if I already have Open Graph tags?
X reads og:title, og:description and og:image as fallbacks, but you still need twitter:card set to summary_large_image if you want the big image card. Without it, X shows a small thumbnail.
+I fixed my tags but the old preview still shows. Why?
Platforms cache link previews, sometimes for days. Facebook and LinkedIn let you force a refresh with their own debugging tools. On X, Slack and Discord the cache usually expires on its own, or you can add a query string such as ?v=2 to the URL.
+Do you store the pages I check?
No. We fetch the page once to read its <head>, show you the result, and don't save the page or the result. We only fetch public http(s) URLs, and private or internal addresses are blocked.
+Are the previews pixel-perfect?
They're close approximations of each platform's current card layout, built from the same tags the platforms read. Platforms change their designs from time to time, so treat them as a very good guide rather than a screenshot.
$9
One time
A written fix for the batch.
Up to 25 URLs. We check og:image, Twitter cards, size, redirects, and cache, then send copy-paste meta tags within 48 hours. The free single-URL check stays free.