filterSets
filterSets.bidMetrics
filterSets.bidResponseErrors
filterSets.bidResponsesWithoutBids
filterSets.filteredBidRequests
filterSets.filteredBids
filterSets.filteredBids.creatives
filterSets.filteredBids.details
filterSets.impressionMetrics
filterSets.losingBids
filterSets.nonBillableWinningBids
bidders
bidders.accounts
PretargetingConfig
Budget
billingId
budgetAmount
adgroup_id
disapprovalReasons
Whether you’re just starting out with the DoubleClick Ad Exchange Buyer REST API or are working with an unfamiliar client library, our examples will help you get started! Our examples are now on GitHub and have been expanded to cover the following languages:
Each of these include documentation to help you get started with the corresponding client library and demonstrate how you can use the Service Account authorization flow with the DoubleClick Ad Exchange Buyer REST API.
If you have any feedback or feature requests for these examples, we’d definitely be interested in hearing about it! Feel free to contact us via the forum or our Google+ page.
- Mark Saniscalchi, Ad Exchange Team
The end of the year is always the busiest time for advertisers, and competition for inventory in Ad Exchange is at it’s peak. Are you doing everything you can to ensure your campaigns are delivering on time and on budget?
To lighten the load this holiday season, optimize your ad serving with these simple steps:
Plan ahead for the busiest time of the year Make a resolution to start planning your seasonal campaigns earlier. Submit your creatives for approval two days before going live and make sure you’re using only certified vendors and declaring them when necessary. The set of allowed vendors and whether they are declarable can be determined using the vendor declaration tool found in the help centre article Declaring 3rd- and 4th-party vendors in the Ad Exchange. Any vendor not on the list in the tool is prohibited As a proactive measure, buyers can use the creative REST API to submit an ad creative for review, to check its status and retrieve a list of all active ad creatives. Be sure your ads are approved before bidding to ensure your campaigns deliver.
This year, the REST API has been updated with a new method allowing creatives to be sent for re-review. Should any creatives get disapproved before the start of your seasonal campaign, it is not a requirement that the buyer creative ID change to get the creative re-reviewed. To make use of this feature, use version 1.3 of the REST API.
Make sure your ad creatives are eligible to serve The last thing you want this time of the year is for your ad creatives to be disapproved. To make sure your campaigns aren’t delayed, make sure to avoid these common policy mistakes:
Review the AdX Buyer Program Guidelines and Ad Exchange Policies and Enforcement Help Center page for additional details.
Ensure your bids make it to the auction (RTB buyers only) Each bid response submitted to Ad Exchange undergoes a screening process before it can enter the live auction. During this process, your bid may be filtered out by Google, the publisher, or during the actual auction for many different reasons.
To ensure your bid is not filtered, remember to always review the following:
You can read more about post-filtered bids in our developer blog.
As part of your preparation for a smooth running seasonal campaign, make use of the new RTB Dashboard - a tool designed to bring greater transparency to you, as a buyer, and help you refine your bidder to produce more efficient bidding and better results for your campaigns. With RTB Dashboard, you have the ability to review the “RTB insights” section which helps you understand which bids are being filtered out and why.
Plan ahead to make the end of year a success Nobody wants to start the new year with an unexpected surprise. So, after checking that your ad creatives are approved, make sure your campaigns continue into the new year by reviewing the items below:
Need help over the holidays? Hopefully everything goes as planned this holiday season, but if any emergencies like UI outages or major drops in RTB traffic come up, our U.S. support teams will be on hand to make sure you’re back up and running. Please note the U.S. Google offices will be closed on the following days:
If you follow these best practices, you can focus on other initiatives on your wishlist (e.g. mobile, video).
Posted by the Ad Exchange Team
Last year, we introduced the Ad Exchange Real-Time Bidding Optimization Series on the developer's blog with our first post on post-filtered bids.
Today, we’ll drill down into one of the filtering reasons: Auction filtered.
We’ll revisit the definition of auction filtered bids, review the main reasons for being filtered from the auction, and the steps you can take to ensure your ads will not be filtered.
Auction Filtered: After the bid response passes the Google and publisher checks, it makes its way to the auction. However, the bid may not win the auction due to one of the following:
1. Outbid in auction means that your bid was lower than a competitor’s bid and since AdX uses a second-price auction model, the highest bid wins the auction and pays the price of the second highest bid. One way to make sure you are bidding at a competitive price is to implement the new RTB feature for AdX, Real-time Feedback. The feature will give you feedback on auction results in near real-time, including (1) why your bid was filtered (e.g. disapproved ads, product/sensitive category exclusion, outbid in auction, etc.) and (2) what the winning bid price was (if you lost in the previous auction). We include this information in subsequent bid requests sent to your bidder. You can use this information to improve the efficacy of your own bidding by reducing the number of times you are outbid. The creative_status_code field in the proto buffer will reveal the filtering reason. For example, the creative_status_code field may be 79, meaning you were ‘outbid in auction’, whereas 80 and 81 mean your ‘bid was below the minimum threshold’ and ‘not allowed in private auction’ respectively. You can review a complete list of filtering reasons in the creative-status-codes.txt dictionary file.
2. Bid was below the minimum threshold means that your Max CPM (max_cpm_micros in your BidResponse) was lower than the publisher’s min CPM. Specifically, the bid response contained a max_cpm_micros value that was less than the publisher’s minimum_cpm_micros value. Ensure that your bidder understands the minimum_cpm_micros required by the publisher per bid request and bid at or higher than this price if you are interested in the impression, or submit an empty bid if you are not interested in the impression. The minimum_cpm_micros value is listed in the AdSlot section of the bid request. You can review more details in the realtime-bidding-proto.txt file.
3. Not allowed in private auction means that your bid is being filtered for a preferred deal or private auction impression that you were not allowed in. Using the Preferred Deals UI, view Open Offers and consider negotiating your own deal or private auction with publishers of interest.
New! RTB Dashboard is a tool designed to bring greater transparency to you, as a buyer, and help you refine your bidder to produce more efficient bidding and better results for your campaigns. With RTB Dashboard, you have the ability to review the “RTB insights” section which helps you understand which bids are being filtered out and why:
So, what can you do with the information available in ‘Insights’? Two of the most common auction loss reasons and solutions are:
For both auction loss reasons you may want to find out more. Under the ‘Action’ column a ‘Details’ link allows you to view the auction loss count aggregated by either publisher domain or your creative ID for the specific auction loss reason.
Have questions or feedback? Reach out to your Ad Exchange account team.
We've noticed a lot of interest in having the Google Ads APIs Python Client Library made available on PyPI, so we're happy to announce that we've recently added support for it. If you use a tool such as pip, you can now install or update to the latest version of the library with all its dependencies using one simple command, for example:
pip install [--upgrade] adspygoogle
This feature was added based on community feedback, so if you have additional feature requests or a bug to report, feel free to let us know about it by creating an issue on our issue tracker or contacting us on our Google+ page.