VidKeep

How-to

Carousels: Getting the Videos Out

Portrait of Daniel Okafor, VidKeep engineer
Daniel OkaforVideo-tools engineer, VidKeep
· Published 2026-11-02 · Updated 2026-11-02 · 6 min read
VidKeep reading an Instagram post link

A carousel holds many items, each independently a photo or a video, and the link addresses the post rather than the slide you were looking at. So a carousel with three videos now returns three rows — Video 1, Video 2, Video 3 — and one with photos only returns the photos themselves, one row per image.

Why the slide you were viewing does not travel

This is the behaviour that confuses people most, and it is a property of links rather than of any tool.

When you copy a link while looking at the seventh slide, the address contains no record of that. Which item you were viewing lives in your app's state and is not part of what gets shared. The link says ‘this post’ and nothing more.

Everything downstream follows. A downloader receives the post, sees what is inside, and returns whatever videos it contains — not the one you had on screen, because that information never arrived.

VidKeep reading an Instagram post link
The page reading an Instagram post link; the result rows appear under the box.
Post containsWhat you get
One videoA single row, as with any post
Several videosOne row per video — Video 1, Video 2, and so on
Photos onlyOne row per photo — Photo 1, Photo 2, and so on
Photos and videos mixedRows for the videos; the photos are not offered

The last row is worth expecting. A ten-slide post with one video buried among nine photographs returns exactly one row, which can look like the tool missed something. It did not — there was one video.

The numbering follows the post's own order, so Video 2 is the second video in the carousel rather than the second slide. If a post has photos at positions one and two and videos at three and four, the rows are Video 1 and Video 2.

It depends on what else the post holds. A post made only of photographs comes back as the photographs themselves, one JPEG row per image — Photo 1, Photo 2 and so on — with no size shown. That has been the behaviour since 6 August 2026; before it, such a post was refused with a message about photos.

A mixed carousel is different. From the code, if a post contains at least one video, only the videos are returned and the photographs are left out; we have not been able to check that on a live mixed post. A browser saves an image with a right-click or a long press at full quality, so nothing is lost by saving those by hand — profile pictures are a separate case.

So for a mixed carousel the practical route is both: download the videos here, and save the photographs with a long press directly from the post.

Each of these produces a different message, which is the point of having more than one. A generic failure would send someone hunting for a better tool for a video that does not exist — the full list of causes is here.

Quality, and why there is no menu

Carousel videos come as single finished files rather than as a ladder of resolutions, so there is one option per video and nothing to choose between.

That is the same shape as reels, TikTok and Snapchat Spotlight, and for the same reason: short vertical clips do not benefit from adaptive streaming, so platforms store one version instead of several — the mechanics are here.

The file size is usually not reported either, which is a platform behaviour rather than something we withhold. Carousel clips are short, so it rarely matters — a few megabytes each.

If a video in a carousel looks worse than the same clip elsewhere, that is compounding rather than the download: a clip posted to several platforms is encoded separately by each, and a repost is a generation further from the source.

If you only want one specific slide

There is no way to specify it through the link, so the practical approaches are indirect.

Check whether the creator posted it separately. Many publish the same clip as a reel as well, and a reel link is unambiguous in a way a carousel link cannot be.

Download all the videos and keep the one you wanted. Inelegant, and it works — the numbering follows the post's order, so counting the videos on screen tells you which row to take.

Screen-record as a last resort. Lower quality and it captures exactly what you see, which for a single slide is sometimes enough.

Until today we returned one video and said nothing

This article changed the product while being written, and the change is worth describing because the previous behaviour was the kind of failure that never generates a complaint.

Our code fetched a post, collected the videos inside it, and returned the first one. A carousel with three videos produced a single row. Nothing indicated that two more existed — no message, no count, no hint. Someone would download what was offered, believe they had the post, and be wrong.

That is worse than an error. An error tells you something went wrong and you can act on it. Silently returning less than exists produces a confident, incomplete result, and the person has no way to know they should look further. It is the same class of problem as reporting ‘no playable format’ for content that is perfectly available, which we found on Twitch a day earlier — both invisible from the inside, both discovered by writing down what the product does.

The fix returns one row per video, numbered in the post's order, with the single-video case unchanged so ordinary posts look exactly as before. It is a few lines, and it was a few lines the whole time — the difficulty was never technical, it was noticing.

What we do not do is hand you photographs from a post that also contains video, and we say so rather than leave you to find out. The distinction we care about is between choosing not to do something and doing it incompletely without saying so. The first is a product boundary you can plan around. The second is a quiet lie, and it had been in this code for as long as carousels were supported.

There is a small design question inside the fix worth mentioning. Numbering the rows as Video 1 and Video 2 tells you how many exist, but not which slides they were — a post can open with three photographs and put its videos at positions four and seven. We considered labelling by slide position instead, and did not: the provider reports the media in order without reliably telling us where each sat in the original post, and a position we inferred would be wrong often enough to mislead. Counting videos is something we know; counting slides is something we would be guessing at.

Frequently asked questions

Can I download all videos from an Instagram carousel?

Yes. A carousel with several videos returns one row per video, numbered in the post's order.

Why does the tool not know which slide I was viewing?

The link addresses the post, not the slide. Which item you had on screen lives in your app and is not part of the shared address.

What about the photos in the carousel?

A post of only photographs returns the photos, one row each. In a carousel that also holds videos, only the videos are returned; save the photographs with a long press.

Why did a ten-slide post return only one row?

Because it contained one video. The other nine slides were photographs, which are left out when a post also holds video.

Is there a quality choice for carousel videos?

No. They are stored as single finished files rather than a ladder of resolutions, the same as reels and TikTok.

How do I get one specific slide?

Not through the link. Check whether the creator posted it separately as a reel, or download all the videos and keep the one you wanted.

Try it yourself

VidKeep runs in your browser — paste a link, pick a quality, keep the file. No account, no app.

Open VidKeep

Last updated: 2026-11-02. We revise our guides as the platforms change.