Guide
How to download an Instagram video
How to download an Instagram reel, video, photo, or carousel to your phone or computer — which link forms work and what cannot be downloaded.
Last updated · Published by ThreadsDownload
Instagram does have a save button, which is the source of most of the confusion. The bookmark icon under a post files it into a private collectioninside the app — nothing reaches your camera roll, the post vanishes from your collection if the author deletes it, and you cannot open it offline or send it to anyone. It is a reading list, not a download.
Getting an actual file needs the post's public link. This guide covers the whole sequence, which link shapes work, why one post offers six sizes and the next offers one, and the categories that genuinely cannot be downloaded by anyone.
The short version
- Copy the share link. Use the paper-plane icon beneath the reel, or the ••• menu above it, and pick Copy link. From a browser, the address bar already holds what you need once the post is open on its own page.
- Load the media. Put the link in the field at the top of this page and submit it. Instagram's public metadata is read once, and every item the post contains comes back listed with the sizes available for it.
- Choose a size. The largest rendition sits at the top, so the first row takes no thought. Selecting it streams the file to your device under a name built from the author, the shortcode, and the pixel dimensions.
That is the entire flow — no account, no extension, and no app. If a site asks you to log in with your Instagram credentials before it will download anything, close the tab. Nothing about a public post requires your password, and handing it over is how accounts get taken.
Copying the right link
Two routes, depending on where you are. In the app, tap the paper-plane share icon beneath the post — or the ••• menu at its top-right — and choose Copy link. On the web, open the post so it fills the screen and take the URL from the address bar.
The distinction that matters is a single post versus everything else. A profile URL, a hashtag page, the Explore grid, or your own feed all describe collections rather than one piece of media, and none of them can be resolved to a file. Open the individual post first.
Link forms that work
instagram.com/reel/CODE
A reel. The most common form, and what the app copies for short vertical video.
instagram.com/p/CODE
A feed post — video, single photo, or carousel. Interchangeable with the reel form.
instagram.com/tv/CODE
The retired IGTV form. Still minted by shares of older long-form video, and still accepted.
instagram.com/username/p/CODE
A profile-scoped post link, produced by some share sheets. The handle in the middle is ignored.
instagram.com/share/…
A share link holding an opaque token instead of a shortcode. It redirects to the real post, and the redirect is followed for you.
A scheme is optional, a trailing slash makes no difference, and the tracking parameters Instagram appends when you share — igsh,igshid, utm_source — are stripped before the lookup. Paste the link exactly as it was copied.
Reels, feed video, and IGTV are one thing
Instagram presents these as three products, but underneath they are the same object with the same metadata, which is why /reel/ABC123 and/p/ABC123 serve the same page for the same post. You do not need to know which kind of video you are looking at, and there is no separate mode to pick. Audio comes through untouched — nothing is stripped or re-muxed, so a reel keeps the track it was posted with.
Carousels, one item at a time
Multi-item posts are listed item by item, each with its own preview and its own set of sizes, in the order the author arranged them. A ten-photo carousel gives you ten independent files, so taking the third image and ignoring the other nine is the normal case rather than a workaround.
Mixed carousels behave the same way. If a post runs photo, photo, video, video, the videos appear in positions three and four — the numbering follows the post, not our list, so the item labelled 3 is the third thing you would have swiped past.
There is no download-everything button, and that is a consequence of the design rather than a missing feature. Zipping a post would mean assembling it on a server first, which would mean storing your media, however briefly. Files stream one at a time precisely so nothing is ever held.
Why some posts offer one size and others offer six
This is the difference that surprises people most, and it is worth understanding because it looks like a bug.
How much a post reveals to a signed-out request varies. Most expose their full rendition ladder, and you get every size Instagram publishes, largest first. Some older posts expose only the single rendition sitting behind their share preview, and then there is one row instead of several.
A reel showing one option is usually not a limitation at all: Instagram frequently publishes only one rendition of a reel in the first place, so one row is the complete list. Photo posts typically offer more, because more sizes of a still get generated. Either way the file is the real one — when there is a single row, there is simply nothing to choose between.
What you get in the file
- Video arrives as MP4, passed through byte for byte. The bytes are not touched on the way: no transcode, no resize, and no logo stamped into a corner.
- Photos arrive as JPEG. Instagram stores stills as HEIC and converts them on delivery, so the file is named for what the bytes actually are rather than what the URL path suggests — a
.jpgyou can open anywhere, not a.heicthat half your software refuses. - The top row is the largest available. Options are ordered by size, so taking the first one requires no comparison.
Two honest limits. The largest rendition is Instagram's copy, not the original file the uploader picked from their camera roll — that one is not published, so no tool can reach it. And nothing is upscaled: a clip posted at 640px wide stays 640px wide. Any downloader advertising a 4K version of a small upload is inventing pixels.
Where the file lands
iPhone
Safari drops the file into Downloads inside the Files app rather than straight into your camera roll. To get a reel into Photos, open it from Files, tap the share icon, then Save Video. Photos take the same route via Save Image.
Android
Chrome saves to the Downloads folder and the media scanner usually surfaces it in Google Photos or Gallery within a few seconds. If it has not appeared, opening the file once from your browser's download list is enough to prompt it.
Windows and macOS
The file goes wherever your browser normally puts downloads, keeping the descriptive name it was given. Nothing needs unzipping — each file arrives on its own, which is why a carousel is saved one item at a time.
What cannot be downloaded
These are not gaps waiting to be filled. Each one requires a signed-in session, and this tool never signs in to anything, so there is no session for it to borrow.
- Stories and highlights. Served only to authenticated accounts, including highlights that have been pinned to a profile for years.
- Private and follower-only accounts. If you have to be approved to see a post, its media is not publicly served. Reaching it would mean impersonating one of that account's followers.
- Close Friends posts. Restricted to a hand-picked list, which makes them private in every sense that matters here.
- Your own archive and drafts. Never published, so nothing exists at a public URL to fetch.
For your own content, the Instagram app is the better route anyway: it can save your posts and stories directly, at the quality you uploaded.
When a link fails
The message on screen names the specific cause rather than showing a generic error, so read it before retrying:
- That link points to a profile, not a post. The most common one. Open the post itself and copy again.
- Private or restricted. Covered above, and not something a different tool can route around.
- This post no longer exists. Deleted, or a mistyped shortcode.
- No media found. The post carries nothing downloadable — a text-only quote or a link preview, for instance.
- The media link has expired. Instagram's file URLs are time-signed. Leave a results page open long enough and the buttons go stale while the page still looks fine. Run the lookup again for fresh ones.
- Too many lookups. There is a per-address cap to stop one scripted client getting the whole server throttled. Downloading files you have already resolved does not count against it — only new lookups do.
One more worth knowing: Instagram occasionally answers an anonymous request with a challenge page instead of the post, which surfaces as a lookup that fails for no visible reason. It is usually brief. Waiting a minute and trying again is genuinely the right response rather than a brush-off.
Downloading from Threads instead
Threads runs on the same infrastructure, and the same field accepts its links. If that is what you came for, the Threads downloader and its step-by-step guide cover it. TheFAQ answers the questions common to both.