swiftimg

Image hosting for Bluesky — embed beyond the four-image cap

Bluesky inlines images when you paste a URL with an image-card OpenGraph preview. swiftimg's viewer page (/i/abc123) emits OpenGraph, so a Bluesky post linking to it shows a rich card with the image.

Try swiftimg freeSee the API

Heads-up

Bluesky is still adjusting their card-rendering behaviour as the protocol matures; native image attachments remain the most reliable way to get an image visible in-feed.

Step by step

  1. 1. Upload to swiftimg

    Drop the file at /upload. Copy the viewer URL (/i/abc123) — not just the raw image URL — so Bluesky can render the OG card.

  2. 2. Paste into a Bluesky post

    Post the viewer URL with a short note. Bluesky fetches the OG metadata and shows a card with the image, title, and description.

    Bluesky post
    https://swiftimg.com/i/abc123
  3. 3. Or attach natively + back up to swiftimg

    If you want the image to render natively in-feed, attach it directly to the post and keep the swiftimg copy as a permanent URL for sharing elsewhere.

Bluesky — FAQ

Does Bluesky support animated GIFs?

Bluesky doesn't autoplay GIFs natively, but linking to a swiftimg viewer URL produces an OG card with the animated frame as the preview, and clicking through plays it on swiftimg.

Will the OG card show on first post?

Yes — Bluesky fetches the OG metadata when the post is created. swiftimg viewer pages emit OG tags from upload time.

Is there an oEmbed integration?

Bluesky doesn't currently use oEmbed for embeds — they rely on OpenGraph metadata. swiftimg viewer pages also expose oEmbed for other consumers (Slack, Discord) that do support it.

See also

Ready to host your Bluesky images?

Start free, then unlock the full API, transforms, signed URLs, and a custom domain on the Developer plan.