VAST Error Codes

VAST Error Codes are used to debug problems with ad serving.  The IAB has created a standard set of Error Codes.  In addition SpringServe has created custom error codes to give more insight into "901: General VPAID Errors".  This will help debug specific issues with effecting fill. 


Vast Error codes are captured in four ways. 

  1. When the player fires the SpringServe Vast Error Pixel
  2. When the SpringServe VPAID captures a Vast Error when trying to call and process a demand tag
  3. When SpringServe captures an error code for OpenRTB use-cases when we don't get a valid bid response back from bidders.
  4. When SpringServe captures an error code for Vast only Server Side calls when trying to call and process a demand tag and we could not send a valid vast response back to the player.

IAB VAST Error Codes

Below is a table of the IAB Vast Error Codes along with SpringServe specific information that will help you debug demand tags that have a high error rate. 

CodeDescriptionTime of Occurrence
100XML parsing error.Pre-Ad
101VAST schema validation error.Pre-Ad
102VAST version of response not supported.Pre-Ad
200Trafficking error. The video player received an ad type that it was not expecting and/or cannot display.Pre-Ad
201Video player expecting different linearity.Pre-Ad
202Video player expecting different duration.Pre-Ad
203Video player expecting different size.Pre-Ad
300General wrapper error.Pre-Ad
301Timeout of VAST URI provided in wrapper element or of VAST URI provided in a subsequent wrapper element. (RI was either unavailable or reached a timeout as defined by the video player.)Pre-Ad
302Wrapper limit reached, as defined by the video player. Too many wrapper responses have been received with no inLine response.Pre-Ad
303No ads VAST response after one or more wrappers. This also includes the number of empty VAST responses from fallback.Pre-Ad
400General linear error. The video player is unable to display the linear ad.Pre-Ad
401File not found. Unable to find linear/mediaFile from URI.Pre-Ad
402Unable to download or timeout of MediaFile URI.Pre-Ad
403Could not find a media file that is supported by this video player, based on the attributes of the MediaFile element.Post-Ad
405Problem displaying a media file. Video player found a MediaFile with supported type but couldn't display it. MediaFile may include: unsupported codecs, different MIME type than MediaFile@type, unsupported delivery method, etc.Post-Ad
406A mezzanine file was required, but not provided.Pre-Ad
407The mezzanine file was downloaded for the first time, so the ad did not serve.Pre-Ad
408The ad returned in the VAST response was rejected.Pre-Ad
409The interactive creative defined in the InteractiveCreativeFile node was not executed.Pre-Ad
410The code referenced in the Verification node was not executed.Pre-Ad
500General NonLinearAds error.Pre-Ad
501Unable to display non-linear ad because creative dimensions do not align with creative display area (in other words, the creative dimension was too large).Pre-Ad
502Unable to fetch NonLinearAds/NonLinear resource.Pre-Ad
503Could not find NonLinear resource with supported type.Pre-Ad
600General CompanionAds error.Pre-Ad
601Unable to display companion because creative dimensions do not fit within the companion display area (in other words, space was not available).Pre-Ad
602Unable to display required companion.Pre-Ad
603Unable to fetch CompanionAds/Companion resource.Pre-Ad
604Could not find Companion resource with supported type.Pre-Ad
900VAST 2 error.Pre-Ad
901General VPAID error.


SpringServe Custom VAST Error Codes

SpringServe Custom VAST 1500 Error Codes give you more insight into errors that normally fit into "901: General VPAID Error".  These error codes will give you more insight into SpringServe specific issues. 

Error CodeDescriptionTime of OccurenceSpringServe Specific Details
1301The demand partner did not return a bidPre-Ad
1302HTTP timeout while requesting VASTPre-Ad
1303HTTP error while requesting VASTPre-Ad
1304No HTTP response from VAST requestPre-Ad
1305HTTP 4XX status from VAST requestPre-Ad
1306HTTP 5XX status from VAST requestPre-Ad
1307all other non HTTP 200 status codes from VAST requestPre-Ad
1308VAST request timeoutPre-AdSpringserve VAST timeout is 3 seconds
1309Wrapper chain timeoutPre-AdSpringserve wrapper chain timeout is 5 seconds
1310Demand partner bid below the floorPre-Ad
1311Mixed Content ErrorPre-Adnon secure ad returned for a secure tag
1312Index Request TimeoutPre-AdIndex's json call timed out
1313Header bidding error Requesting VASTPre-Ad
1314Header bidding missing request parameters Pre-Ad
1315Header Bidding Bid Request TimeoutPre-Ad
1316Max Broadcast TimeoutPre-AdA broadcast tier timed out at 5 seconds
1317Openrtb Request TimeoutPre-AdThere was a timeout on the openrtb request to our adserver
1318Openrtb Request ErrorPre-AdThere was an error getting the openrtb responses from our adserver
1319Openrtb No BidsPre-AdOpenrtb request returned no bids
1320IMA Manager Loader ErrorPre-AdThere was an error loading the IMA Ads Manager.
1321IMA Manager Loader TimeoutPre-AdTimeout while loading the IMA Ads Manager
1323Invalid Header Bidding Bid ResponsePost-OpportunityThe Bid Response from client-side HB could not be parsed.
Error Loading Flash Bridge
1502Error Playing Flash BridgePost-Opportunity
The flash bridge was loaded ok, but when trying to actually start the ad there was an error
1503Error Loading IMA WrapperPost-Opportunity
This is for Adx tags that require the IMA sdk to be loaded to run the tags. There was an error loading/playing the demand tag through the IMA sdx
1504Error Playing Video AssetPost-Opportunity
There was an error trying to play an video asset (mp4, webm) that resulted from a demand tag
1505Child Handshake ErrorPost-Opportunity
Error calling the handshake method on the child vpaid loaded from a demand tag
1506Child INIT VPAID ErrorPost-Opportunity
Error initializing the child vpaid that resulted from a demand tag
1507Child Set Volume ErrorPost-Opportunity
Attempted to set the volume on a child VPAID but received an exception
Unexpected VAST Processing Exception
Error loading child VPAID
General Demand Tag Error
1511SpringServe Vast Validation ErrorPost-OpportunityThis error means that information expected within the VAST xml is missing. For example missing impression or error pixels, missing linear add element within the VAST xml
1512Error sending a js demand opportunity eventPost-Opportunity
1513Parent Called Stop AdPost-Opportunity
1514Parent Called Skip AdPost-Opportunity
1515Complete Without ImpressionPost-Opportunity
1516Supply Tag TimeoutPost-Opportunity
1517Demand Tag TimeoutPost-Opportunity
1518Broadcast TimeoutPost-Opportunity
1519Max Broadcast TimeoutPost-Opportunity
1520Demand Partner TimeoutPost-Opportunity
1521There was an error requesting an ad from IMAPost-Opportunity
1522There was an error loading the IMA adPost-Opportunity
1523There was an error playing the IMA adPost-Opportunity
1524There was an error initializing the IMA AdsManager when attempting to start the adPost-Opportunity
1525General error initializing the IMA adPost-Opportunity
1526Error initializing the IMA wrapperPost-Opportunity
1527Uncaught Error Requesting Flash DemandPost-Opportunity
1528Uncaught Error Requesting IMA DemandPost-Opportunity
1529Uncaught Error Requesting Media DemandPost-Opportunity
1530Uncaught Error Requesting VPAID DemandPost-Opportunity
1531Openrtb bidder did not fillPost-Opportunity(Bidder Error Code)
1532Openrtb no fillPost-Opportunitynone of the openrtb bids resulted in an impression (Standard Error Code)

SpringServe Custom Error Codes for SSB, OpenRTB, and TC+

The error codes below are designed to give you more insight into server side use-cases when there isn't a VPAID involved and also for OpenRTB when there is an error receiving valid bid responses from bidders. 

Vast Error CodeDescriptionOccurrenceNotes
1601VAST XML Parsing ErrorPre-AdInvalid XML in vast response
1604Error No BidPre-AdNo bid received from demand partner
1605HTTP timeout while requesting VASTPre-AdTimed out before getting a vast response from bidder
1606HTTP error while requesting VASTPre-AdGeneric HTTP Error getting a vast response from bidder
1607No HTTP response from VAST requestPre-AdNo HTTP response received
1608HTTP 4XX status from VAST requestPre-AdHTTP 400 Status Code in vast response
1609HTTP 5XX status from VAST requestPre-AdHTTP 500 Status Codes in vast response
1610all other non HTTP 200 status codes from VAST requestPre-Adcatch-all in case this is something not in error codes 1605 through 1609
1611VAST request timeoutPre-AdResponse took longer than maximum allocated time
1612Wrapper chain timeoutPre-Adwrapper chain exceeded max auction duration
1613Bad Demand Tag Endpoint URLPre-AdEndpoint URL with spaces, &'s or other un-parseable and/or invalid characters.
1614Max number of wrappers for SSBPre-AdNumber of wrappers more than 3
1615Bid below the floorPre-AdBid received had a value below bid floor
1616Mixed Content ErrorPre-Adhttp ad returned for https ad call
1619No DurationPre-AdOn ad pods the vast is missing <duration> attribute
1620Invalid URL in wrapperPre-AdInvalid URL found in wrapper
1621Invalid URL in redirectPre-AdInvalid URL found in redirect while getting demand
1622Invalid JsonPre-AdThe JSON rendered was invalid
1623Not included in ad podPost-Ad
1624Empty Vast ResponsePre-Ad
1625Only VPAID ad(s) returned but not allowedPre-Ad
1626Ad discarded due to pod opt outPost-AdAd(s) were returned but the pod opted out due to too many empty slots
1627Pod slots fullPost-Ad
1628Ad duration greater than pod time unfilledPost-Ad
1629Ad duration greater than slot maxPost-Ad
1630Ad duration less than slot minPost-Ad
1631VastAdTagUri element incorrectly formatted in the vast response of a wrapper.Pre-Ad
1632Wrapper leads to an empty VAST response.Pre-Ad

1633Redirect URL InvalidPre-Ad
1634Advertiser Domain not in whitelistPost-Ad
1635Advertiser Domain in BlacklistPost-Ad

Targeting block for unknown advertiser domain

1637Ad excluded from pod due to duplicate creativePost-Ad
1638Not enough time left to follow wrapper requestPre-Ad
1639Ad excluded from pod due to competitive exclusions blockPost-Ad
1640Duplicate removed due to unique pod IDPost-Ad
1641Targeting block for Media File DurationPost-Ad
1642Targeting block for Media File BitratePost-Ad
1643Targeting block for Media File Mime TypePost-Ad
1644Creative excluded due to demand partner's competitive exclusion listPost-Ad
1645Creative excluded due to campaign's competitive exclusion listPost-Ad
1646Creative excluded due to audio volume targetingPost-Ad
1647The bid price was above our maximum allowedPost-Ad
1648Ad excluded due to advertiser domain that has content that was not brand-safePost-Ad
1649Ad excluded due to advertiser domain that has malicious contentPost-Ad
1650Ad excluded due to advertiser domain that has objectionable contentPost-Ad
1651Ad excluded due to demand tag's IAB Category competitive exclusion listPost-Ad
1652Ad excluded due to demand partner's IAB Category competitive exclusion listPost-Ad
1653Ad excluded due to campaign's IAB Category competitive exclusion listPost-Ad
1654Ad excluded as advertiser domain belongs to IAB categories in blocklistPost-Ad
1655Ad Excluded as advertiser domain belongs to IAB categories not in allowlistPost-Ad
1656Ad excluded as advertiser domain belongs to IAB categories do not meet targeting requirementsPost-Ad
1657Creative excluded due to media container targetingPost-Ad
1658Creative excluded due to stitched creative targetingPost-Ad
1659Ad excluded from pod due to duplicate advertiser domainPost-Ad
1660Ad excluded from Pod due to detected adomain's content category being blocked due to competitive exclusionsPost-Ad
1668Ad discarded due to Political Ad TargetingPost-Ad
1669Ad excluded due to creative audit statusPost-Ad
1670VAST XML pixel processing errorPost-AdIssue adding SpringServe pixels to ads due to problematic XML in response
1671Creative was excluded because it had no valid video format pathsPost-Ad
1672Ad excluded from pod due to duplicate advertiser domainPost-Ad
1673Ad excluded due to creative frequency capPost-Ad
1674Ad excluded from pod due to duplicate detected advertiser domainPost-Ad
1675Ad excluded from pod due to competitive exclusions block on detected advertiser domainPost-Ad
1676Ad discarded due to Companion Ad blockPost-Ad
1677Ad excluded from unique pod_id due to duplicate advertiser domainPost-Ad
1678Ad excluded due to Language TargetingPost-Ad
1679Rejected by Request GovernorPre-AdMCTV-specific
1680Rejected Supply DomainPre-AdMCTV-specific
1681Rejected Bundle IDPre-AdMCTV-specific
1682IP BlacklistedPre-AdMCTV-specific
1683Error No BidPre-AdMCTV-specific
1684Ad OkPre-AdMCTV-specific
1685General ErrorPre-AdMCTV-specific
1686Bad Ad CallPre-AdMCTV-specific
1687Invalid Ad UnitPre-AdMCTV-specific
1688Rejected by Request LimitPre-AdMCTV-specific
1689VAST Rendering ErrorPre-AdMCTV-specific
1690Rejected by RegulationPre-AdMCTV-specific
1691Detected Advertiser Domain not in allowlistPost-Ad
1692Detected Advertiser Domain in block listPost-Ad
1693Rejected by regulationPost-AdMCTV-Specific
1694No AdPre-AdMCTV-specific
2000Bid price less than minimum price bucketPost-Ad
2001Bid price less than minimum bucket for specific durationPost-Ad
2020Duration below minimumPost-Ad
2021Duration above maximumPost-Ad
2022Duration invalidPost-Ad
2023Bid price less than bid floor for dealPost-Ad
2024Bid returned does not contain deal id(s) forwarded in bid requestPost-Ad
4000Demand Tag filtered due to ultra low fill ratePre-AdDemand tag has not been called because of it's very low fill rate.