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 · Paste a link to auto-download
How to Download From Bluesky
Find the post
Open the post on bsky.app or in the Bluesky app.
Copy the link
Tap the ••• icon on the post and choose "Copy link to post".
Paste it above
Paste the link into the box above and press Download.
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.