VAST and the super important MP4 MOOV atom

Written by Roy
Apr 18, 2021 • 3 min read

The position of the MOOV atom in an MP4 file is important when it comes to VAST video ads. This is especially true for video ads with progressive delivery, since the MOOV atom has to be received in order for playback to begin.

Are you a publisher serving pre-roll video ads from your advertisers? Read on to learn why a QA check on VAST tags is indispensable to improve the user experience (and to increase your revenue).

What is the MOOV atom's function?

The MP4 container contains many data structures, each with their own function. Important ones are ftype, mdat and moov which I'll briefly discuss here.

  • ftype: a data structure containing information about the file type
  • mdat: container containing the compressed MP4 video/audio binary data
  • moov: section with movie information containing references to mdat atoms
The MOOV atom acts like a table of contents. It contains information where the exact video data can be located in the file.

Why should it be at the beginning of the file?

It would be impossible for the video to start playing without reading the MOOV atom first. Since it acts as a table of contents, the video player has to know where the first seconds of the video are located in the file. Videos that are encoded with the MOOV atom at the beginning of the file are able to start playing immediately, since the table of contents is available right after downloading the first few KBs.

How can I check the location of the MOOV atom?

Let me discuss a few solutions here below:

  • Use Chrome. Open your VAST tag and copy the MP4 URL location. Open Chrome Dev Tools (CTRL + SHIFT + J) and disable the cache. Set the Network Throttling to Slow 3G. Then, paste the MP4 URL location in the tab and click the play button in the video player. You will see a progress bar indicating the download of the video.

    When does the video actually starts playing? If it starts before the progress bar finished, then the MOOV atom is likely in the beginning of the file. If you have to wait until the whole video is cached, then the MOOV atom is at the end of the file.


  • Use Go to and enter your VAST URL in the box. Launch the scan and you'll get a quality assurance report that mentions the position of the MOOV atom. If the test fails when the MOOV atom is at the end of the file, you may want to contact your advertiser or ad server vendor to have the issue fixed.
    The VAST inspector has 30 free Quality Assurance tests that let you pre-validate video ads before they go live. Think about the video codec, a skip option, HD/FHD requirements, mime-types, download speed and many more.

What if the MOOV atom is found at the end of the file?

In that case, the whole MP4 file has to be downloaded before playback can begin. Video ads are generally a couple of MBs in file size, which takes time to download by the user's browser. Most VAST players have a threshold when the ad should begin playing. If it doesn't start playing within a certain number of seconds, it will skip the ad automatically and play the main video content. This is a devastating scenario for both the publisher as the advertiser.

Automated QA scanners are valuable tools for Ad Ops and publishers to maintain the quality of video ads, both pre-flight as well as in-flight.

External Resources