TikTok Ad Network thumbnail is the first frame: check frame 0
TikTok's Ad Network spec says the first frame is the default thumbnail. Pull frame 0 with Sume video frames, and skip a fade-in so the thumbnail is not black.
For TikTok Ad Network video ads, the default thumbnail is the first frame of your video, so check frame 0 before you upload. Sume's video frames route returns a still at time 0 as a durable image for a Modal-metered cost. If it is black, your render had a fade-in or a dark first beat.
What TikTok's page says
The Pangle ad assets page (read 2026-10-10) lists three video sizes, up to 10 minutes and 500 MB, and says the first frame is the default thumbnail.
| Item | Value on the page |
|---|---|
| Sizes | 1280x720, 720x1280, 720x720 |
| Length | Up to 10 minutes |
| File size | 500 MB |
| Thumbnail | First frame is the default |
Why a Sume render can have a bad frame 0
Timeline 1.0 has output.fade_in_seconds, from 0 to 5 seconds. A fade-in makes the first frame black, and that black frame becomes your ad's thumbnail if you did nothing else. The same is true if the first slot starts on a dark transition. A cut that begins on the strongest frame needs no fade-in.
Dark openers cause the same issue without any fade. A slot that begins with a dip, a slow reveal from a black plate, or a transition from the previous slot can leave frame 0 nearly empty. The fade transition types on Timeline apply to slots after the first, so slot 0 itself is only dark if the clip is dark or you set a fade-in on the output. Look at the source's first frame, too, since a generated clip may start on a dim establishing shot.
Check it before upload
Video frames takes one Sume-hosted clip of 300 seconds or less and an at list of 1 to 24 times. Send at: [0] and it returns a durable image artifact. The default format is jpeg, png is available, and max_edge from 16 to 2160 clamps the long edge. Without max_edge the frames keep the source size.
If the still is wrong, re-render with fade_in_seconds at 0 and move your strongest shot to the start. If it is only slightly off, note that the page says default: nothing here says whether you can choose another thumbnail in the ad flow, so check the Ads Manager.
A practical routine is to request frame 0 and one frame at around one second. The pair tells you whether the opener is stable or a flash. Time values must be at least 0 and below the clip duration, otherwise the worker fails with frame_time_out_of_range. Video frames is billed by its Modal compute, so a two-frame request on a short clip is a small cost compared with an ad that ships with a black thumbnail.
curl -X POST https://api.sume.com/v1/video-frames \
-H "Authorization: Bearer $SUME_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: frame-zero-001" \
-d '{
"video_url": "https://media.sume.com/artifacts/artf_demo/ad.mp4",
"at": [0],
"max_edge": 1280
}'Sizes from a Sume render
Timeline 1.0 outputs 1080x1920 by default. For TikTok's 720x1280 vertical, send output width 720 and height 1280, both even and within 256 to 2160. For 1280x720 send 1280 by 720, and for the square 720 by 720. The cost is $0.10 per ceil minute of output.
Limits
Sume does not set the TikTok thumbnail. It shows you what frame 0 is, and it lets you render the file so that frame is the one you want.
Sources
Related posts
More in Media tools
- TikTok ad AI disclosure: the AIGC label or your own caption
TikTok's ad policy accepts the AIGC label or your own clear disclaimer, caption, watermark or sticker. Here is what Sume can burn in and what it cannot.
- TikTok Spark Ads have no length cap; non-Spark stops at 10 min
TikTok's page lists no duration restriction for Spark Ads and up to 10 minutes for non-Spark ads. Decide which one needs a Sume trim before you upload.
- Upscale a Vidu Q4 clip on Sume: $0.009 per input second, 30 s max
Vidu Q4 Preview is not on Sume's video list, but its clips can go through Sume video upscale by public HTTPS URL. Cost table for 5 to 30 s. Read 2026-10-10.
- Can video-trim output a 4K frame? Each side is capped at 2160 pixels
Sume video-trim conforms output to 256 to 2160 pixels a side at 24, 25, 30 or 60 fps, exact precision only, so a 3840 pixel side is refused. Read 2026-10-10.
Written by Sume