Which TikTok ad placements take a 10-minute video? Only auction

TikTok's auction non-Spark page allows up to 10 minutes; reservation in-feed and TopView stop at 60 seconds. Pick the placement first, then cut with video-trim.

5 min readSume
All posts

Only the auction non-Spark spec allows a long video. On TikTok's ad help pages, auction in-feed non-Spark videos can be up to 10 minutes, Spark Ads list no duration restriction, and reservation in-feed and TopView both stop at 60 seconds (read 2026-10-07). Choose the placement before you choose the edit, or you will cut a 3-minute film for a 60-second slot.

Sume's video-trim and Timeline handle either length; the choice is yours.

Four placements, one table

Read from the auction page, the reservation page, and the TopView page.

TikTok video ad length and size by placement (read 2026-10-07)
PlacementDurationMax sizeMin bitrate
Auction in-feed, non-Sparkup to 10 minutes500 MB516 kbps
Auction in-feed, Spark Adsno restrictionsnot stated on the pagenot stated
Reservation in-feed5-60 s500 MB2,500 kbps
TopView5-60 s500 MB2,500 kbps

What each choice means for the cut

A 10-minute non-Spark ad is a film, so keep the master and trim only for the hook. A reservation or TopView ad is a short, so take the master down with video trim to 9-15 seconds, or assemble a fresh 15-second cut in Timeline 1.0 from the best shots.

The Spark row says duration has no restriction on the page, and that is all I read. Another TikTok page may cap sparked videos, so check that before you assume.

A placement guard

This function takes a probe's duration and size and says which placements the file satisfies on duration and size only. It does not check bitrate, aspect ratio, or audio.

def placements(duration_s, size_bytes):
    ok = []
    if duration_s <= 600 and size_bytes <= 500_000_000:
        ok.append("auction non-Spark")
    if 5 <= duration_s <= 60 and size_bytes <= 500_000_000:
        ok.append("reservation in-feed")
        ok.append("TopView")
    return ok


for d, s in ((14.0, 9_000_000), (300.0, 120_000_000), (2.0, 1_000_000)):
    print(d, s, placements(d, s) or "none")

Probe before you commit

Run video inspect on the final file and feed duration_seconds and size_bytes to the guard. The decimal megabyte is my assumption, since the pages say MB without a definition.

Why the long limit rarely helps

A 10-minute ceiling does not make a 10-minute ad a good idea. The same auction page lists a 516 kbps floor, and a long file at a low bitrate can be small while still failing on picture quality. Use the ceiling for the rare long-form case, such as a demo or a lecture clip, and not as a default.

For most campaigns the 60-second lines on the reservation pages are the practical constraint, and the 9-15 second recommendation is the one to design to.

Sources

Related posts

More in Comparisons

All Comparisons posts

Written by Sume