Skip to content
Bluesky downloader

Bluesky Video Downloader

Paste a bsky.app post link to save the original video, photo, or GIF straight from the poster's PDS — not a compressed in-app preview.

Works with Twitter/X, Instagram, TikTok, Facebook, Threads, Reddit & Bluesky - short share links too

How to Download From Bluesky

1

Find the post

Open the post on bsky.app or in the Bluesky app.

2

Copy the link

Tap the ••• icon on the post and choose "Copy link to post".

3

Paste it above

Paste the link into the box above and press Download.

4

Save the file

Save the video, photo, or GIF — curl-x fetches the original file straight from the poster's PDS.

Bluesky Downloader FAQ

Why would I use curl-x instead of just saving from the Bluesky app?

Bluesky's own app often shows a compressed preview; curl-x fetches the original media blob straight from the poster's PDS (via com.atproto.sync.getBlob), which is typically higher quality than what the app displays.

What is a PDS and why does it matter for downloads?

A PDS (Personal Data Server) is where a Bluesky account's actual data — including original media files — lives under the AT Protocol. curl-x resolves the post through Bluesky's public AppView API, then pulls the real file from that PDS instead of a CDN thumbnail.

Can curl-x download private or blocked Bluesky accounts?

No — only posts from public accounts reachable through Bluesky's public AppView API can be extracted; blocked or logged-out-only content isn't accessible.

Does curl-x accept a handle-based link or only a DID?

Both — Bluesky post URLs use either a handle (like @name.bsky.social) or a DID in the actor position, and curl-x resolves either one.

Will this work on iPhone and Android?

Yes, it's a browser-based tool, so it works the same in mobile Safari or Chrome as it does on desktop.

Is there a CLI shortcut for Bluesky?

Yes — curl -OJ https://www.curl-x.com/bluesky/<actor>/<rkey> downloads the post's media directly from a terminal.

Bluesky Guides

Other Platforms