Free · No signup · No watermark

Bluesky video downloader

Save any public Bluesky video as an MP4, in the original quality the poster uploaded, not a re-encoded 720p stream. Photos and GIFs too. Paste the post link and download. No login.

Works with bsky.app/profile/…/post/… links, custom-domain handles, did:plc links and at:// URIs.

01 How to use it

4 steps, no signup

  1. 01

    Copy the post link

    On a Bluesky post, tap Share → Copy link to post. On the web, copy the address bar. The link looks like bsky.app/profile/name/post/3l….

  2. 02

    Paste it above

    Paste the link and press Get video. The tool finds the post through Bluesky's public API. No login needed.

  3. 03

    Check the preview

    The video, photos or GIF in the post appear with their size and format, read straight from the post.

  4. 04

    Download the original

    Press Download. You get the exact file the poster uploaded, as MP4 for videos and JPG/PNG for photos, with no re-encoding or watermark.

What this Bluesky video downloader does

Bluesky has no download button for videos. The Bluesky video downloader fills that gap: paste the link to any public post and it gives you the video as an MP4 file, plus any photos or GIF in the same post. It runs in your browser, needs no login, and adds no watermark.

The difference from other Bluesky downloaders is quality. When you watch a video on Bluesky, you're watching a streaming copy that Bluesky re-encoded at 360p or 720p. Most downloaders save that copy. This tool fetches the original file the poster uploaded, at its full resolution and bitrate, from the poster's own data server.

Original upload vs. stream copy

Every Bluesky video exists in two forms. Understanding them explains why downloads from different tools look different.

Original upload (this tool)Stream copy (most tools)
Where it livesThe poster's data server (PDS)video.bsky.app
ResolutionWhatever was uploaded360p or 720p
FormatOne MP4 fileHLS: a playlist of short segments, stitched back together
Re-encoded?No. Byte-for-byte the uploadYes, compressed for streaming
AudioIncludedIncluded

This works because of how Bluesky is built. It runs on the AT Protocol, where every account's posts and files live in a public repository on a data server. A video is stored there as a "blob" with a content ID. The post record names that ID, and the server hands the file to anyone who asks for it, the same way it hands it to Bluesky's own video service.

What you can download

Post containsYou get
A videoThe original MP4, with sound
One to 10 photos (grid or carousel)Each photo in its uploaded resolution (JPG, PNG or WebP)
A video or photos plus a quoted postThe media in the post you linked
Only a quoted post with mediaA pointer to the original post, so you can paste that instead
A GIF (Tenor link)A link to the GIF file on Tenor
A link cardThe card's preview image, when it has one
Text onlyNothing to download; the tool says so

How to download Bluesky videos on each device

iPhone and iPad

  1. In the Bluesky app, tap the share icon under the post and choose Copy link to post.
  2. Open this page in Safari, tap Paste, then Get video.
  3. Tap Download. The MP4 saves to Files → Downloads.
  4. To put it in your camera roll, open the file in Files, tap Share and choose Save Video.

Android

  1. In the app, tap Share → Copy link to post.
  2. Paste it here in Chrome and tap Get video, then Download.
  3. The video lands in Downloads and appears in Google Photos.

Windows, Mac and Linux

  1. Open the post on bsky.app and copy the address bar, or click the three dots → Copy link to post.
  2. Paste it here, click Get video and then Download.
  3. The file saves to your browser's download folder.

Which links work

LinkExampleWorks?
Standard post linkbsky.app/profile/name.bsky.social/post/3lx…Yes
Custom-domain handlebsky.app/profile/nytimes.com/post/…Yes
DID instead of handlebsky.app/profile/did:plc:…/post/…Yes
Other clientsGraysky, deer.social and similarYes, same link shape
AT URIat://did:plc:…/app.bsky.feed.post/…Yes
Profile link onlybsky.app/profile/nameNo: it needs a specific post
Accounts hidden from logged-out usersAnyNo: the tool respects that setting

Troubleshooting

  • "That doesn't look like a Bluesky post link." The link must point to one post and contain /post/. Copy it with Share → Copy link to post.
  • "Post not found." It was deleted, the account was deactivated or suspended, or the link was cut off when you copied it.
  • "This account doesn't allow logged-out viewing." The poster turned on Bluesky's option to hide their posts from people who aren't logged in. The tool won't bypass it.
  • The download opens a page of code instead of saving. You're probably in an in-app browser (opened from another app). Open this page in Safari or Chrome directly.
  • The file has a strange name with no extension. That happens only in the fallback path, when the browser can't save the file directly. Rename it to end in .mp4 (or .jpg for photos).
  • The download is slow. Original files are larger than stream copies, up to 300 MB for a 10-minute video. It downloads at the speed of the poster's data server.

Bluesky video limits

The limits matter because they set how large a download can be. Bluesky started with 60-second videos in September 2024, raised the cap to 3 minutes in March 2025 (MacRumors), and by late 2026 allows 10 minutes and 300 MB per video (Engadget). Bluesky hasn't published these figures in a single official help page, so treat them as reported, not guaranteed.

Using Bluesky videos responsibly

A video posted publicly on Bluesky is still its creator's work. Saving it to watch offline, keep for reference or include in research is a very different thing from re-posting it on another platform as your own. If you want to share it elsewhere, use Bluesky's own share link, or ask the creator and credit them. Many creators will say yes when asked.

Bluesky also lets people opt out of being seen by logged-out visitors. That signals they want a smaller audience, so this tool refuses those accounts instead of working around the setting.

Privacy

This tool runs entirely in your browser. Your link is read on your own device, the post is looked up through Bluesky's public API, and the file downloads directly from the poster's data server. No link is sent to this site's server, nothing is logged, and there's no extension to install.

Related tools

Saving from other networks? The Twitter (X) video downloader and Threads video downloader work the same way. To shrink a long Bluesky clip before sending it on, use the video compressor, or turn a short one into a loop with video to GIF.

Last checked and updated: . Platforms change how they serve media; if this tool stops working for a link, it is usually fixed within days.

FAQ

Frequently asked questions

How do I download a video from Bluesky?
Copy the post link (Share → Copy link to post), paste it into the box above and press Get video, then Download. The MP4 saves straight to your device. You don't need an account or an app.
Does Bluesky let you download videos?
Not from the app. Bluesky has no save or download button for other people's videos. Videos are stored as files on the poster's data server, and this tool fetches that file through the same public protocol (AT Protocol) the app uses.
What quality are the downloads?
The original upload. Most downloaders save Bluesky's streaming copy, which is re-encoded at 360p or 720p. This tool downloads the file the poster uploaded, at its full resolution and bitrate. The preview shows the file size before you download.
Can I download Bluesky videos on iPhone?
Yes. Open this page in Safari, paste the link and tap Download. The video saves to Files → Downloads. To move it to Photos, open it in Files, tap Share and choose Save Video.
Can I download photos and GIFs from Bluesky too?
Yes. Posts with up to 10 photos (including Bluesky's carousel posts) show each one with its own Download button, in the original resolution. GIFs on Bluesky are usually Tenor links or short looping videos; the tool offers whichever the post contains.
Why does the tool say this account doesn't allow logged-out viewing?
Bluesky lets people hide their posts from anyone who isn't logged in. The tool respects that setting and won't download from those accounts. Save it from the app, if the poster allows it, or ask them for the file.
Why can't it find the video?
The post may have been deleted, the account may be suspended or deactivated, or the link may point to a profile rather than a specific post. Check that the link contains /post/.
How long can Bluesky videos be?
As of late 2026, Bluesky accepts videos up to 10 minutes and 300 MB (Engadget). Earlier limits were 60 seconds, then 3 minutes from March 2025. The tool downloads any length.
Is it legal to download Bluesky videos?
Saving a public video to watch offline is generally low-risk. Re-uploading someone else's video, using it in ads or claiming it as your own needs the creator's permission. Videos stay the copyright of whoever made them. This is not legal advice.
Does the poster know I downloaded their video?
No. Downloading uses Bluesky's public, logged-out API, so there is no notification and nothing shows in their analytics.
→ More free tools

Other downloaders & utilities

@ Threads Video DownloaderDownload videos and photos from public Threads posts, in original quality. r/ Reddit Video DownloaderDownload Reddit videos with the sound included. Video and audio are merged in your browser. ◎ Instagram Profile Picture ViewerView and download a public Instagram profile picture in full resolution. SC Snapchat Spotlight DownloaderSave public Snapchat Spotlight videos and public profile stories as MP4. No login, private snaps never TG Telegram Video DownloaderDownload videos and photos from public Telegram channel posts, albums included. Flags app-only videos Tb Tumblr Video DownloaderSave videos, GIFs and photos from public Tumblr posts and reblogs, with honest errors for gated blogs X Twitter Video DownloaderSave X and Twitter videos in every quality, plus GIFs as MP4 and photos at original size XT Twitter Thread ReaderUnroll an X thread into one clean page with images and save it as Markdown or PDF Lm Loom Video DownloaderSave public Loom videos as MP4 and copy the transcript, respecting the owner download setting ShC ShareChat Video DownloaderSave ShareChat status videos and photos as MP4 or image files for WhatsApp status, no login Pin Pinterest Video DownloaderSave Pinterest video pins as MP4, images at original size and every idea pin page, pin.it links work in LinkedIn Video DownloaderSave any public LinkedIn video as an MP4, in HD or SD. Paste the post link, pick a quality, download. PDF LinkedIn Carousel DownloaderTurn a public LinkedIn document or carousel post into a PDF or a set of page images. B LinkedIn Text FormatterWrite bold, italic, underlined and bullet-point text that pastes straight into LinkedIn posts. ▶ YouTube Thumbnail DownloaderGrab every size of a YouTube or Shorts thumbnail, up to 1280×720 maxres, in one click. CC YouTube Transcript DownloaderGet the full transcript of a YouTube video, with or without timestamps, as TXT or SRT. # YouTube Tag ExtractorSee and copy the hidden tags on any YouTube video or Short, with a 500-character count. YouTube Description ExtractorCopy a video's full description, with its links, chapters and hashtags pulled out. ID YouTube Channel ID FinderGet the permanent UC… channel ID from an @handle, channel URL or video link. ▭ YouTube Banner DownloaderDownload any channel banner at full size (2560×1440) and its profile picture. ◧ Twitch & Kick Clip DownloaderSave Twitch and Kick clips as MP4 at the highest quality available. ⇲ Video Compressor for Discord & WhatsAppShrink a video to fit Discord, WhatsApp or email limits. Runs in your browser; nothing is uploaded. K Kick Clip DownloaderSave Kick clips whole and sections of Kick VODs as MP4 up to 1080p60, converted in your browser in LinkedIn Profile Picture DownloaderSave the public profile photo from any LinkedIn profile link. Honest about size, banners and privacy POD Podcast DownloaderDownload podcast episodes as MP3 from an Apple Podcasts link, RSS feed or show name, with episode search