Blog


View all posts

Malformed VAST

Posted on
By , AerServ Team


The Internet Advertising Bureau (IAB) has released several versions of the Digital Video Ad Serving Template (VAST) specification. The VAST specification lists:

…a universal XML schema for serving ads to digital video players, and describes expected video player behavior when executing VAST-¬≠formatted ad responses.

The specification is an industry standard and should be followed by advertisers and VAST parser/video player developers to ensure that VAST is formed properly and can play on all players. Unfortunately, the specification is not always followed or errors occur with the VAST template which creates malformed VAST and prevents it from displaying in video players. Some of these errors are accidental and are caused by lack of attention when creating the template. Other errors exist due to a conscious decision to change the VAST schema or elements.

Accidental errors are bound to happen, though an advertiser should always validate their VAST XML to ensure it is correct, but due to the prevalence of VAST wrappers an advertiser may not know what VAST XML the wrapper will return so they are unable to validate it every time. There are several VAST validators available online, and a quick search will turn them up. An example of an accidental error is the incorrect spelling of an element such as ‘invitationAccept’ instead of ‘acceptInvitation’.

Some VAST parsers are more rigid and strict than others (some even fail if the case of the element is incorrect), and any slight variation will cause the VAST validation to fail and not show the video. These strict parsers will fail even if non-critical elements, such as the ‘acceptInvitation’ element, are not valid. Other VAST parsers are not as strict and will only fail if certain required parameters are not present or spelled correctly, and it will ignore or gracefully handle non-critical misspelled elements and still display the ad.

Small errors in the VAST XML are not uncommon, but they typically are not crucial elements and should not prevent a video from displaying. Handling these non-critical errors presents a decision for VAST parser and video player developers on what to do. They can make their parser less rigid to handle these errors and still display the video, but in doing this they will likely go against some portion of the VAST specification. They have to decide whether to follow the VAST specification 100% or be willing to make some modifications in order to increase the amount of video ads they can display.

Willful decisions to change the VAST are a different story and should not be done. Sometimes proprietary elements are added to the VAST which can make it unusable by all other VAST parsers/video players that do not understand or accept their proprietary elements. These additions directly go against having an industry specification that everyone should abide by.

Willful changes to the VAST format do not occur very often and many publishers may never come across them, but when they do exist they can have a dramatic affect on a publisher’s fill rate and revenue if they are unable to handle them. Accidental VAST errors are more common, and if publishers are noticing a low use rate (percentage of number of ads displayed compared to number of returned ads received) they should spot check the VAST they are receiving to make sure it is not malformed. There can be other reasons for a low use rate (ie empty VAST Wrapped tag, broken or incompatible creatives, etc.), but the potential of malformed VAST is something publishers should be aware of.