HandBrake export settings for X (Twitter).
1920 x 1080 at 30 fps, H.264, 8 Mbps and AAC 192 kbps: here is why, and exactly where each setting lives in HandBrake.
HandBrake to X (Twitter)
Official- Resolution
- 1920 x 1080
- Frame rate
- 30 fps, constant
- Codec
- H.264, profile High, level 4.0
- Bitrate
- Avg Bitrate + Multi-Pass: target 8 Mbps (8000 kbps), max 12 Mbps
- Keyframes
- Every 2 s = 60 frames, 2 B-frames, closed GOP
- Audio
- AAC-LC, 192 kbps, 48 kHz, stereo
- Colour
- Rec. 709 (BT.709), 8-bit 4:2:0, limited (TV) range
- Container
- MP4 with Fast Start (moov atom at the front)
X recommends at least 5,000 kbps video and 128 kbps audio.
Estimated size: 124.1 MB for 2:00.
Step by step in HandBrake
- 1Open Source and pick your exported master file (or download the ready preset below and use Presets > Import from file).
- 2Summary tab: Format MP4, tick Web Optimized.
- 3Dimensions tab: set the size to 1920 x 1080.
- 4Video tab: Video Encoder H.264 (x264), Framerate 30, Constant Framerate.
- 5Quality: Avg Bitrate (kbps) 8000, tick Multi-Pass Encoding.
- 6Encoder Profile High, Encoder Level 4.0. In Advanced Options add keyint=60:vbv-maxrate=12000:vbv-bufsize=24000.
- 7Audio tab: AAC, Stereo, 48000 kHz, Bitrate 192.
- 8Set Save As and click Start Encode.
Bitrate at other resolutions
Same settings, different size or frame rate.
| Resolution | 30 fps | 60 fps |
|---|---|---|
| 720p | 5 Mbps, level 3.1 | 7.5 Mbps, level 3.2 |
| 1080p | 8 Mbps, level 4.0 | 12 Mbps, level 4.2 |
X (Twitter) upload limits
Each value links to where it was published.
- Free account: 512 MB
- X Premium / subscription: 16 GB
Common mistakes
- Typing 2 into HandBrake's keyframe field. It counts frames, not seconds: at 30 fps that is 60.
- Entering 8 in a Kbps field. HandBrake takes kilobits: 8 Mbps is 8000.
- Uploading HDR (10-bit PQ/HLG) to X (Twitter). There is no published HDR path, so colours can look washed out; export SDR Rec. 709.
- Leaving phone footage at a variable frame rate. Export at a constant 30 fps, or audio drifts and motion stutters after X (Twitter) re-encodes it.
- Going over the length limit. X (Twitter): 140 seconds without a subscription; Premium up to 4 hours on x.com and iOS, 10 minutes on Android.
- Peak Framerate keeps variable frame rate; choose Constant Framerate for platforms and editors.
- Avg Bitrate has no maximum field; the vbv options in Advanced Options set the cap (software encoders only).
For comparison, YouTube publishes 8 Mbps for 1080p at 30 fps. Example length used for sizes: 2:00.
Frequently asked questions
What bitrate should I export from HandBrake for X (Twitter)?
For 1080p at 30 fps use about 8 Mbps (8000 kbps), VBR, 2 pass, with a maximum of 12 Mbps. X recommends at least 5,000 kbps video and 128 kbps audio.
What resolution and frame rate should I use for X (Twitter)?
1920 x 1080 at 30 fps is a safe choice. X (Twitter): Recommended 1280x720 (landscape), 720x1280 (portrait), 720x720 (square). Premium uploads up to 1080p; videos over 2 h must be 720p. Frame rate: 30 or 60 fps recommended; 60 fps or less required.
What is the maximum file size and length on X (Twitter)?
File size: 512 MB without a subscription; 16 GB for Premium / X Subscription (Plus, Premium, Super, Ultra). Length: 140 seconds without a subscription; Premium up to 4 hours on x.com and iOS, 10 minutes on Android.
Which codec should I pick in HandBrake for X (Twitter)?
H.264, profile High, level 4.0, in an MP4 file. X (Twitter) lists: H.264 High Profile; YUV 4:2:0 only; progressive scan; no open GOP.
Can I export HDR from HandBrake to X (Twitter)?
X (Twitter) has no published HDR upload path, so export SDR Rec. 709.
HandBrake for other platforms
Other editors for X (Twitter)
Hubs and tools
Shinel Studios
Rather send the footage and get X (Twitter)-ready edits back?
Our editors cut, caption, colour and export to each platform's spec, with 2 revision rounds. Shorts come back in 48-72 hours, long videos in 5-10 days.