How to download images from a Mastodon post in full size

This guide is for people who want their own Mastodon images back, for an archive or a move to another server, and for anyone saving an image they have permission to use. In the timeline, a post shows a small preview of each image. The server keeps a larger copy, and the post already links to it.

What Mastodon serves

An image on mastodon.social has an address like https://files.mastodon.social/media_attachments/files/117/586/432/309/899/205/small/90264fe07b0fa926.jpg. The word small marks the preview. The same address with original in its place is the largest copy the server keeps. Every server runs the same web app, so the addresses on other servers have the same shape on their own domain.

I fetched the images from two public posts on mastodon.social and read their real pixel size from the files:

PostPreview (small)original
Photo, @pokarim392×588 px, JPEG, 66 KB1365×2048 px, JPEG, 597 KB
Screenshot, @Mastodon606×379 px, PNG, 112 KB2880×1800 px, PNG, 1.3 MB

The post page lists both copies for each image and lets the browser pick one; in my browser it loaded the small one. Each image is also a link to the original copy. When a post comes from another server, mastodon.social keeps its own copy of the image, and the link goes to the file on the poster's server instead. For a photo from social.spejset.org, both were the same 3295×2517 px JPEG, 1.8 MB.

Method 1: Open the link or edit the address (no install)

  1. Right-click an image in the post and choose "Open link in new tab". The new tab shows the original copy. Save it from there.
  2. If you opened the image itself instead ("Open image in new tab"), change /small/ to /original/ in the address and press Enter.

Method 2: Every image on the page as one ZIP

  1. Add PixLasso to Chrome or Edge and open the post, a thread, or a profile's Media tab.
  2. Click the PixLasso icon, then Deep scan so it scrolls the page and picks up the images that load late.
  3. Set Min size to 300px to skip avatars and emoji.
  4. Click Download. You get one ZIP, numbered in the order the images appear (converting a whole batch to JPG is a Pro feature).

PixLasso needs no special rule for Mastodon. It takes the largest copy the page lists, and with Full-size originals on, which is the default, the link around each image as well, so it saves the original copy: 1365×2048 px for the photo above, against 392×588 px for the preview. For a post from another server it downloads the file from that server.

The free version saves 30 images per batch, and each press after that saves the next batch. Pro, a single US$9.99 payment, saves all of them in one press.

What neither method gets back

The original copy is what the server kept when the image was posted, and that may be smaller than the file on the poster's phone. Two of the photos I checked were 3295×2517 and 3527×2351 px, both just under 8.3 megapixels, which suggests the server scaled larger uploads down. Pixels the server never kept can't be downloaded by any method.

Questions

Does this work on servers other than mastodon.social?

Yes, as long as the server uses Mastodon's own web app. The addresses start with that server's domain or its file host, and they have the same small and original parts.

Can I save images from followers-only posts?

Both methods only save what your browser already shows you. This guide covers public posts and your own posts.

Copyright

Images you posted are yours to download; images in someone else's post belong to that person or to whoever they licensed them from, so ask before you reuse them.


Measured on 9 November 2026: I read three public posts through Mastodon's public API and the post page, downloaded each size and read the pixel size from the image header, checked the image markup in the live page in Chrome, then ran PixLasso's URL code on the same addresses. I made PixLasso; the first method needs no extension.