Open Graph tags: the link that unfolds into nothing
That is the whole of the problem, and it is invisible from your own site.
Which tags are read
og:title and og:description do what their names suggest, though the platform decides how much of each to show. og:url is the canonical address the preview points at. og:site_name is the small line naming the publisher. og:image is the one that changes whether anybody looks at the preview at all.
There is also og:type, rarely interesting and occasionally decisive: an article and a website are previewed differently in some places.
What a missing set costs
Nothing measurable, and that is why it survives. A link with no preview is still a working link. It is simply less likely to be opened than the one below it that shows a title, a sentence and a picture.
The cost lands where you cannot see it: in conversations you were not part of, about pages you did not know were being shared.
A partial set is its own problem
The absent case is easy to picture. The half-present one is more common and harder to notice.
A page carrying og:title and nothing else previews as a line of text with an empty space where the picture belongs. Some platforms fill that space by guessing: they take the first sizeable image in the document, which might be a logo, a banner or somebody's avatar. Others leave it blank. The same link therefore looks different depending on where it was pasted, and the version you checked is not necessarily the version anyone else saw.
This is why filling the set matters more than filling any single tag in it. A preview is assembled from a group, and a group with a hole in it falls back to whatever the platform improvises.
Where the preview is decided, and when
The tags are read once, by whatever fetched the page first, and the result is usually kept.
Most platforms cache what they found. A link shared before the tags existed keeps its empty preview in that platform's store, and adding the tags afterwards does not travel back to the messages already sent. Some platforms expose a way to ask for a refresh; others simply expire the entry on their own schedule.
The practical consequence concerns order, not urgency. Tags added before a page starts circulating are read on the first fetch and cost nothing to correct. Tags added after it has been shared widely fix the next share and not the last hundred. It is the ordinary argument for filling gaps quietly and early, not in response to somebody noticing.
The address the preview points at
og:url is the one tag in the set that is not about appearance.
A page is often reachable at more than one address: with tracking parameters, with and without a trailing slash, through a campaign redirect. Each of those is a separate link as far as a sharing platform is concerned, and the counts, where a platform keeps them, are separate too. Declaring the canonical address collapses them back into one.
Where the tag is missing it is derived: the canonical address is a fact the page already carries, with nothing to compose.
What gets filled
Where a page declares no Open Graph tags, they are written from what the page says and from the brand profile: the site's name, the social handle, a default image where one is set. Tags you declared stay as they are.
The half-present case works the same way, tag by tag rather than set by set. A page carrying og:title and nothing else keeps that title exactly as written and receives only the members of the group it was missing. This is the more useful behaviour of the two, because the partial set is the common one: somebody added a title years ago, the rest was never filled in, and the preview has been assembling itself out of guesses ever since.
Where no image exists at all, a card can be composed at 1200 by 630 from your brand colour, your typeface and a picture of the page, which preview images covers on its own. That part stays off until you ask for it, and a page that already has an image keeps it.
FAQ
Do I need Open Graph if I already have Twitter cards?
Yes. They are separate vocabularies, not two spellings of one thing, as Twitter and X cards covers. Some readers fall back from the Twitter set to Open Graph where the former is absent, but the fallback is a courtesy, not a rule, and it does not run in the other direction.
What size should the image be?
1200 by 630 is the shape most platforms crop toward, which is why a composed card is built at exactly that. Smaller images are often shown as a thumbnail beside the text rather than above it, which changes the preview from something people look at into something they scroll past. The aspect ratio matters more than the file size.
Will it replace the og:image I set myself?
No. Composition applies only where the tag is absent, and a declared image keeps its place whatever anyone thinks of it. The gap being answered is a missing tag, never a mediocre one; the longer answer, dimensions and age included, lives under preview images.
Why does my link still preview as blank after I fixed it?
Because the platform is showing you what it cached on its first fetch. Adding tags does not reach back into messages already sent. Where the platform offers a refresh, asking for one updates its copy; otherwise the old preview stands until the entry expires on that platform's own schedule.
Which of these tags are generated and which are derived?
og:title and og:description are written from the page. og:site_name comes from your brand profile verbatim. og:url is derived from the canonical address the page already declares, because that is a fact rather than a judgement. og:type is derived the same way, from what the page already is. og:image is a separate decision and stays off until you enable it.
AI SEO, without the overclaiming
These pages pin down what enrichment fills and what it never touches. The platform they describe is Bridge CDN, where an account is created.