Does a TikTok ad need sound? Find silent AI videos with Sume

TikTok's ad policy says an ad must contain audio that is not muffled. Many AI video clips are silent. Probe for audio with Sume and add a bed in Timeline.

4 min readSume
All posts

Yes. TikTok's ad format policy says the ad must contain audio and that it must not be of poor quality, such as having unclear or muffled sound. The Reach and Frequency reservation page also lists sound as required for a non-Spark ad. So a silent clip is not ready to upload. Many AI video outputs have no audio track, so probe each file first with Sume Video inspect, then add a voice or music bed in Timeline.

What do the pages say about sound?

The two pages cover two different checks. The general policy covers every ad; the reservation page covers file specs for one buying type.

TikTok Ads Help, Ad format and functionality policy and Reservation In-Feed Ads Reach & Frequency, read 2026-10-03
PageWhat it says about audio
Ad format and functionality policy (April 2026)The ad must contain audio, and it must not be of poor quality, such as unclear or muffled sound
Reservation In-Feed Ads, Reach & Frequency (July 2025)Non-Spark ads must have sound

Why would an AI clip be silent?

Not every video model returns sound. In Sume's catalog, gemini-omni-flash-1.1 is documented with native audio always on, and the docs I read do not promise sound for the other entries, so probe every file instead of assuming. Clips cut out of other files can also lose their track, and a still-image slideshow rendered with audio.mode: "silence" is silent by design.

The fix is the same either way: confirm whether the file has audio, and add it when it does not.

How do you check for audio with Sume?

Video inspect returns probe facts for one clip on media.sume.com. With frames: false no stills are made, and the doc tells you to read probe.has_audio before any step that needs audio; a transcript request on a silent clip fails with inspect_source_has_no_audio. Source length can be up to 1800 seconds, and the default mode is sync with a 30 second wait.

If the clip does have audio, the check for "muffled" is a listening check. A transcript with transcribe: true ($0.01 per audio minute) helps: speech that the transcript misses or garbles often sounds unclear to a person too, though that is a signal, not a guarantee.

curl -X POST https://api.sume.com/v1/video-inspect \
  -H "Authorization: Bearer $SUME_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: has-audio-001" \
  -d '{
    "video_url": "https://media.sume.com/artifacts/artf_demo/ad.mp4",
    "frames": false
  }'

How do you add sound to a silent clip?

Generate a bed with Music Router (Lyria 3.5, $0.125 per generation, prompt up to 5000 characters) and mix it in Timeline. Timeline needs an audio spine: either a file, or audio.mode: "silence", and soundtrack.duck_db needs a real spine, not silence. So use the music as the audio.url spine with audio.duration_seconds set to the clip length, or lay a voice file as the spine and the music as a soundtrack with gain_db to sit under it.

Render cost is $0.10 per output minute, rounded up, and /plan is unbilled. Then run Video inspect on the result: probe.has_audio should now be true.

What about Spark Ads?

The audio rule is in the general ad policy, so it applies to every ad, Spark or not. TikTok's Spark Ads page lists no restrictions on ratio, resolution, file type, bitrate or size for a sparked post, but that is a statement about file format, not about whether the ad needs sound. If the post is silent or muffled, plan on adding sound before you promote it, or choose a different post.

This is also where the policy's other requirement sits: ad content must be dynamic, with static images no more than 50% of the video. A slideshow with a music bed passes the sound check and can still fail that one, so test both on the same file.

Does the sound need to be good, not just present?

Yes: the policy adds that the audio must not be of poor quality. Keep voice clear above the bed, avoid clipping, and listen on a phone speaker before you upload. A music bed that hides the speech is the usual cause of an unclear ad, which is what gain_db and duck_db are for in Timeline.

Sources

Related posts

More in Use cases

All Use cases posts

Written by Sume