Link preview audit · Mon, 09 Nov 2026 17:27 UTC
We followed links from the home page and sampled the sitemap (31 pages listed), up to 3 clicks deep and at most 12 pages per section, and checked 1 page. Here is what people see when they share them.
Pages in one section usually share a template, so one fix there fixes them all.
| Section | Pages | Grade | What most of them get wrong |
|---|---|---|---|
| Top-level pages | 1 | C · 66 | Image is only 400×400 |
| App | Good | Needs work | Broken | No image | Small image |
|---|---|---|---|---|---|
| iMessage | 0 | 1 | 0 | 0 | 1 |
| 0 | 1 | 0 | 0 | 1 | |
| Google Messages | 0 | 1 | 0 | 0 | 1 |
| Telegram | 0 | 1 | 0 | 0 | 1 |
| Slack | 0 | 1 | 0 | 0 | 1 |
| Discord | 0 | 1 | 0 | 0 | 1 |
| X | 0 | 1 | 0 | 0 | 1 |

preview-lab.fly.dev
Put this in your page template’s <head>. Every page then gets a 1200×630 card built from its own title, price, author or date. After the line, 1 of 1 pages would show a large image in iMessage. Add <meta name="twitter:card" content="summary_large_image"> for large cards on X and Discord too.
<meta property="og:image" content="https://getpreviewlab.com/og/{your-site}?u={{ page.url }}">
| Grade | Page | Apps | Biggest problem |
|---|---|---|---|
| C | preview-lab.fly.dev/demo/atelier | Image is only 400×400 |
Grades use the same checks as Preview Lab’s “Check a link”. Apps don’t publish their exact rules, so these follow widely observed behaviour. The phone pictures are close mock-ups, not screenshots.