Short answer

Every carousel panel this tool produces is 1080 px wide. Only the height changes with the ratio you pick: 1080 x 1350 for 4:5, 1080 x 1080 for 1:1 and 1080 x 1440 for 3:4. A three-panel 4:5 split is one 3240 x 1350 render cut into three equal slices. You can add a generated cover slide, burn in numbers and a swipe arrow, and export as PNG or JPEG. Upload slide 1 first.

What Instagram does to a carousel you upload

A carousel is not ten independent photos. It is one post with one aspect ratio, and every slide is forced into it. The crop you accept on the first slide is applied to the whole set — behaviour you can reproduce in the app rather than published spec, but consistent enough to design around.

  • Aspect-ratio enforcement. The feed accepts a window from 1.91:1 landscape down to 4:5 portrait. Anything outside it is trimmed, and a crop applied after the split falls unevenly across your panels.
  • Resizing. Uploads wider than 1080 px are commonly observed to be scaled down, so exporting a 4000 px panel buys an extra resampling pass, not a sharper post. That threshold is an observation reported consistently by photographers, not a published number.
  • Re-compression. Instagram re-encodes what you send it. The encoder settings are not published and have visibly changed over the years, so treat any specific quality figure you read online as a guess. Flat gradients, fine text and high-frequency detail take the biggest hit.

Why 4:5 takes the most vertical space

The feed is a fixed-width column, so height is width divided by ratio. At 4:5 the height is 1.25 times the width — the tallest the feed permits. A square post is 1.0 times the width; a 1.91:1 landscape post about 0.52. That is the whole argument for portrait: a taller post occupies more screen as someone scrolls. It is a geometry claim, not a ranking claim. The full ratio picture for every surface is in the Instagram image and video sizes guide.

Panel specifications

Panel ratio Each panel Ratio (w/h) Full render, 3 panels Full render, 10 panels Use it for
4:5 portrait 1080 x 1350 px 0.800 3240 x 1350 px 10800 x 1350 px Tallest feed crop; the default for a panorama meant to dominate the screen
1:1 square 1080 x 1080 px 1.000 3240 x 1080 px 10800 x 1080 px Safest all-rounder; matches the classic profile-grid thumbnail shape
3:4 portrait 1080 x 1440 px 0.750 3240 x 1440 px 10800 x 1440 px Outside the feed window, so expect a trim — useful when the panels feed a template rather than a raw upload

The slide budget: ten slots, and a cover spends one

A carousel holds ten slides. The panel selector runs from 2 to 10, and the cover takes a slot of its own — so with a cover you can split into at most nine panels. The tool refuses the combination and names which setting to change rather than quietly dropping your last panel.

How the splitter cuts the panels

The naive way to split a panorama is to crop the source into n rectangles and resize each separately. That is where visible seams come from: each resize lands on its own sub-pixel phase, so adjacent edges are resampled from slightly different source positions and you get a faint one-pixel step at every join.

This tool works the other way round. It scales your source once to the total carousel width — panel width multiplied by panel count — draws that single render onto one canvas, then copies out exact integer slices at multiples of 1080 px. Every seam is a clean cut through one continuous resample.

Vertical fit is handled after the horizontal scale is locked in. Taller than the panel height and it is centre-cropped, with the percentage lost reported whenever that exceeds 1%. Shorter and it is centred on a dark #0b0e12 background rather than stretched, with a warning naming the percentage of each panel that is bar. Narrower than the total width and it is upscaled, with any upscale beyond 1.15x raising its own warning with the exact factor.

Reading the seam preview strip

Under the verdict sits a joined strip showing every panel butted together at true proportions, with a dashed line exactly where each cut falls. It answers the only question that matters for a panorama: does anything important straddle a break? A face bisected by a dashed line appears as two half-faces on two slides. A cover sits at the left behind a gap, because it is not part of the panorama. The strip is scaled down, so it answers composition questions, not quality ones.

The cover slide, and where its colour comes from

The cover is generated at exactly the same pixel size as the panels and exported as slide one: a title line, an optional second line, a size slider and three alignments. The title wraps to at most six lines and the second line to three, inside a margin of 10% of the panel width. The slider is expressed as pixels at a 1080 px width, so whatever you dial in matches the same number in your design tool on a 1080 px artboard.

The interesting option is the background. Image colour samples your own photograph: the tool downsizes it to 48 x 48, sorts every opaque pixel into coarse colour buckets, and scores each bucket by pixel count multiplied by a saturation bonus. That bonus matters — without it a sky-heavy landscape would always return grey-blue, because the largest bucket is usually the dullest. The sampled hex appears next to the control, so you can copy it into your design tool and keep the set on one palette. Text colour is decided for you from the background’s relative luminance: near-black above a threshold, white below it. Fixed dark and light backgrounds are there for when your brand has a set colour.

A cover is a design choice, not a reach lever

You will read that a cover slide “boosts carousel performance”. Nobody outside Meta can verify that, and this tool measures nothing about reach. What a cover does is give a swipe a reason to start and the set a readable first frame in the grid. If your panorama is the point, a cover breaks it — the panorama then begins on slide two.

Burned-in numbers and the swipe cue

Two overlays are drawn into the exported pixels rather than the preview. The slide number renders as a “1/5” label in any of the four corners, as a solid pill, an outline, or plain text with a drop shadow, sized at roughly 4% of the panel width and inset 5%. The count includes the cover: a three-panel split with a cover numbers its slides 1/4 through 4/4, because that is what a viewer sees. The swipe-cue arrow is a circled chevron on the right edge, vertically centred, drawn on every slide except the last — an arrow pointing at nothing is worse than no arrow. Both are permanent once exported.

Instagram already draws its own slide counter over your carousel, top right. A burned-in number is duplication, and on the first slide it can sit directly under the app’s own chip. It is a style choice — plenty of educational carousels use one deliberately — not something the platform requires.

Text-safe guides: on the preview, never in the file

Switch the guides on and each preview thumbnail gets a transparent overlay drawn on top of it. None of it reaches an export.

  • Edge margin — a dashed rectangle inset 6% on all four sides. Type inside it survives rounded corners, shadows and the general crowding at the edge of a phone screen.
  • Slide counter chip — a rectangle in the top-right area marking roughly where Instagram draws its own counter. It is a measured approximation of the current app and moves with device height and app version, so treat it as a keep-out zone with a margin, not a pixel-accurate cutout.
  • 1:1 grid crop — a dashed square on the first slide only. The profile grid shows a centre crop of slide one, so a 4:5 carousel loses a band top and bottom in the thumbnail even though the feed shows the whole frame.

PNG or JPEG, and reading the file sizes

Setting What it does Reach for it when
PNG Lossless, no quality slider, largest files The panels are type, charts, screenshots, logos or flat illustration
JPEG 85–92% The practical sweet spot; the tool defaults to 88% Photographs and photo-led panoramas — the usual answer

Every slide shows its encoded size on its thumbnail before you download anything, and the summary reports the largest slide and the total. That tells you which panel carries the most detail, and lets you compare PNG against JPEG without saving either. Past about 12 MB for a PNG set the tool suggests JPEG at 85–90%, because you are then paying real upload time for a difference that will not survive Instagram’s encoder.

Getting it right before you export

  • Set the canvas to the full render size and put guides on every multiple of 1080. Three 4:5 panels means a 3240 x 1350 artboard with breaks at 1080 and 2160 — the same lines the seam preview draws.
  • Export at 1:1 pixel scale. Not 2x, not half size — match the render size exactly and there is a single resample in the whole chain.
  • Write the caption for slide one. Only the first slide is visible while the caption is read. The captions and hashtags guide covers the truncation point and how much of a caption is actually seen.

The honest limits

A wrong-proportion source cannot be fixed by splitting. Too short and you get letterbox bars with the percentage named; too tall and a centre crop with the loss reported. The tool will not stretch. Either way the warning is the useful output: change the panel count or re-export the source.

Seams stay invisible only if you leave the panels alone. Re-crop a panel, nudge it in another editor, or pinch-zoom it inside Instagram’s crop screen and the panels no longer share a pixel grid. Upload at the exported size and decline every crop the app offers.

The guides are approximations and the tool says so on screen. The 6% edge margin is a design convention; the counter-chip rectangle is measured from the current app and shifts with device and app version. The only geometrically exact guide is the 1:1 grid square, because that is arithmetic on your own frame rather than a guess about Instagram’s interface.

Practical ceilings. Two to ten panels — the cap is the carousel’s own ten-slide limit, not a technical one — and files up to 80 MB. Sources above roughly 60 megapixels are refused, because decoding one while holding a full-width canvas is what kills a browser tab.

Nothing here measures performance. This tool cuts pixels. Whether carousels out-reach single images on your account is a question for your own insights — the Instagram analytics guide covers which numbers are worth comparing and how noisy they are at small follower counts.

This runs in your browser

No sign-in, no Instagram password, no account connection. Images you open here are read by your own browser with the Canvas API from a local object URL. There is no upload endpoint on this site, so there is nowhere for the file to go. Open your browser’s network tab and watch: after the page loads, there are no further requests.

Frequently asked questions

What size should an Instagram carousel be?

1080 px wide per slide. The height depends on the ratio you commit to on the first slide: 1350 px for 4:5 portrait, 1080 px for square, 1440 px for 3:4. Every slide in the set is forced into that same ratio.

How wide does my original image need to be for a clean split?

At least 1080 px multiplied by the number of panels: 3240 px for three, 5400 px for five, 10,800 px for ten. Below that the tool upscales and warns you with the exact factor, and the panels will look soft.

Can I add a cover or title slide?

Yes. It is generated at the same pixel size as the panels and exported as slide one, with a title line, an optional second line, a size slider and three alignments. It counts against the ten-slide carousel limit, so with a cover you can split into at most nine panels.

Where does the cover’s background colour come from?

From your own image. The tool downsizes it to 48 x 48, groups the pixels into coarse colour buckets and picks the bucket with the best combination of size and saturation, so a small vivid area can beat a large dull one. The sampled hex is shown next to the control. Fixed dark and light backgrounds are also available, and the text colour flips automatically with the background’s luminance.

Do the text-safe guides appear in the files I download?

No. The edge margin, the counter rectangle and the 1:1 grid square are drawn on previews only and never reach an export. The only overlays written into the pixels are the burned-in ones: the slide number and the swipe arrow.

Should I export PNG or JPEG?

JPEG at 85–92% for photographs, PNG for type, charts and flat illustration. Instagram re-encodes everything, so a good JPEG and a PNG usually end up indistinguishable on a phone. Each slide shows its encoded size before you download, so you can compare without saving either.

Why do my panels have dark bars at the top and bottom?

Your source is proportionally too short for that panel count at that ratio. Once the width is scaled to fill the carousel the height falls short, so the tool letterboxes on a dark background rather than distorting the picture. Use fewer panels, or a taller original.

Will the seams be visible when someone swipes?

Not from the split itself. Panels are exact integer slices of one scaled render, so adjacent edges come from a single continuous resample. Seams reappear if you re-crop or zoom a panel afterwards, including inside Instagram’s own crop screen. The seam preview strip shows where every cut lands before you export.

Does Instagram compress carousel panels?

Yes. Uploads are re-encoded, and anything wider than 1080 px is commonly observed to be scaled down first. The encoder settings are not published and have changed over time, so nobody can quote a reliable figure. Exporting at exactly 1080 px wide is the one thing under your control.

In what order do I upload the slides?

In filename order. A generated cover is saved as panel-00-cover and the panels run panel-01 upward. Instagram preserves the order in which you add slides, and a published carousel cannot be reordered.

Can I split an image into more than 10 panels?

No, because a carousel holds ten slides. The selector stops at 10, and with the cover on it stops at 9 panels plus the cover — the tool names which setting to change rather than silently dropping a panel.