The short answer
A post on X, formerly Twitter, can carry up to 4 photos, or 1 animated GIF, or 1 video. Photos can be JPG, PNG, GIF or WebP up to 5 MB each; an animated GIF up to 15 MB. A video can be up to 20 minutes and 8 GB by default, or up to 125 minutes and 16 GB for Premium and verified accounts.
X’s developer documentation recommends 1280 × 720 for landscape video, 720 × 1280 for portrait and 720 × 720 for square, at 30 or 60 frames a second, with shapes between 1:3 and 3:1. A post’s text is limited to 280 characters, with every link counting as 23 and every emoji as 2.
Every limit, at a glance
These are the limits X publishes for media in posts, from its developer documentation.
| What | Limit | Recommended |
|---|---|---|
| Media per post | 4 photos, or 1 GIF, or 1 video | |
| Photo | JPG, PNG, GIF or WebP, up to 5 MB | |
| Animated GIF | Up to 15 MB | Up to 1280 × 1080 and 350 frames |
| Video length | 0.5 seconds to 20 minutes | 125 minutes for Premium and verified |
| Video file size | Up to 8 GB | 16 GB for Premium and verified |
| Video shape | 1:3 to 3:1 | 1280 × 720, 720 × 1280 or 720 × 720 |
| Video frame rate | Up to 60 fps | 30 or 60 fps |
| Video encoding | H.264 High Profile video, AAC-LC audio |
How X counts characters
X’s 280-character limit is not a plain count. Its documentation says every link counts as 23 characters however long the address is, every emoji counts as 2, and Chinese, Japanese and Korean characters count as 2 each, so a post in those languages fits 140 of them.
| What you type | Counts as |
|---|---|
| A link, of any length | 23 characters |
| An emoji, however complex | 2 characters |
| A Chinese, Japanese or Korean character | 2 characters |
| Most other letters, numbers and punctuation | 1 character |
Images
Attach up to 4 photos to a post, each up to 5 MB, as JPG, PNG, GIF or WebP. Several photos are shown together in a grid in the timeline and full size when tapped, so keep the important part of each image near its centre.
Add a description to each image. X lets you write alternative text for every photo, which screen readers read aloud to people who cannot see it.
Animated GIFs
One animated GIF per post, up to 15 MB. X’s documentation recommends staying at or under 1280 × 1080 pixels and 350 frames for reliable posting; a larger GIF may fail even under 15 MB. For anything longer or sharper, a short video does better than a GIF.
Video
X accepts video from half a second to 20 minutes, up to 8 GB, by default. Premium and verified accounts can post up to 125 minutes and 16 GB. Shapes from 1:3 to 3:1 are accepted, and X recommends 1280 × 720 for landscape, 720 × 1280 for portrait and 720 × 720 for square.
Encode with H.264 High Profile video and AAC-LC audio, at 30 or 60 frames a second, which is what X recommends and what every phone and editor can export.
Questions
What is the best image size for X?
Any shape works up to 5 MB in JPG, PNG, GIF or WebP. A 16:9 image such as 1200 × 675 is the usual choice for a single landscape photo in the timeline.
How long can a video on X be?
Up to 20 minutes by default, or 125 minutes for Premium and verified accounts, according to X’s developer documentation.
How many images can I post on X?
Up to 4 photos in one post. A post can instead carry 1 animated GIF or 1 video.
What is the GIF size limit on X?
15 MB. X recommends staying at or under 1280 × 1080 pixels and 350 frames so the post creates reliably.
What is the character limit on X?
280 characters, according to X’s documentation, with each link counting as 23 and each emoji as 2.
Sources
- X, Media best practices, X API documentation, checked October 2026.
- X, Counting characters, X API documentation, checked October 2026.