Skip to content
Back to blog
·7 min read

Can you post a carousel on X (Twitter)? What actually works

X's standard composer has no carousel — your options are the 4-image grid, a thread, or a 2–6 card carousel via the advertiser composer. Specs for each.

TLDR

X's standard composer has no carousel — nothing in it produces a swipeable multi-image post. What you actually get: up to 4 photos per post shown as a grid (tapping one opens a full-screen viewer that swipes like a carousel), threads for longer slide sequences, and real 2–6 card carousels only through the advertiser Post Composer — free X Ads account required, but they can run unpromoted. Square 1080×1080 slides with centered content survive X's grid crop best.

Why there's no carousel button on X

X gates carousels by tooling, not by payment. The standard composer — the one you post from every day — caps you at four attached photos and lays them out as a static grid, not a swipeable strip. Real carousels (2–6 swipeable cards, each with its own headline and link) live in the advertiser Post Composer: X states that advertisers can run them organic or Promoted-only, so a carousel doesn't have to be a paid placement — but building one requires an X Ads account and the ads tooling, and the carousel must point somewhere: a website or app destination is required, with web carousels able to share one link or give each card its own. That's also the plumbing a few social publishing platforms use to offer "organic carousels" on X.

So the carousel button does exist — it's just not in the app you post from, and it comes with advertiser strings attached. For most people the practical answer is one of the two formats the standard composer does support, and the design work for those is identical to what you'd make for a TikTok carousel or an Instagram post. It's a packaging problem, not a content problem.

X image specs that matter

Images per post
4 maximum (organic)
Single image (recommended)

1200×675 px (16:9) shows uncropped in the timeline — display guidance, not a hard requirement

Also supported
1080×1080 (1:1) and 1080×1350 (4:5)
Multi-image layout
2 = side-by-side tiles (~7:8 each) · 3 = one tall + two stacked · 4 = 2×2 grid
Crop behaviour
Tiles are center-cropped — edges get cut, centers survive
File types
JPG or PNG — up to 5MB per image
Carousels

2–6 cards at 800×418 (1.91:1) or 800×800 (1:1), one ratio per set — advertiser Post Composer / Ads Manager, organic or promoted

The number that changes how you design is the multi-image crop. A 16:9 slide that looks perfect on its own gets trimmed to a tall ~7:8 tile the moment a second image joins the post — anything near the left and right edges is gone. Design for the center and the crop becomes harmless.

Option 1: the 4-image grid post

The grid post is the closest organic thing X has to a carousel, and it has one underrated property: tapping any image opens a full-screen viewer that the reader swipes through in order. The timeline shows a grid; the tap turns it into a carousel. Your job is to make both views work.

  • Use all four slots deliberately. Four images means four chances to earn the tap. Treat the first image as the hook — in the 3-image layout it gets the dominant tall tile, so put the strongest visual there.
  • Keep every image the same ratio. Mixed ratios make the grid crop unpredictable. Four square 1080×1080 slides produce a clean, even 2×2 grid and lose the least content to cropping.
  • Put the message in the middle 70%. Center-cropping eats edges. Headlines, numbers, and faces belong in the middle of the frame; decorative color can run to the edges.
  • Number the slides. "1/4" in a corner tells grid viewers there's an order worth tapping into — the same trick that works when posting multiple photos on Instagram.

The ceiling is four slides, which is real but workable: a hook, two content beats, and a payoff is a complete micro-carousel. If the idea needs six slides, it needs the next option.

Option 2: a thread as the carousel

A thread is X's native sequence format, and it maps one-to-one onto carousel structure: one slide per post, each post carrying one image and one or two lines of text. The reader advances at their own pace — the same self-paced consumption that makes carousels work on swipe-first platforms.

Practical rules that keep a slide thread readable:

1. Lead with the payoff promise

The first post is your cover slide. State the specific thing the thread delivers ("5 pricing-page mistakes, with fixes") — vague openers kill threads before the second post loads.

2. One slide, one idea, one image

Attach exactly one image per post so every image renders full-width at its own ratio instead of getting grid-cropped. This is the only organic route on X where a 16:9 or 4:5 slide displays whole.

3. Close with the ask

The last post is your CTA slide — link, follow prompt, or the product plug you'd put on a carousel's final card. Mid-thread links depress reach less than folklore claims, but the end position converts readers who finished, which is the audience you want.

A thread costs more assembly effort than a grid post, but it has no four-image ceiling and every slide displays uncropped. For educational sequences — the content that carries carousels on LinkedIn and Instagram — it's usually the better trade.

Option 3: a real carousel via the advertiser Post Composer

If you need an actual swipeable carousel in the timeline, it exists — behind advertiser tooling. With an X Ads account (free to create), the Post Composer builds carousels of 2–6 cards, each an 800×418 (1.91:1) or 800×800 (1:1) image — one ratio across the whole set — PNG or JPEG up to 5MB per card. Each card carries its own headline, and the carousel needs a website or app destination — web carousels can share a single link or give each card its own (multi-destination, up to 6 URLs) — which is why these read as ad units even when they aren't promoted. X lets you run the result organic or Promoted-only: uncheck promotion and it publishes to your profile like a regular post.

The catch is friction, not money: you're composing in ads tooling, the format must link somewhere, and it's built for driving clicks rather than native reading. For a link-driven use case — a product launch, a multi-part landing-page pitch — it's genuinely the closest thing to a true X carousel. For everyday educational content, the grid or a thread is less machinery. Either way, if you're already running X ads, reusing slide designs as carousel cards is nearly free: resize to 800×800, keep one ratio, and the same creative works promoted or not.

Designing slides that survive X

Whatever option you pick, the slides themselves follow the same three rules:

  • Square is the safe ratio. 1080×1080 works everywhere on X: it grids evenly at ~7:8 with minimal loss, displays cleanly solo, and matches the 1:1 carousel card. It's also the one ratio that transfers to Instagram and LinkedIn without redesign — the full breakdown is in our Instagram carousel size guide.
  • Design for the center-crop. Assume the outer 15% of every edge can disappear. If the slide still reads, the grid can't hurt it.
  • Export sharp PNGs at exact pixel sizes. X compresses uploads; a slide that starts as a crisp 1080×1080 PNG survives, a pre-compressed JPG turns text muddy. xcarousel exports at exact pixel dimensions from the same pipeline that renders the editor preview, which is what keeps text edges clean after X's compression pass.

Design once, post anywhere

The manual path: design four square slides, keep the message centered, export clean PNGs, attach them in order in the composer — or split them across a thread. It works, and everything above is enough to do it well.

The shortcut: xcarousel generates a designed carousel from a topic, URL, or PDF and exports pixel-exact PNG slides. There's no X preset — X isn't a one-click export target the way Instagram and LinkedIn are, and there's no direct posting to X — but the square 1080×1080 format it exports is exactly the 1:1 that holds up best in X's grid, and the slides upload to the composer like any other images. The hour of writing, layout, and export is the part the tool compresses to about a minute; the posting stays yours.

FAQ

Can you post a carousel on X (Twitter)?

Not from the standard composer — it caps you at 4 photos shown as a grid (tapping one opens a full-screen viewer you swipe through). True 2–6 card swipeable carousels exist, but they're built in X's advertiser Post Composer, which requires a free X Ads account, and can run organic or promoted. Most people use the 4-photo grid or a thread instead.

How many photos can you post on X?

Four per post. X arranges them automatically: two photos sit side by side, three get one tall tile plus two stacked, four form a 2×2 grid. Each image can be a JPG or PNG up to 5MB. The tiles are center-cropped, so keep the important content in the middle of each image.

What size should X (Twitter) images be?

For a single image, 1200×675 px (16:9) displays without cropping in the timeline. In multi-image posts the grid crops each tile — two-image posts trim each photo to roughly 7:8 — so square 1080×1080 slides with centered content are the safest choice when you post more than one.

What are the specs for X carousels?

X carousels take 2–6 cards, each an image at 800×418 px (1.91:1) or 800×800 px (1:1), PNG or JPEG, up to 5MB per card, with one aspect ratio and a headline per card. A website or app destination is required — web carousels can share one link or give each card its own URL (up to 6). They're built in X's advertiser tools — Post Composer, Ads Manager, or the API — and can run promoted or as unpromoted organic posts; the standard composer can't create them.