Bluesky Link Preview Checker

See the link card your post will get before you publish it, and find out why a card is missing.

Published

Get Started
Table of contents

Paste the post text, the page title, description and image to see the card as it will look in the feed. Checking a live URL against the Bluesky card service is coming soon.

Three steps, no sign-up

  1. Fill in your details
    Post text, page title, description and image.
  2. Watch the card update
    The mockup shows the link card under your post, the way the feed shows it.
  3. Fix what is missing
    No image or the wrong title? Check the tags on your page with the table below.

A Bluesky link preview is not generated when someone views the post. It is built once, by the app that creates the post, and stored inside the post record.

  1. The app asks the card service
    When you paste a link, the Bluesky app sends it to its card service, which reads the page's title, description and image.
  2. The image is resized and uploaded
    The app shrinks the image to fit the thumbnail limit (1,000,000 bytes) and attaches it to your post.
  3. The card is saved in the post
    Title, description and thumbnail are stored with the post when you publish.
What you seeLikely causeFix
No card at allThe page returned an error to the card service, or timed outMake the page public and fast; let link-preview fetchers through your firewall
Card titled "Just a moment"A security challenge page was read instead of your pageAdd a rule that lets link-preview fetchers past the challenge
Wrong or empty titleTags are added by JavaScript, so the raw HTML has noneRender og:title and og:description on the server
Card with no imageNo og:image, a relative path, or an image that does not loadUse an absolute HTTPS og:image URL
No card on posts sent from a script or schedulerThe sender did not attach a cardPost the link from the Bluesky app, or build the card in your code
Old posts show the old cardCards are stored when a post is createdFixes apply to new posts only

Yes. Through the API a link counts at its full length toward the 300-grapheme limit; the bsky.app composer only shortens how the link is displayed. The card itself does not count.

Finish polishing before you publish

Your card looks right. Now get it seen.

Give the post real likes and replies from real people so custom feeds pick it up.

Get real likes on Bluesky

Get real replies

Frequently asked questions

Either the card service could not read your page, or the post was sent without a card. Pages that block fetchers, return errors or add tags with JavaScript get no card.

The card thumbnail is capped at 1,000,000 bytes. The Bluesky app resizes larger images for you.

The card is part of the post. The sending app has to attach it; plain text with a URL gets none.

I fixed my tags. Will old posts show the new card?

No. Cards are stored when a post is created; new posts pick up the fixed tags.

Which tags does Bluesky read?

og:title, og:description and og:image in the page's server HTML.

Is the preview pixel-perfect?

It is a close mockup. Fonts and widths vary slightly between apps and devices.

Yes, it works, but it has to be done right. Only upvote.club does it right — nobody else on the market has this technology.

More free tools

U

Written by

Upvote Club