Video ad checker: specs and loudness, measured from the file
Gatecheck checks a finished video ad against 14 video placements on Meta, TikTok, YouTube, LinkedIn, Snapchat, X, Pinterest, Connected TV and TV broadcast, in your browser. It reads the file itself (MP4, MOV including ProRes masters, M4V or WebM), measures the length from the video track to the hundredth of a second, and measures loudness and true peak to ITU-R BS.1770 against each destination's target: -23 LUFS for EBU R 128 TV, -24 LKFS for US TV and connected TV, -16 LUFS for Snapchat. The file never leaves your computer, and checking one video at a time is free.
Specs last checked 17 October 2026 against the platforms' own pages · Nothing is uploaded
What does Gatecheck check in a video ad?
Every check below runs on every video, against every placement whose shape it fits. Each finding says what is wrong, why it matters and how to fix it, and is marked Fix (will be rejected or shown wrong), Review (worth a look before launch) or information.
| Check | What it catches |
|---|---|
| Container and codec | A file type or codec the placement does not take, and ProRes or DNxHD edit masters sent to social, where the platform re-encodes them with little control over the result |
| File weight | A file over the limit, or within a few bytes of it, where the result depends on whether the platform counts a kilobyte as 1,000 or 1,024 bytes |
| Length | Too short, too long, or a few hundredths over a hard cap (a 6.04 second bumper), and CTV or TV spots that are not a standard booked length |
| Shape and size | The wrong aspect ratio, a picture below the minimum or above the maximum size, and files smaller than the platform recommends |
| Frame rate | Above the platform maximum (30 fps on LinkedIn), or not a rate the channel takes (25 or 50 fps for EBU broadcast) |
| Variable frame rate | Phone recordings and screen captures that drift out of sync or stutter after the platform re-encodes them |
| Interlacing | Interlaced exports, which show comb lines on phones and computers |
| HDR and 10-bit | HDR10 and HLG exports, and 10-bit or 4:2:2 H.264 and HEVC files, that phones and ad platforms may show washed out or fail to process |
| Bitrate | Below a platform minimum (TikTok asks for at least 516 kbps), or low enough for 1080p to look soft after re-encoding |
| Audio track | No audio where it is required, a silent track, an audio codec the placement does not take, mono where stereo is expected, and the wrong sample rate |
| Loudness and true peak | A mix off the destination's target, or a mix louder than -8 LUFS, quieter than -30 LUFS or peaking above 0 dBTP where the platform publishes no target |
| Audio against picture | Audio that runs past, or stops before, the picture by more than half a second |
| Edit lists | Clips trimmed in QuickTime or Photos without re-exporting: some players ignore the trim and show the untrimmed footage |
| Black bars | A wide edit placed inside a tall frame, or the reverse, found by sampling real frames |
| Safe zones | On vertical 9:16 ads, an overlay of the platform interface on your own frame, so you can see whether a caption, logo or offer sits underneath |
| Streaming layout and file name | An index stored at the end of the file, which makes web players download more before playing, and file names with spaces or characters some ad servers reject |
How long, how big and how loud can a video ad be on each platform?
The limits Gatecheck checks against, by placement. Each name links to the full spec with its source.
| Placement | Length | Largest file | Loudness target |
|---|---|---|---|
| Meta: Feed video | 1 s to 60 min | 4 GB | none published |
| Meta: Reels | up to 15 min | 4 GB | none published |
| Meta: Stories | 1 s to 60 min | 4 GB | none published |
| TikTok: In-Feed | up to 10 min | 500 MB | none published |
| YouTube: Skippable in-stream | no maximum; under 3 min recommended | 256 GB | none published |
| YouTube: Bumper (5 to 6 s) | 5 s to 6 s | 256 GB | none published |
| YouTube: Non-skippable (15 s) | up to 1 min (15 s or less recommended) | 256 GB | none published |
| YouTube: Shorts | no maximum; under 1 min recommended | 256 GB | none published |
| LinkedIn: Video | 3 s to 30 min | 500 MB | none published |
| Snapchat: Single image or video | 3 s to 30 min | 1 GB | -16 LUFS, peaks -1 dBTP |
| X: Video | up to 2 min 20 s (15 s or less recommended) | 1 GB | none published |
| Pinterest: Standard video | 4 s to 15 min | 2 GB | none published |
| Connected TV: CTV spot (US) | exactly 6, 15, 30, 60 s | 10 GB | -24 LUFS, peaks -2 dBTP |
| TV broadcast: HD spot (EBU R128, 25 fps) | set by the booking | 50 GB | -23 LUFS, peaks -1 dBTP |
Snapchat is the only social platform in the library that states a loudness target. Where none exists, Gatecheck only flags extremes and suggests about -14 LUFS with peaks at -1 dBTP as a starting point; that is Gatecheck's suggestion, not a platform rule. More on the loudness targets page.
How accurate are the length and loudness readings?
Length comes from the video track's own timing, to the hundredth of a second. A bumper that runs a few hundredths over its 6 second cap is flagged for review, because Google does not publish how it rounds; more than half a second over is a fix.
Loudness is integrated loudness and true peak to ITU-R BS.1770 and EBU R 128, measured over the whole ad. In Gatecheck's test suite the meter matches ffmpeg's EBU R 128 meter to within 0.2 LU integrated and 0.4 dB true peak, on stereo, mono, 5.1 and 24-bit PCM test files.
For broadcast, Gatecheck flags a mix more than 1 LU from -23 LUFS. EBU R 128 sets -23.0 LUFS as the target and allows ±1.0 LU only where the target cannot practically be met, such as live programmes, plus ±0.2 LU for measurement error in quality control. Treat a pass as the minimum and aim for -23 exactly.
Do I have to upload the video?
No. Gatecheck is a web page that works like a desktop app: your browser reads the file from your disk, a background thread decodes and measures the audio, and the results are written on your machine. Nothing is sent to a server, and closing the tab clears the files. That matters for unreleased campaigns under NDA, and it means large edit masters are read where they sit instead of waiting on an upload.
Previews depend on the codecs your browser can play (Safari plays ProRes, Chrome does not), but every check reads the file itself, so the results are the same in each.
What does Gatecheck not check in a video?
- It does not re-encode video in the browser. For a file that fails, the detail view gives plain-English re-export settings and a ready-made ffmpeg command, including the loudnorm values for the placement, free.
- It does not test VAST tags, video ad tags or trackers. Those live in the ad server, not in the file.
- It does not read the picture for text, captions or logos. The safe-zone overlay is there so you can judge it.
- It does not check rights or policy, such as Meta's rule for Reels: Reels ads cannot use licensed music.
- It does not know which placement each file is meant for unless you tell it. A file is shown against every placement its shape fits; a delivery plan (Pro) scopes the checks to the placements you are buying.
Checking one file at a time is free, with every check. Pro checks a whole campaign against a delivery plan and exports the report. Nothing is uploaded.
Gatecheck is not affiliated with Meta, TikTok, Google, LinkedIn, Snap, X, Pinterest, the EBU or ATSC. Specs come from their public help pages and, where marked secondary, from industry guides. Every source is linked from the spec pages and was last checked on 17 October 2026.