White backgrounds hide TikTok's ad UI: dim the clip, check for free
TikTok's reservation page warns that white or transparent backgrounds can hide the nickname and captions. Dim with video-filter ops, check first, then re-probe.

If your reservation ad has a white background, TikTok's own text may disappear on it. The reservation in-feed page recommends avoiding transparent or white backgrounds because nicknames, ad captions, and music captions may not be visible: the text color and UI icons in the app are white (read 2026-10-07). Sume's video-filter can dim a bright clip, and its check route is free.
Dimming is a pixel trick on the whole frame, so it is the right fix for a bright scene and the wrong one for a product on a white sweep that needs to stay true to color.
What to change, what to keep
The dim op multiplies luma across the clip: amount is in (0, 1], 1 changes nothing, and 0.45 is the docs' example. Black stays black and chroma is untouched. Dimming 0.45 does not equal readable; I have not measured TikTok's UI contrast, so the pass condition is your own eyes on a device preview, which the page also recommends.
| Situation | Option | Cost note |
|---|---|---|
| Bright UGC clip | video-filter dim, amount 0.45-0.8 | $0.02 per encode |
| Product must stay true color | restage on a tinted backdrop, not a dim | image or video job |
| Only the top and bottom edges clash | crop is not a fix: it changes framing | n/a |
| TikTok says white backgrounds risk the UI | preview in TikTok's tool before launch | free |
Check first, then encode
POST /v1/video-filter/check validates the program and the source with no job, no credits, and no encoder. It returns valid, diagnostics, and a next_action. Only then submit the same body to POST /v1/video-filter with an Idempotency-Key. The public rate is $0.02 per encode job; confirm in GET /v1/catalog.
curl -X POST https://api.sume.com/v1/video-filter/check \
-H "Authorization: Bearer $SUME_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"video_url": "https://media.sume.com/artifacts/artf_demo/bright.mp4",
"ops": [{ "op": "dim", "amount": 0.6 }]
}'Verify with stills, not with faith
Run video inspect on the result with frames.at set to the first second and the last second, then lay the app's white text over the stills in any editor or compare them in TikTok's preview tool. The source for video-filter is capped at 300 seconds, far above the 60 s reservation window, so length is not the issue.
The output is a new MP4; the source is unchanged. Put the result into video[] of a Timeline render if you still need the final assembly, following Jobs and results to collect it.
Alternatives to dimming
If the product is white, dimming the whole frame makes it grey, which is its own problem. A better route can be to stage a tinted backdrop or a colored lower third behind the area where the app draws its text, which is a design change rather than a filter.
Keep the dim for lifestyle footage with a blown-out sky or a white room. A mild amount such as 0.8 may be enough where 0.45 is heavy-handed; the check route is free, so try two values and look at stills from each before you pay for the encode.
Sources
Related posts
More in Media tools
- TikTok reservation ads need 2,500 kbps: compute it from the probe
TikTok's auction page asks for 516 kbps, its reservation and TopView pages for 2,500 kbps. Compute the average from video-inspect size and duration first.
- TikTok reservation ads must include audio: probe, then add a bed
TikTok's reservation spec says every video creative must include audio. Probe has_audio with video-inspect, then give a silent clip a voice or music spine.
- TopView says 15 seconds, reservation says 9-15: trim both for $0.04
TikTok's TopView page recommends 15 seconds and the reservation page 9-15. Cut a 9-second and a 15-second version from one master with two video-trim jobs.
- TikTok TopView locks assets at preloading: freeze the cut first
TopView creatives need sales-rep pre-approval and cannot change once preloading begins. Use Timeline's unbilled plan, then render once with an idempotency key.
Written by Sume