X · 3 placements

Resize images for X

X's headline sizes are ordinary. The thing that catches people out is that the timeline shows a crop of your image, not your image.

Processed on your device — never uploaded
Drop images to resize
JPG · PNG · WebP · AVIF · GIF · BMP · TIFF · HEIC — nothing is uploaded
or press Ctrl+V
IMAGES · .HEIC · .HEIF · .HIF · .TIF · … · max 50.0 MB

X image sizes

PlacementSizeRatio
Post landscape1600 × 90016:9
Post square1080 × 10801:1
Header1500 × 5003:1

Every size above is exported by the resizer at the top of this page. The table is generated from the tool’s own preset definitions, so it cannot describe a size the export does not produce.

Designing for X

The timeline crops before anyone taps

An image in the timeline is displayed in a preview box with its own proportions, and an image taller or wider than that box is cropped to fit. Tapping shows the whole thing; scrolling past shows the crop.

Since most impressions are scroll-past rather than tap, the crop is the version that matters. Compose so that the centre of the image carries the message, and treat anything near the top or bottom edge as optional.

This is the reason a screenshot of text posted to X so often has its first and last lines cut off in the timeline. The fix is padding, not a different size.

The header is 3:1 and overlapped

At 1500 × 500 the header is 3:1 — extreme, though less so than LinkedIn's 6:1. A photograph cropped to it keeps about a third of its height.

The profile picture sits over the header's lower-left, and on mobile the layout shifts, so the overlap is not in a fixed place. Keep the lower-left third free of anything load-bearing and the header survives both layouts.

Cards and what the platform chooses

When you share a link, X renders a card rather than your uploaded image, and the card image comes from the page's own `twitter:image` or `og:image` metadata. A 1.91:1 image is what `summary_large_image` expects.

So there are two different jobs here that look like one. Uploading an image to a post is a 16:9 or 1:1 decision made here; controlling how your link looks when someone else shares it is a decision made on your website. Getting the second one wrong is invisible until somebody shares you.

Card images are also cached aggressively. Once the platform has scraped a URL, updating the image often will not change the preview until that cache expires, so it is worth getting right before the link circulates rather than after.

Terms used on this page: Aspect ratio, Lossy compression. Back to the full social resizer.

Frequently asked questions

What size should an Instagram post be?

1080 pixels wide, with the height set by the shape you want: 1350 for the portrait format that occupies the most feed space, 1080 for a square, and 566 for landscape. Stories and Reels are 1080 × 1920. The exact numbers for every format this tool exports are in the reference table above, generated from the presets themselves rather than typed from memory.

What size is a YouTube thumbnail?

1280 × 720, a 16:9 frame. That is YouTube's recommended size and the one this tool exports. Design for it to be legible at roughly 210 pixels wide, which is how big it will actually be in a sidebar — a thumbnail that only works at full size is a thumbnail that does not work.

How do I resize one image for every platform at once?

Select every destination you need, then export. The tool crops your image separately for each target ratio, resizes each crop to that platform's pixel dimensions, and packages the whole set into one ZIP with descriptive filenames. One upload of effort, one download, every size correct.

Will my subject get cut off?

Not usually. Rather than cropping from the centre, the tool looks for a face in the image and falls back to a saliency estimate — the region with the most visual detail — then places the crop window around that point. You can nudge the framing afterwards if it chose differently from you, which matters most for the extreme ratios like a 1500 × 500 header.

Is this free?

Completely. Every step runs in your browser using WebAssembly codecs, so there is no server cost for us to pass on. No sign-up, no watermark, no cap on how many images or how many sizes. The Pro plan adds AI tools and AVIF output; social resizing stays free.

Are my photos uploaded?

No. Decoding, face detection, cropping, resizing and ZIP creation all happen on your device. Nothing is transmitted, nothing is stored on our side and nothing needs deleting afterwards — which is what makes this usable for client work and unreleased campaign material.

Does resizing for social media reduce quality?

Downscaling is the safe direction and this tool uses Lanczos resampling, which preserves detail better than the simpler filters most browsers apply by default. The real risk is starting too small: exporting a 1080-pixel image to a 2560-pixel YouTube banner means enlarging, and enlargement cannot add detail that was never captured. Start from the largest original you have.

What is the safe area, and why do my Stories get covered?

A 1080 × 1920 Story is full-screen, and the platform draws its own interface on top of it: your profile and name across the top, and reply controls, captions and buttons across the bottom. Roughly the top and bottom 250 pixels are contested. Keep text and faces in the middle band and use the outer regions for background, or the app will place a Send button over your headline.

Should I export as JPG, PNG or WebP?

The tool picks a sensible output format from your source, keeping PNG where transparency needs preserving and using a lossy format where it does not. For social specifically the choice matters less than people expect, because every platform re-encodes what you upload anyway. What does matter is uploading at the full recommended dimensions, so the platform's own compression starts from a large, clean image.

Why do platforms keep changing their image sizes?

Because the surfaces change. A new full-screen video format, a redesigned profile page or a different feed layout all move the goalposts, and the recommended dimensions follow. That is exactly why the size table on this page is generated from the presets the tool actually exports rather than written into an article: when a preset is updated, the documentation updates with it instead of quietly becoming wrong.