Video size caps: TikTok 4 GB, Pinterest 2, LinkedIn 500 MB, X 8
Each platform publishes its own byte ceiling. At an assumed 8 Mbps a 30-minute video is 1.8 GB, over LinkedIn's 500 MB; Sume docs publish no render file size.

The ceilings are 4 GB on TikTok's API, 2 GB for Pinterest video ads, 500 MB for LinkedIn standard video and 8 GB for a default X account, so LinkedIn is the one a long Sume render will hit first. Each number comes from the platform's own page. LinkedIn's Videos API also says the upload initializer accepts up to 5 GB, and the page lists the two figures without reconciling them, so plan for 500 MB.
| Platform | Maximum | Where it is stated |
|---|---|---|
| TikTok | 4 GB | Media transfer guide |
| 2 GB | Product specs, video ads | |
| 500 MB (75 KB minimum) | Videos API, file size specification | |
| LinkedIn upload init | 5 GB | initializeUploadRequest.fileSizeBytes |
| X, default account | 8 GB (20 minutes) | Chunked upload page |
| X, Premium/verified | 16 GB (125 minutes) | Chunked upload page |
Length and bytes interact
YouTube's own encoding page recommends 8 Mbps for 1080p at standard frame rates. Taking that as an example bitrate, one minute is 60 MB of video (8 Mb/s times 60 s divided by 8). Then 500 MB lasts about 8.3 minutes, and a full 30-minute video would be 1.8 GB, more than LinkedIn allows. This is arithmetic on an assumed bitrate, not a statement about what Sume produces.
Sume does not publish a bitrate or size for a Timeline 1.0 render, and it rejects codec, crf and ffmpeg_args fields, so you cannot trim bytes by lowering quality. Your levers are length, output size (256 to 2160 per edge) and frame rate.
A size check to run on the result
Download the job's video_url, read the byte length and compare it with the cap of the platform you are sending to. This script does the comparison for the four caps above, using decimal gigabytes and megabytes as an approximation.
import sys
CAPS = {"tiktok": 4_000_000_000, "pinterest": 2_000_000_000,
"linkedin": 500_000_000, "x": 8_000_000_000}
size = int(sys.argv[1]) # bytes of the finished MP4
for name, cap in CAPS.items():
print(name, "ok" if size <= cap else "too large")Sources
Related posts
More in Comparisons
- Vidu Q4 Preview at $0.014 a second: one minute vs Sume models
Vidu Q4 Preview launches from $0.014 per second, about $0.84 a minute. Vidu Q4 is not in Sume's catalog; here are Sume's per-minute prices.
- Sume vs Argil: AI avatar video and video agents compared
Argil makes AI-avatar and story videos with a chat agent, Director; Sume is a video agent with a multi-model API. Avatars, API, pricing, and limits compared.
- Sume vs fal: a generative media API or a video agent platform
fal runs 1,000+ image, video, and audio models behind one API. Sume adds a video agent, Formats, and avatars to a multi-model API. How the two surfaces differ.
- HeyGen alternatives with an API: price units, limits, and fit
HeyGen alternatives with an API: Synthesia, Creatify, Argil, Arcads, and Sume compared by price unit, API shape, limits, and live vs rendered avatars.
Written by Sume