Blog
Guides6 min read

Your Link Preview Is the Ad: Why the Share Card Decides Whether Anyone Clicks

Nobody reads the URL. They look at the image, the headline, and the one line underneath — and decide from that. Yet share cards are the one piece of marketing that ships with no preview, no error, and no feedback when they break.

Brandon EstrellaBrandon EstrellaFounder
Your Link Preview Is the Ad: Why the Share Card Decides Whether Anyone Clicks

Nobody reads the URL

Think about the last link you clicked in Slack, or on LinkedIn, or in a group chat.

You didn't read the address. You looked at a rectangle — an image, a headline, a line of description — and decided from that, in about a second, whether the thing behind it was worth your attention.

That rectangle is called a share card, and it is generated from a handful of meta tags in your page's HTML. Which means that for every link you have ever shared, the actual advertisement wasn't the copy you wrote in the post. It was the card, assembled automatically from tags you may never have looked at.

Teams that agonize over ad creative routinely ship links whose card is a grey box and a truncated <title>. Not because they decided that was fine — because nothing ever told them.

The feedback loop is broken by design

Most marketing surfaces fail loudly. A broken image on a landing page is visible. A form that doesn't submit generates support tickets. A campaign with no clicks shows up as a flat line in a dashboard.

Share cards fail silently, and in a specific way that defeats normal QA:

  • You can't see it yourself. The card the crawler builds is not the page you see in your browser. You're viewing your own site as a human; the card comes from what a bot got when it asked.
  • It renders differently per platform. Facebook, X, LinkedIn, Slack, iMessage, Reddit and Bluesky all use different crawlers, and plenty of servers answer them differently — usually unintentionally, via a CDN rule, a bot filter, or preview middleware that lets one user-agent through and challenges another.
  • The failure looks like disinterest. A card that renders as a bare URL doesn't error. It just gets fewer clicks, and that shows up in your analytics as a campaign that underperformed. You will blame the copy.

So the one asset that decides whether anyone clicks is also the one asset with no preview step, no error state, and no obvious owner.

What's actually in a card

Four things do most of the work:

TagWhat it controlsThe usual mistake
og:imageThe visual, and most of the clickRelative path, or behind a login, so it silently doesn't render
og:titleThe headlineLonger than the truncation point, so it cuts mid-word
og:descriptionThe line underneathMissing, so the platform improvises from page text
twitter:cardWhether X shows a large image or a thumbnailAbsent, so you get the small one

Two specifics worth committing to memory:

Images want 1200×630. That's the 1.91:1 ratio every major platform crops toward. Supply something square and the crop will take it somewhere you didn't intend — frequently through the middle of your logo or your text.

Titles get cut around 60 characters. Not exactly, and not identically everywhere, but close enough that a 90-character headline is a headline nobody finishes reading.

The image URL also has to be absolute, publicly reachable, and served over HTTPS without authentication. A relative path works fine when you view the page and fails completely when a crawler fetches it, which is exactly the asymmetry that makes this class of bug survive.

The redirect trap, which matters most if you use short links

This one deserves its own section, because it catches people who are otherwise doing everything right.

If your link redirects, and the destination has its own Open Graph tags, the crawler reads the destination's tags — not yours.

Every tracking link, every short link, every branded redirect sits in front of a destination page. If that page has a generic card, or a competitor's card because you're linking to a partner site, or no card at all, that's what your audience sees. The card you configured never gets a chance.

This is the single most common reason a share card shows "the wrong site entirely." It isn't a bug in your tags. It's that your tags were never the ones being read.

It's also why the fix belongs at the link layer rather than the page layer. A tracking link that serves its own preview to crawlers — while still redirecting humans normally — keeps control of the card regardless of what sits at the other end.

Platforms disagreeing is the failure you can't see

Here's the part most tools get wrong.

The majority of Open Graph checkers fetch your URL once, then re-render that single response inside seven different card frames. Every tab looks identical, because every tab is showing the same fetch. That design cannot detect the most common real-world failure: a server that answers Facebook's crawler and blocks Slack's, or redirects one platform and not another.

To catch it, a checker has to fetch once per platform, using each platform's real user-agent — and then show you the disagreement. That's what we built the Social Share Preview tool to do, and it's free and requires no account.

There's also a hard deadline hiding in this, which is worth knowing before you post:

Facebook and LinkedIn let you force a re-scrape. Bluesky does not. Its CardyB service bakes the card into the post record permanently. A post that captured a broken card keeps it forever — your only remedy is to delete and repost, losing whatever engagement it had. Bluesky is the platform to check before you share, not after.

A short checklist

Before a link goes into a campaign, an email, or a post you care about:

  1. Look at the card, not the page. They are different artifacts produced by different requests.
  2. Check it on more than one platform — or use a checker that fetches per platform, so disagreement is visible.
  3. Follow the redirect chain. If your link redirects, confirm whose tags are actually being read.
  4. Size the image 1200×630, absolute HTTPS URL, no authentication.
  5. Keep the title near 60 characters so it doesn't truncate mid-thought.
  6. Check Bluesky first, because it's the one you can't fix afterward.

The cheap version of all this

Doing the checklist per link doesn't scale past a handful of links, which is the real reason share cards get skipped — not ignorance, just cost per link.

The alternative is to make a correct card the default. LinkForty's Social Share Preview sets an image, title and description once at the organization level, and every short link your team creates inherits it — with per-template overrides when a campaign needs its own artwork. Crawlers get the preview HTML; humans get the normal redirect, at the same speed as before.

Either way, the point stands on its own: the card is the ad. It's worth ten seconds of looking at before you find out from the click-through rate.

open graphsocial sharinglink previewsog tagsshort linksmarketing
LinkForty

Deep linking that just works

Route every click to the right place across web and mobile, and see what people do after they land. Start free — no credit card required.