Bid Loss Notifications

Bid Loss Notifications provide DSPs with real-time feedback on a per-impression basis. This allows you to receive auction transparency on pricing and blocks, such as bids below the floor, losses to a higher bidder, or blocked advertisers. Notifications also identify technical issues that prevent successful bids, such as timeouts and invalid domains. This feedback allows you to understand the winning auction's clear price and improve pricing strategies. 

Note

The partner must be configured as an RTB-enabled bidder on the DT Exchange

Contact your dedicated Programmatic Demand Manager to activate this feature:

  • Include the lurl in the bid response, which allows DT to fire a loss notification when applicable.
  • Provide a static URL endpoint to your Demand Manager for timeout notifications.
  • Add the ${AUCTION_PRICE} macro to your tracking pixel to receive transparency on the winning clear price, and DT returns the winning price in $USD.
  • Add the ${AUCTION_LOSS} macro to receive the encoded auction loss reason.
  • Add the ${AUCTION_MIN_TO_WIN} macro to receive the minimum bid the bidder needs to win the auction.

Loss Notifications Errors

Important

DT does not support error code 0 (win) for the lurl parameter. For win notifications, use the nurl parameter.

The following table lists error codes and possible reasons for loss notification errors.

CODE REASON
1 Internal Error
2 Impression Opportunity Expired
3 Invalid Bid Response
6 Invalid (i.e., malformed) Advertiser Domain
7 Missing Markup
9 Missing Bid Price
100 Bid Below Auction Floor
101 Bid Below Deal Floor
102 Lost to Higher Bid
103 Lost to a Bid for a PMP Deal
202 Creative Filtered - Disapproved by Exchange
204 Creative Filtered - Incorrect Creative Format
205 Creative Filtered - Advertiser Exclusions
206 Creative Filtered - App Bundle Exclusions
207 Creative Filtered - Not Secure
209 Creative Filtered - Category Exclusions
210 Creative Filtered - Creative Attribute Exclusions
1010 Invalid or malformed Bundle. A valid bundle is considered to be either:
  • A valid Android package name
  • A valid App Store ID

The following example demonstrates how to pass the lurl parameter in the bid response to trigger a loss notification.

JSON
{
  "id": "5194605187929577452",
  "impid": "1",
  "price": 2.522437,
  "adomain": ["example.com"],
  "attr": [6],
  "lurl": "http://dsp_sample/inneractiveid=5194605187929577452\u0026code=${AUCTION_LOSS}",
  "w": 320,
  "h": 480
}

 

Bid Statuses

The DT ad exchange uses real-time bidding (RTB) protocols to conduct auctions which allow you to filter out or reject bids for various reasons. The following table describes each Bid Status.

buyers.png

Note

Rejected bid responses appear as bid requests in DT's Buyer's Report.

BID STATUS DEFINITION CORRESPONDING LURL
Adapter Failure FairBid only. DT's SDK fails to activate the adapter of the mediation network. Not Applicable
Below the Floor Price Bid response does not meet the publisher's floor price. 100
Blocked Advertiser App Bid response rejected due to a blocked app. 206
Blocked Advertiser Domain Bid response rejected due to a blocked advertiser domain. 205
Blocked Category Bid response rejected due to a blocked category. 209
Blocked on Creative Bid response is manually blocklisted for creative content. Not Applicable
Blocked On Creative Attribute Bid response rejected due to a mismatch between the required and supported ad features. Not Applicable
Capped Bid request dropped due to frequency cap. Not Applicable
Child Audience Eligibility Filter/Child Content Support Bundle Domain Filter Only age-appropriate content may appear when a user is flagged as a child with Google Play Families Ads API. The bid response was rejected because the campaign was determined to be not age-appropriate.  
Demand QPS Throttling Bid request blocked due to exceeding the manual queries-per-second (QPS) cap. Not Applicable
Empty Advertiser Domain Bid response rejected as the advertiser domain is empty. 6
Failed Creative ID Blocked Bid is automatically blocked due to a consistently low survival rate. Not Applicable
Filtered Out for Optimization Automatically blocked for optimization. Not Applicable
HTTP Error Request failed due to a server error. 3
Incompatible SKAD Versions Bid response is blocked when the SKAdNetwork version returned on BidResponse.seatbid.bid.ext.skadn.version is higher than the SKAdNetwork supported by the app and on the bid request. 214
Invalid Advertiser Domain An invalid bid response where the demand source bids with an invalid advertiser domain.
  • Valid values:
    • Advertiser domains and subdomains, for example, us.company.com.
  • Invalid values:
    • Domains without a dot, for example, financecom.
    • Domains that start with a dot, such as .abc.com.
    • Domains with www, http(s), /, and any parameters.
    • Domains from play.google.com and itunes.apple.com
    • Bundles in numeric iOS or standard Android format are invalid.
6
Invalid or Malformed Bundle Bid response fails when the demand source bids with an invalid bundle format. 1010
Invalid Response Bid response fails due to an invalid format or missing parameters. 3
Invalid SKAD Parameters An invalid bid response where the demand source returned one or more invalid parameters on the BidResponse.seatbid.bid.ext.skadn. More information is available in IAB specifications 214
Lost on Price Bid loses because the price is lower than the bid in the auction. 102
Missing Creative Data The non-video bid response for a rewarded request rejected because the required fields bid.ext.crtype:, Playable, and seatbid.bid.attr: 13 do not pass.   
No Bid No Content response. Not Applicable
Timeout Response exceeds the timeout window: 350ms for RTB Bidders. A best practice is for Demand Partners to pass a no-bid instead of allowing timeout. 2

Back to Top ⇧