One reference page for the technical specs of every popular US ad surface — aspect ratios, file size caps, length windows, character limits, safe zones, audio licensing, and disclosure rules — across 10 platforms. Updated as platforms publish changes. The Ad Bench grades short-form video (TikTok / Reels / Shorts) today; the full coverage here is so an operator can plan creative for the entire media mix in one tab.
How to read this page
▾
Every platform below gets its own section with a table per ad format. Lengths are listed in seconds; file-size caps in MB (4096 MB = 4 GB, 131072 MB = 128 GB). Aspect ratios are listed in the order the platform's own docs prefer — 9:16 first when vertical is the primary placement, 1.91:1 first when desktop-link-preview is the primary placement.
Character limits cover the three text fields almost every surface exposes: a primary text / body field, a headline / title, and (when applicable) a CTA button override. Where a platform's CTA is a fixed-list dropdown (Snapchat, Pinterest, most of Meta) the CTA char column reads 0 — you pick from a list rather than type your own.
Citations sit at the bottom of each platform section. When a spec changed recently (TikTok's July 2025 length-cap bump, Meta's March 2026 safe-zone unification, Threads ads going global January 2026), the section's notes call out the date so you know how fresh the number is.
TikTok
▾
Auction (In-Feed, Spark) and Reservation (TopView, Branded) sit on the same 9:16 canvas; Spark Ads inherit organic post specs and have no duration cap.
July 2025 update: Non-Spark In-Feed Ads now support up to 10 minutes (was 60 seconds). Commercial-content disclosure became mandatory for all promotional posts on September 1, 2025.
In-Feed Ad (Auction)
Aspect ratios
9:16, 1:1, 16:9
Resolution
1080×1920 px (9:16 native)
Length
5s – 10 min (600s)
Max file size
500 MB
File formats
MP4, MOV, MPEG, AVI, GIF
Captioning
On-screen text strongly recommended; ~85% of TikTok feed viewers watch muted.
Safe zone
Top ~130 px reserved for status bar; bottom ~482 px houses caption, username, and right-rail action stack (like, comment, share, save).
Audio rules
Must use TikTok Commercial Music Library or upload self-licensed audio. Trending UGC sounds from the consumer library are NOT licensed for paid placements.
Headline
100 chars max
Body / primary text
100 chars max
CTA
Fixed list (Shop Now, Learn More, etc.)
Disclosure
Toggle TikTok's Commercial Content Disclosure on; AIGC label required if AI-generated voice, face, or core performance is used. FTC #ad in caption as belt-and-suspenders.
Spark Ad
Aspect ratios
9:16, 1:1, 16:9
Resolution
Inherits source post; 1080×1920 preferred
Length
1s – 10 min (600s)
Max file size
500 MB
File formats
MP4, MOV, MPEG, AVI, GIF
Captioning
Inherits the organic post; caption can be edited (≤100 chars, emoji + hashtag allowed) or left blank.
Safe zone
Same 9:16 safe zone as In-Feed; expect the creator handle + organic caption layer to compress the right rail further.
Audio rules
Sparked post must use a commercial-cleared track. If the organic uses a UGC-library sound, it must be replaced before Sparking.
Headline
100 chars max
Body / primary text
100 chars max
CTA
Fixed list (Shop Now, Learn More, etc.)
Disclosure
Paid Partnership toggle in the original post, plus TikTok's Branded Content disclosure. The creator's own FTC #ad obligations carry over.
TopView
Aspect ratios
9:16
Resolution
1080×1920 px
Length
5s – 1 min (60s)
Max file size
500 MB
File formats
MP4, MOV
Captioning
On-screen text recommended; ad plays full-screen on app open with sound-on by default.
Safe zone
Standard 9:16 safe zone applies; first 3 seconds are the auto-play hook.
Audio rules
Commercial Music Library or self-licensed only.
Headline
100 chars max
Body / primary text
100 chars max
CTA
Fixed list (Shop Now, Learn More, etc.)
Disclosure
Same as In-Feed; AIGC label when applicable.
Branded Hashtag Challenge
Aspect ratios
9:16
Resolution
720×1280 px minimum, 1080×1920 recommended
Length
12s – 15s
Max file size
100 MB
File formats
MP4, MPEG, 3GP, AVI, MOV
Captioning
Hashtag and challenge instructions on-screen; standard 9:16 sound-off considerations apply.
Safe zone
Discover-tab banner is TikTok-designed; submitted assets render in the campaign Pages area within standard 9:16 safe zone.
Audio rules
Branded sound or commercial-cleared track only. Original sounds require written music rights.
Meta Ads Manager unifies Feed, Stories, Reels, Explore, and Shop placements; each ad set can opt into multiple placements with placement-specific creative.
Stories + Reels safe-zone guidance was unified in March 2026 around a 1440×2560 high-density canvas with 14% top / 20-35% bottom / 6% sides clearance.
Reels Ad
Aspect ratios
9:16
Resolution
1080×1920 px (1440×2560 for high-density)
Length
1s – 1.5 min (90s)
Max file size
4 GB
File formats
MP4, MOV
Captioning
On-screen text required for the silent ~60% of viewers; auto-captions available via Meta's caption tool.
Safe zone
Top 14% (~358 px on 1440×2560) for handle + sound icon; bottom 20-35% (~512-896 px) for profile icon, primary text, CTA bar; 6% on each side (~87 px) for the action stack.
Audio rules
Instagram organic Music Library is OFF-LIMITS for ads. Use Meta Sound Collection (commercial-cleared) or upload your own licensed track. Original UGC sounds require written creator permission.
Headline
40 chars max
Body / primary text
125 chars max
CTA
Fixed list (Shop Now, Learn More, etc.)
Disclosure
Paid Partnership tag (creator + brand both confirmed); FTC #ad in caption opener; AIGC disclosure if Meta's AI labeling threshold is met.
Feed Video / Image
Aspect ratios
1:1, 4:5
Resolution
1080×1080 (1:1) or 1080×1350 (4:5)
Length
1s min, 4h max (~14400s)
Max file size
4 GB
File formats
MP4, MOV, JPG, PNG
Captioning
Captions recommended; Feed plays muted on initial scroll, sound-on after tap or unmute.
Safe zone
Avoid placing critical text in top 250 px or bottom 250 px; 5% side padding accounts for adaptive cropping.
Audio rules
Same Meta Sound Collection / self-licensed rules as Reels. UGC library is consumer-only.
Headline
40 chars max
Body / primary text
125 chars max
CTA
Fixed list (Shop Now, Learn More, etc.)
Disclosure
Paid Partnership tag where applicable; FTC #ad first-line.
Stories Ad
Aspect ratios
9:16
Resolution
1080×1920 px
Length
1s – 1 min (60s)
Max file size
4 GB
File formats
MP4, MOV, JPG, PNG
Captioning
On-screen text strongly recommended; Stories auto-plays sound-on but Instagram's mute carries through ad slot.
Safe zone
Top ~250 px (profile + close button) and bottom ~250-340 px (CTA sticker + reply bar) must be clear of important content.
Audio rules
Same rules as Reels: Meta Sound Collection or licensed.
Google Ads Demand Gen (formerly Video Action Campaigns) consolidates Shorts, in-stream, Discover, and Gmail placements; Masthead remains reservation-only.
April 2026 Demand Gen Drop added 9:16 image-asset support for Shorts and channel-level Shorts breakdowns in reporting.
Every Snapchat surface is locked to 9:16 full-screen; Snap's commercial Sounds library is fully licensed (unlike TikTok's UGC sounds), but consumer Sounds are organic-use-only.
Snap Ad (Single Video)
Aspect ratios
9:16
Resolution
1080×1920 px
Length
3s – 3 min (180s)
Max file size
1 GB
File formats
MP4, MOV
Captioning
On-screen text strongly recommended; Snap's median view duration on Snap Ads is under 6 seconds.
Safe zone
Top 150 px and bottom 150 px clear of critical content; CTA swipe arrow stacks bottom-center.
Audio rules
Snap Commercial Sounds library is fully licensed for paid use; consumer Sounds library is organic-only.
Headline
34 chars max
CTA
Fixed list (Shop Now, Learn More, etc.)
Disclosure
Sponsored chrome auto-applied; FTC overlay in first 2 sec.
Story Ad
Aspect ratios
9:16
Resolution
1080×1920 per card; tile 360×600 px
Length
3s – 3 min (180s)
Max file size
1 GB
File formats
MP4, MOV, JPG, PNG
Captioning
Per-card on-screen text recommended.
Safe zone
Tile image (360×600, ≤2 MB PNG) renders in the Discover feed; cards inside follow standard 9:16 safe zone.
Audio rules
Snap Commercial Sounds or self-licensed.
Headline
34 chars max
CTA
Fixed list (Shop Now, Learn More, etc.)
Disclosure
Sponsored chrome auto-applied.
Collection Ad
Aspect ratios
9:16
Resolution
1080×1920 (hero); 160×160 px product tiles
Length
3s – 3 min (180s)
Max file size
1 GB
File formats
MP4, MOV, JPG, PNG
Captioning
On-screen text recommended on hero asset.
Safe zone
Top 150 px and BOTTOM 450 px clear — the bottom buffer is larger than standard Snap Ads to accommodate the 4-product tile strip.
Audio rules
Snap Commercial Sounds or self-licensed.
Headline
34 chars max
CTA
Fixed list (Shop Now, Learn More, etc.)
Disclosure
Sponsored chrome; per-product Shop Now/Book Now CTAs.
AR Lens
Aspect ratios
9:16
Resolution
Lens Studio render; icon 1024×1024 px
Length
3s – 3 min (180s)
Max file size
8 MB
File formats
LENS
Captioning
Lens UI carries call-to-action prompts; on-screen tap/hold cues render via Lens Studio overlays.
Safe zone
Lens Studio standard — keep brand callouts out of the face-tracking zone center-frame.
Audio rules
Audio bundled with the Lens must be self-licensed or pulled from Snap's commercial library.
Headline
25 chars max
CTA
Fixed list (Shop Now, Learn More, etc.)
Disclosure
Sponsored badge on Lens icon in carousel.
Commercial (Non-Skippable)
Aspect ratios
9:16
Resolution
1080×1920 px
Length
6s – 3 min (180s)
Max file size
1 GB
File formats
MP4, MOV
Captioning
Captions strongly recommended; first 6 sec are forced-view.
Safe zone
Standard 9:16 safe zone; no skip UI for the first 6 sec (Extended Play allows skip after).
2:3 portrait dominates the feed; 9:16 vertical applies only to Idea Pins and full-bleed Video Pins. Pin titles + descriptions act as both ad copy and search signal.
Standard Pin (Image Ad)
Aspect ratios
2:3
Resolution
1000×1500 px
Length
Image / static only
Max file size
20 MB
File formats
JPG, PNG
Captioning
Pin description (≤500 chars) doubles as alt-text and SEO signal; titles ≤100 chars (only first 40 visible in feed).
Safe zone
Bottom ~80 px reserved for save button + meta overlay; keep brand mark and key text out.
Audio rules
Image-only.
Headline
100 chars max
Body / primary text
500 chars max
CTA
Fixed list (Shop Now, Learn More, etc.)
Disclosure
Promoted by [Brand] label auto-applied.
Video Pin (≤30s)
Aspect ratios
1:1, 2:3, 9:16
Resolution
1080×1920 (9:16) or 1080×1080 (1:1) or 1000×1500 (2:3)
Length
4s – 30s
Max file size
2 GB
File formats
MP4, MOV, M4V
Captioning
Captions recommended; Pinterest video plays muted on initial scroll.
Safe zone
Same 80 px bottom reserve as Standard Pin; right-rail save button overlays at ~30 px from right.
Audio rules
Self-licensed music only — Pinterest does not provide a built-in licensed library for ads.
Headline
100 chars max
Body / primary text
500 chars max
CTA
Fixed list (Shop Now, Learn More, etc.)
Disclosure
Promoted label auto-applied.
Video Pin (30s–60s)
Aspect ratios
1:1, 2:3, 9:16
Resolution
1080×1920 / 1080×1080 / 1000×1500
Length
30s – 1 min (60s)
Max file size
2 GB
File formats
MP4, MOV, M4V
Captioning
Captions required for sound-off comprehension; tutorial-style content dominates this length band.
Safe zone
Same as ≤30s Video Pin.
Audio rules
Self-licensed only.
Headline
100 chars max
Body / primary text
500 chars max
CTA
Fixed list (Shop Now, Learn More, etc.)
Disclosure
Promoted label.
Idea Pin
Aspect ratios
9:16
Resolution
1080×1920 px
Length
0s – 1 min (60s)
Max file size
2 GB
File formats
MP4, MOV, JPG, PNG
Captioning
Per-page on-screen text supported via Pinterest's native sticker tools; up to 20 pages.
Safe zone
Top ~270 px (creator handle + sticker bar) and bottom ~180 px (page indicators + react bar) reserved.
Audio rules
Self-licensed only.
Headline
100 chars max
Body / primary text
500 chars max
CTA
Fixed list (Shop Now, Learn More, etc.)
Disclosure
Promoted label.
Carousel Pin
Aspect ratios
1:1, 2:3
Resolution
1000×1000 or 1000×1500 (same ratio across all cards)
Length
Image / static only
Max file size
20 MB
File formats
JPG, PNG
Captioning
Same ad copy + alt-text rules as Standard Pin.
Safe zone
2-5 cards; card swipe indicators overlay bottom-center starting at ~60 px from bottom.
Audio rules
Image-only.
Headline
100 chars max
Body / primary text
500 chars max
CTA
Fixed list (Shop Now, Learn More, etc.)
Disclosure
Promoted label.
Shopping Pin (Product)
Aspect ratios
2:3
Resolution
1000×1500 px
Length
Image / static only
Max file size
20 MB
File formats
JPG, PNG
Captioning
Pulls title + description from product feed; price + availability auto-render in pin chrome.
B2B-skewed targeting and a strict 200 MB video cap mean LinkedIn creative often runs lower-resolution than the feed peer set; Document Ads and Conversation Ads outperform Single Image for consideration.
Meta opened Threads ads globally to all advertisers in January 2026 after a yearlong limited beta. Placement defaults to ON in Advantage+ and Manual Placements; opt-out is per-campaign.
Meta hasn't published a Threads-specific ad-spec doc; specs below are inherited from Instagram Feed equivalents per Meta's January 2026 global-rollout announcement. CPMs were ~30-40% below Instagram in the early land-grab window.
—9:16 is the universal floor. Every short-form-video surface (TikTok, Reels, Shorts, Snapchat, Pinterest Idea Pin, X Vertical Video, Threads Video) accepts 1080×1920. Cutting one 9:16 master and cropping down to 1:1 or 4:5 for Feed surfaces is faster than the reverse.
—Captions are mandatory in 2026. Every platform here recommends or requires them; sound-off prevalence ranges from ~25% (Shorts) to ~85% (TikTok) but no platform is sound-on-by-default for the entire feed. The exception worth knowing: X Vertical Video Ads in the Immersive Media Viewer autoplay sound-on.
—Audio licensing splits cleanly. TikTok, Meta, YouTube, and Snapchat each maintain a commercial-cleared library separate from their consumer library; using a trending UGC sound on a paid placement is a hard reject. Pinterest, Reddit, LinkedIn, and X have no platform-provided library — bring your own license.
—AIGC labels are now table stakes. TikTok, Meta (across Instagram/Facebook/Threads), and YouTube each require advertisers to flag AI-generated voice, face, or core performance. FTC guidance from late 2024 (refined 2026) makes "ad" alone insufficient when AI was used — disclose both.
—Two outliers worth flagging. LinkedIn caps video at 200 MB (vs 1+ GB everywhere else), forcing tighter encoding. Reddit Free-Form Ads have a 40,000-character body — order-of-magnitude longer than any other primary-text limit on this page.