X Image Sizes: The Numbers, and Why Your Banner Still Gets Cropped

8 min readSocialAPI Engineering

X Image Sizes: The Numbers, and Why Your Banner Still Gets Cropped

The dimensions are easy to find and easy to get wrong anyway — because ★uploading the correct size doesn't stop X cropping it.★

The numbers are below. The more useful half is the cropping behaviour underneath them, which is why a perfectly-sized header still loses its edges on a phone.


The numbers

Element Dimensions Ratio
Header / banner 1500 × 500 3:1
Profile picture 400 × 400 1:1
Post image (single) 1600 × 900 16:9
Post image (square) 1200 × 1200 1:1
Post image (portrait) 1080 × 1350 4:5

File limits: 5MB for images, 15MB for GIFs. JPEG, PNG, GIF, and WebP are accepted.

⚠️ Upload at these dimensions or larger, never smaller. X downscales cleanly and upscales badly. A 750×250 header stretched to fill 1500×500 looks soft in a way nothing fixes afterwards.


★Why the correct size still gets cropped★

This is the part most size guides skip, and it's the reason people keep re-uploading.

The header is cropped differently at every width

A 1500×500 header is 3:1. The space it's displayed in is not 3:1 — it changes with viewport width. On a narrow phone the visible strip is proportionally shorter, so X crops top and bottom. On a wide desktop you see closer to the full image.

★Design for a safe zone, not for the canvas.★ Keep anything that matters — text, logos, faces — within the middle ~60% vertically. The top and bottom bands should be background you can afford to lose.

Also lose the corners: the profile picture overlaps the lower-left of the header, and on mobile the header sits behind interface elements. ⚠️ The bottom-left corner of your banner is effectively unusable.

The profile picture is cropped to a circle

You upload a square; ★X displays a circle★. The four corners are always cut.

What this means: a logo that fills its square edge-to-edge loses its corners. Centre the mark and leave padding — roughly 10% inset on all sides survives the circular mask.

Post images crop in the timeline

An image in a timeline is cropped to a preview ratio; the full image appears only when tapped. ★A tall infographic shows as a narrow slice★ until someone opens it.

Practical rule: put the hook in the middle of the image. Anything at the very top or bottom may not appear in the preview that decides whether people tap at all.


How to verify rather than trust a list

★Dimensions change, and every size guide online is a snapshot of when it was written — including this one.★

The reliable check takes two minutes:

  1. Upload your image
  2. View your profile on desktop at full width, then on a narrow phone, then in a timeline preview
  3. Note what's lost at each

Do this on the real interfaces, not in a mockup template. Templates encode someone's assumption about the crop, and that assumption ages.


Common mistakes

Designing edge-to-edge. The most common one. Full-bleed text in a header will be cut somewhere.

Uploading below the target size. Upscaling is irreversible softness.

Using a transparent PNG for the profile picture. Transparency renders against whatever background the viewer's theme provides — usually not what you intended.

Heavy compression before upload. X recompresses anyway. Uploading an already-compressed JPEG compounds the artefacts.

Text too small. A header rendered at phone width shows your 24px text at a fraction of that. If it isn't legible at thumbnail size, it isn't legible.


Questions people ask

What size is a Twitter banner? 1500 × 500 pixels, 3:1. Upload at that size or larger.

What are the Twitter header dimensions? Same thing — header and banner are two names for the same image. 1500 × 500.

What size is a Twitter profile picture? 400 × 400, displayed as a circle. Keep the important part centred.

Why is my Twitter header cropped? The display area isn't 3:1 at every screen width, so X crops top and bottom. Design for the middle ~60%.

Why does my banner look different on mobile? Narrower viewport, proportionally shorter strip, more aggressive cropping.

What's the safe zone for a Twitter header? Roughly the middle 60% vertically, avoiding the lower-left where the profile picture overlaps.

Why are the corners of my profile picture cut off? It's masked to a circle. Leave about 10% padding inside the square.

What size should a Twitter post image be? 1600 × 900 for landscape, 1200 × 1200 square, 1080 × 1350 portrait.

What's the best aspect ratio for tweet images? 16:9 previews well in the timeline. Portrait takes more vertical space but crops harder in preview.

What's the maximum image file size? 5MB for images, 15MB for GIFs.

What image formats does X support? JPEG, PNG, GIF, and WebP.

Should I use PNG or JPEG? PNG for graphics and text, JPEG for photographs. X recompresses either way.

Why did my image quality drop after uploading? X recompresses uploads. Start from the highest quality source you have.

Can I upload a transparent PNG? Yes, but transparency renders against the viewer's theme background, which varies.

How many images can one post have? Up to four, and the layout changes with the count.

How are multiple images cropped? Two images show side by side, three and four use a grid. Each is cropped to its slot, so square images survive best.

What size for a Twitter video thumbnail? It's pulled from the video, so the video's own aspect ratio determines it — see working with video.

Does image size affect reach? Not directly. What matters is whether the preview is compelling enough to stop a scroll.

Why does my infographic look tiny in the timeline? Tall images crop to a narrow preview slice. Put the hook in the middle, or split it into several images.

What size is a Twitter Community banner? Similar proportions to a profile header, but verify on the real interface — Community layouts differ.

Do I need different sizes for X and Twitter? No. The rename changed branding, not image specs.

How do I check what got cropped? Upload it, then view your profile on desktop, on mobile, and in a timeline preview. Three views, two minutes.

Are there official templates? Various design tools publish them. ⚠️ They encode assumptions about cropping that go stale — verify on the real interface.

What resolution should I design at? At the listed dimensions or 2× for sharpness on high-density screens. Never below.

Why is my header blurry? Almost always uploaded below 1500 × 500 and upscaled.

Can I animate a header? No. Headers are static images; GIFs work in posts but not as headers.

What size is the profile picture in the timeline? Much smaller than 400 × 400 — which is why fine detail disappears. Design for legibility at thumbnail scale.

Does the profile picture crop differ on mobile? It's circular everywhere; only the rendered size changes.

What if my logo is rectangular? Centre it in a square canvas with padding. Filling the square edge-to-edge loses the corners to the circular mask.

How do I make my header look good on all devices? Keep content central, avoid the lower-left, and check at both extremes of width.

Can I preview before publishing? Not properly. Upload, check, and adjust — that's the actual workflow.

Why does my image have black bars? An aspect ratio mismatch with the display slot. Match the listed ratios.

Do image dimensions change over time? Occasionally. ★That's why the verification method matters more than the numbers.★

What's the smallest usable image? Nothing below the listed dimensions. Smaller gets upscaled and looks soft.

How do I get image URLs from posts? They come back with post data in a photos field — see media handling.

Can I bulk-check images across accounts? Programmatically, by fetching profiles and comparing image URLs — but for one account, just look at it.


An honest note on why we wrote this

We build a read-only data API for X. ★This topic has essentially nothing to do with our product — it's a design question, and no API helps you pick a banner size.★

It's here because the search results for it are full of stale numbers and templates that encode outdated cropping assumptions, and because ★the cropping behaviour matters more than the dimensions★ — which almost nobody explains.

The one place our work touches this: if you're auditing many accounts — checking whether a set of profiles have headers at all, or pulling image URLs in bulk — profile data including image URLs comes from an API call. For your own single account, open your profile and look at it.

Related reading: image and video search on X · downloading media properly · what profile data contains.