Native ads are ads formatted to fit the surrounding content and visual design, making them more likely to be viewed and clicked by users. Native ad inventory is available on mobile apps as well as desktop and mobile websites. For more information on native ads, see Overview of native ads.
Native ads are supported for both Authorized Buyers and Open Bidding.
Here's the workflow for native ads:
- A call for a native ad is made to Google. The call specifies one or both of the following native ad templates, each specifying the preferred native fields.
- Google sends buyers an RTB bid request containing a list of the fields being requested.
- Interested buyers respond with the requested fields.
- Google runs an auction to select the winning bid and sends the buyer's supplied creative assets to the publisher.
- The publisher assembles the assets into a native ad and styles them to fit the site's design.
Message formats
Google supports the OpenRTB specification in both JSON and Protobuf.
For OpenRTB Protobuf native ads, the following fields differ from the specification:
JSON | JSON type | Protobuf | Protobuf type |
---|---|---|---|
BidRequest.imp[].native.request |
string |
BidRequest.imp[].native.request_native |
NativeRequest |
BidResponse.seatbid[].bid[].adm |
string |
BidResponse.seatbid[].bid[].adm_native |
NativeResponse |
The OpenRTB Protobuf fields are Protobuf messages rather than strings.
If you use the OpenRTB Protobuf implementation, your endpoint receives bid
requests containing BidRequest.imp.native.request_native
rather than BidRequest.imp.native.request
. Additionally,
your endpoint must return bid responses that populate
BidResponse.seatbid.bid.adm_native
rather than
BidResponse.seatbid.bid.adm
, otherwise it will be filtered
from the auction.
If you use a buyer SDK to render native ads,
you must include an image type
in the declared_ad
when you
submit creatives for review.
Native ad templates
Native ad templates describe the components of a native ad, and determine
the contents and structure of OpenRTB's NativeRequest
or the
deprecated Google RTB protocol's NativeAdTemplate
in the bid
request. Google supports the two most common native ad templates for non-video
and video native ads:
- App install ad template - Promote and drive mobile app installs.
- Content ad template - More generic combination of text and images for brand or web ads.
- Video app install ad template
- Video content ad template
Other templates exist, and may have a different set of requirements for fields, dimensions, and sizes.
App install ad template

Required and recommended fields
The following tables show fields labeled Required or Recommended. The following rules apply:
- Fields marked Required are required by the bidder.
- Fields marked Recommended are not required by the bidder, and the publisher may or may not display them if supplied (for example, star rating).
- Call to Action (CTA) is always marked as Recommended because a default is assigned if one is not sent by the bidder, but it will always be displayed if sent.
The following table lists the fields of an app install ad template. Mobile apps use these fields to create native app install ads.
Field | Description | Required or Recommended? | Always displayed? | Recommended image size/max number of chars | Example |
---|---|---|---|---|---|
Headline | The app title | Required | Yes | 25 chars | Flood-It! |
Image | A screenshot from the app, or another relevant image | Required | No | 1,200px x 627px or 600px x 600px depending on the aspect ratio required by the publisher. | <A screenshot from the game Flood-It!> |
Body | Main text of the app | Required | No | 90 chars | Deceptively simple + tantalizingly challenging = delightfully addictive! |
App icon | The app icon | Required | No | 128 x 128 px | <Flood-it! app icon> |
Call to action | Preferred user action | Recommended | Yes | 15 chars | Install |
Star rating | Number of stars (0 - 5) representing the app's rating in the app store | Recommended | No | 0 - 5 | 4.5 |
Price | The cost of the app | Recommended | No | 15 chars | Free |
Notes about text length
If a buyer sends a text asset (body text, for example) longer than the suggested maximum number of characters, the text may be truncated and ellipsized by Google or the publisher. Note that the truncation limits are half the size in Chinese, Japanese, and Korean. For example, the headline limit is 90 for English and 45 for Chinese.
Notes about image size
Publishers are allowed to:
- Crop the main image symmetrically by up to 20% in one dimension (height or width).
- Scale the image without changing its aspect ratio.
- Images that have aspect ratios substantially different than those implied by the height and width may be filtered.
Content ad template

The following table lists the fields of a content ad template. Publishers use these fields to create native content ads.
Field | Description | Required or Recommended? | Always displayed? | Recommended image size/max number of chars * | Example |
---|---|---|---|---|---|
Headline | The ad header | Required | Yes | 25 chars | Lowest mortgage rates |
Image | The ad's primary image | Required | No | 1,200px x 627px or 600px x 600px depending on the aspect ratio required by the publisher. | <Ad's main image> |
Body | The ad content | Required | No | 90 chars | Your home sweet Brooklyn home - cheaper and sooner than you think! |
Logo | Advertiser's logo or another relevant small image | Recommended | No | 128 x 128 px | <NY Mortgage Inc.'s logo> |
Call to action | User's preferred action | Recommended | No | 15 chars | Get a quote |
Advertiser | Text that identifies the advertiser or brand | Required | No | 25 chars | NY Mortgage Inc. |
Video app install ad template
Field | Description | Required or Recommended? | Always displayed? | Recommended image size/max number of chars * | Example |
---|---|---|---|---|---|
Video | The video VAST response containing all necessary assets to play back a video ad. | Required | No | - | A URL to VAST XML containing a Flood-It! Video ad |
Headline | The app title | Required | Yes | 25 chars | Flood-It! |
Image | Image (thumbnail) shown in the player before the video ad is clicked or while it is loading. | Required | No | Should match aspect ratio of video (for example: 1280x720 for 16x9 video, 4x3 for 640x480 video). | A screenshot from the game Flood-It! Or from the video |
Body | Main text of the app | Required | No | 90 chars | Deceptively simple + tantalizingly challenging = delightfully addictive! |
App icon | The app icon | Required | No | 128 x 128 px | Flood-it! app icon |
Call to action | Preferred user action | Required | Yes | 15 chars | Install |
Star rating | Number of stars (0 - 5) representing the app's rating in the app store | Recommended | No | 0 - 5 | 4.5 |
Price | The cost of the app | Recommended | No | 15 chars | Free |
Restrictions
Video: All video must be in the form of a VAST URL or a VAST Tag. A raw video file such as a WebM, MP4, etc cannot be specified.
Text length: If a buyer specifies a text asset such as the
body
in the response, it may be truncated and ellipsized by Google or the publisher. Note that truncation limits are half the size in Chinese, Japanese, and Korean. For example, the headline limit is 90 in English and 45 for Chinese.Image size: Publishers are allowed to:
- Crop the main image symmetrically by up to 20% in one dimension (height or width.
- Scale the image without changing its aspect ratio.
App install ad example

Video content ad template
Field | Description | Required or Recommended? | Always displayed? | Recommended image size/max number of chars * | Example |
---|---|---|---|---|---|
Video | The video VAST response containing all necessary assets to play back a video ad. | Required | Yes | - | A URL to VAST XML containing a Flood-It! Video ad |
Headline | The ad header | Required | Yes | 25 chars | Lowest mortgage rates |
Image | Image (thumbnail) shown in the player before the video ad is clicked or while it is loading. | Required | No | Should match aspect ratio of video (for example: 1280x720 for 16x9 video, 4x3 for 640x480 video). | A screenshot from the video |
Body | The ad content | Required | No | 90 chars | Your home sweet Brooklyn home - cheaper and sooner than you think! |
Logo | Advertiser's logo or another relevant small image | Recommended | No | 128 x 128 px | NY Mortgage Inc.'s logo |
Call to action | User's preferred action | Required | No | 15 chars | Get a quote |
Advertiser | Text that identifies the advertiser or brand | Required | No | 25 chars | NY Mortgage Inc. |
Meta fields
The following meta fields are shared by all supported ad templates:
Google RTB protocol | OpenRTB Equivalent | Description |
---|---|---|
NativeAd.click_link_url |
Link.url |
The URL that will be called by the browser when the user clicks the ad.
Can be the first step of a redirect chain that eventually leads to the
landing page. For native ads, we recommend using click_link_url as the field to set
the destination where the user will ultimately go. It is required to use this field in the case
of dynamic landing pages. |
Ad.click_through_url |
Bid.adomain |
Must be set if the bidder intends to bid. This is the set of destination
URLs for the snippet, including the URLs that the user will go to if they
click the displayed ad, and any URLs that are visible in the rendered
ad. Don't include intermediate calls to the adserver that are unrelated to
the final landing page. A BidResponse that returns a snippet or video ad
but declares no For non-native ads, it is not used for click tracking or any other ad functionality; it is only used as a destination URL declaration. For native ads, if |
NativeAd.click_tracking_urls |
Link.clicktrackers |
Optional. Additional URLs that allow advertisers to track user clicks on the ad. |
Ad.ad_choices_destination_url |
BidExt.ad_choices_destination_url |
Link to an ad preferences or opt-out page. If present, a standard AdChoices icon is added to the native creative and linked to this URL. This is supported for native ads but is not part of the native message in the bid response. |
Ad.impression_tracking_url |
NativeResponse.imptrackers |
The native impression should be tracked with
impression_tracking_url in Authorized Buyers real-time bidding
proto or Native imptrackers in OpenRTB. |
Google RTB protocol required and recommended fields
required_fields
and recommended_fields
are specified by the publisher. We show how
to translate these bit fields to determine if a field is required or
recommended.
A bit field uses each bit of a binary value to store a true or false
statement, equivalent to sending many boolean signals such as
is_logo_required
or is_header_required
, but all
packed together.
Example
For this example we'll use a required_fields
value of
1085
.
First, find the equivalent binary value:
10000111101
Once you have the binary value, you can check the bits to see if a field is required (1) or not required (0).
The following table maps the fields to their place in the binary value. Read the binary from right to left, with the 1-bit corresponding to the right-most place in the binary value.
Field | Binary value placement (right to left) |
---|---|
HEADLINE |
1 |
BODY |
2 |
CALL_TO_ACTION |
4 |
ADVERTISER |
8 |
IMAGE |
16 |
LOGO |
32 |
APP_ICON |
64 |
STAR_RATING |
128 |
PRICE |
256 |
STORE |
512 |
VIDEO |
1024 |
Looking at the example binary value 10000111101
, the 1-bit
(rightmost) is 1
, signifying a required value. According to the
table, the 1-bit corresponds to HEADLINE
.
The 2-bit (second value from the right) is 0
signifying
not required. The 2-bit corresponds to BODY
.
Here are all the interpreted required fields in our example:
Value | Description | Required? |
---|---|---|
1 |
VIDEO |
Yes |
0 |
STORE |
No |
0 |
PRICE |
No |
0 |
STAR_RATING |
No |
0 |
APP_ICON |
No |
1 |
LOGO |
Yes |
1 |
IMAGE |
Yes |
1 |
ADVERTISER |
Yes |
1 |
CALL_TO_ACTION |
Yes |
0 |
BODY |
No |
1 |
HEADLINE |
Yes |
Representation of the native ad template in the bid request
When receiving a bid request containing native inventory, it will contain the native ad template in different forms depending on the protocol used. We recommend using OpenRTB because the Google protocol is deprecated.
In OpenRTB, the native ad template is described with the NativeRequest message. In the Google RTB protocol, it is described with NativeAdTemplate. These messages provide the following details about the native ad inventory:
- Fields that are required or recommended.
- Dimensions for images, logos, and app icons.
- Specifications for the style in which the ad is rendered.
OpenRTB asset IDs
OpenRTB passes an array of assets in the bid request that describe the structure of the native ad you should return in the response. Each asset in the request will have an ID that must specified for the corresponding asset in the response. For an example of how these IDs correspond between the request and response, see the native bid request sample and native bid response sample.
Representation of a native ad in the bid response
When bidding on native inventory, a buyer must populate required fields that
were identified in the bid request. In OpenRTB, you can do this with
BidResponse.seatbid.bid.adm_native
when using Protobuf, or BidResponse.seatbid.bid.adm
for JSON. For
the deprecated Google protocol, this is done with the
BidResponse.ad.native_ad
field.
Example bid requests
Non-video bid requests
Show me the example
Serialized requestid: "l6210s8bS8Uc726V81B821" imp { id: "1" tagid: "3019814809" bidfloor: 0.06 bidfloorcur: "USD" secure: true native { ver: "1.2" request_native { ver: "1.2" assets { id: 1 required: true title { len: 25 } } assets { id: 2 required: true data { type: DESC len: 90 } } assets { id: 3 data { type: CTATEXT len: 15 } } assets { id: 4 required: true img { type: MAIN wmin: 1200 hmin: 627 } } assets { id: 5 img { type: LOGO wmin: 100 hmin: 100 } } eventtrackers { event: IMPRESSION methods: IMG } privacy: true [com.google.doubleclick.native_ext] { style_id: 497439 style_height: 1 style_width: 1 style_layout_type: FLUID } } } exp: 3600 metric { type: "click_through_rate" value: 0.0006697923527099192 vendor: "EXCHANGE" } metric { type: "viewability" value: 0.05 vendor: "EXCHANGE" } [com.google.doubleclick.imp] { billing_id: 50577321529 dfp_ad_unit_code: "/3711494/google/test" ampad: AMP_AD_ALLOWED_AND_NOT_EARLY_RENDERED buyer_generated_request_data { data: "Test Data" } excluded_creatives { buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID" } excluded_creatives { buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID" } open_bidding { is_open_bidding: true } creative_enforcement_settings { policy_enforcement: POLICY_ENFORCEMENT_PLATFORM_POLICY publisher_blocks_enforcement: PUBLISHER_BLOCKS_ENFORCEMENT_OVERRIDDEN } auction_environment: SERVER_SIDE_AUCTION ae: SERVER_SIDE_AUCTION } } site { page: "https://www.google.com" publisher { id: "pub-1111111111111111" [com.google.doubleclick.publisher] { country: "FR" } } content { livestream: false language: "fr" } [com.google.doubleclick.site] { amp: DIALECT_HTML page_visibility: VISIBILITY_STATE_VISIBLE inventorypartnerdomain: "" ntype: NAVIGATION_TYPE_NAVIGATE } } device { ua: "OMITTED" geo { lat: 0.0 lon: 0.0 country: "FRA" region: "FR-C" zip: "63120" type: IP utcoffset: 120 accuracy: 6948 [com.google.doubleclick.geo] { geo_criteria_id: 9112278 } } ipv6: "2a01:cb14:8183::" os: "Windows" devicetype: PERSONAL_COMPUTER lmt: false pxratio: 1.0 sua { browsers { brand: "Chromium" version: "130" version: "0" } browsers { brand: "Microsoft Edge" version: "130" version: "0" } platform { brand: "Windows" version: "15" version: "0" } mobile: false architecture: "x86" bitness: "64" source: CLIENT_HINTS_HIGH_ENTROPY } } user { [com.google.doubleclick.user] { consented_providers_settings { consented_providers: 1712 consented_providers: 2316 additional_consent: "OMITTED" } consent: "OMITTED" eids { source: "OMITTED" uids { id: "12JD92JD8078S8J29SDOAKC0EF230337" } } } } at: FIRST_PRICE tmax: 350 cur: "USD" regs { gpp: "OMITTED" [com.google.doubleclick.regs] { gdpr: true } } source { schain { complete: true nodes { asi: "testssp.com" sid: "pub-1111111111111111" hp: true } ver: "1.0" } [com.google.doubleclick.source] { schain { complete: 1 nodes { asi: "testssp.com" sid: "pub-1111111111111111" hp: 1 } ver: "1.0" } } } [com.google.doubleclick.bid_request] { google_query_id: "ANy-zyo598-4J62UYQ5J70Wm78t166uKD8322K98ik4X5496cn305Sp16t94Mhegp514jh1v" fcap_scope: FREQUENCY_CAPPING_SCOPE_NONE }
Show me the example
{ "id": "l6210s8bS8Uc726V81B821", "imp": [ { "id": "1", "tagid": "3019814809", "bidfloor": 0.06, "bidfloorcur": "USD", "secure": 1, "native": { "ver": "1.2", "request": "{\"ver\":\"1.2\",\"assets\":[{\"id\":1,\"required\":1,\"title\":{\"len\":25}},{\"id\":2,\"required\":1,\"data\":{\"type\":2,\"len\":90}},{\"id\":3,\"data\":{\"type\":12,\"len\":15}},{\"id\":4,\"required\":1,\"img\":{\"type\":3,\"wmin\":1200,\"hmin\":627}},{\"id\":5,\"img\":{\"type\":2,\"wmin\":100,\"hmin\":100}}],\"eventtrackers\":[{\"event\":1,\"methods\":[1]}],\"privacy\":1,\"ext\":{\"style_id\":497439,\"style_height\":1,\"style_width\":1,\"style_layout_type\":1}}" }, "exp": 3600, "metric": [ { "type": "click_through_rate", "value": 0.0006697923527099192, "vendor": "EXCHANGE" }, { "type": "viewability", "value": 0.05, "vendor": "EXCHANGE" } ], "ext": { "billing_id": [ "50577321529" ], "dfp_ad_unit_code": "/3711494/google/test", "ampad": 3, "buyer_generated_request_data": [ { "data": "Test Data" } ], "excluded_creatives": [ { "buyer_creative_id": "EXCLUDED_BUYER_CREATIVE_ID" }, { "buyer_creative_id": "EXCLUDED_BUYER_CREATIVE_ID" } ], "open_bidding": { "is_open_bidding": 1 }, "creative_enforcement_settings": { "policy_enforcement": 1, "publisher_blocks_enforcement": 2 }, "auction_environment": 0, "ae": 0 } } ], "site": { "page": "https://www.google.com", "publisher": { "id": "pub-1111111111111111", "ext": { "country": "FR" } }, "content": { "livestream": 0, "language": "fr" }, "ext": { "amp": 0, "page_visibility": 1, "inventorypartnerdomain": "OMITTED", "ntype": 1 } }, "device": { "ua": "OMITTED", "geo": { "lat": 0.0, "lon": 0.0, "country": "FRA", "region": "FR-C", "zip": "63120", "type": 2, "utcoffset": 120, "accuracy": 6948, "ext": { "geo_criteria_id": 9112278 } }, "ipv6": "2a01:cb14:8183::", "os": "Windows", "devicetype": 2, "lmt": 0, "pxratio": 1.0, "sua": { "browsers": [ { "brand": "Chromium", "version": [ "130", "0" ] }, { "brand": "Microsoft Edge", "version": [ "130", "0" ] } ], "platform": { "brand": "Windows", "version": [ "15", "0" ] }, "mobile": 0, "architecture": "x86", "bitness": "64", "source": 2 } }, "user": { "ext": { "consented_providers_settings": { "consented_providers": [ "1712", "2316" ], "additional_consent": "OMITTED" }, "consent": "OMITTED", "eids": [ { "source": "OMITTED", "uids": [ { "id": "12JD92JD8078S8J29SDOAKC0EF230337" } ] } ] } }, "at": 1, "tmax": 350, "cur": [ "USD" ], "regs": { "gpp": "OMITTED", "ext": { "gdpr": 1 } }, "source": { "schain": { "complete": 1, "nodes": [ { "asi": "testssp.com", "sid": "pub-1111111111111111", "hp": 1 } ], "ver": "1.0" }, "ext": { "schain": { "complete": 1, "nodes": [ { "asi": "testssp.com", "sid": "pub-1111111111111111", "hp": 1 } ], "ver": "1.0" } } }, "ext": { "google_query_id": "ANy-zyo598-4J62UYQ5J70Wm78t166uKD8322K98ik4X5496cn305Sp16t94Mhegp514jh1v", "fcap_scope": 1 } }
Show me the example
Serialized requestid: "\213\371#\236Mh\214uJ\356\225qW88=7|\2448\315Wx" ip: "\300\250" user_agent: "OMITTED" url: "https://www.google.com" detected_language: "it" adslot { id: 1 excluded_attribute: 14 excluded_attribute: 32 allowed_vendor_type: 42 allowed_vendor_type: 144 excluded_sensitive_category: 36 excluded_sensitive_category: 19 matching_ad_data { billing_id: 74792558829 billing_id: 11204117851 minimum_cpm_micros: 390000 } matching_ad_data { billing_id: 44428418146 billing_id: 91112044263 minimum_cpm_micros: 110000 } slot_visibility: BELOW_THE_FOLD excluded_product_category: 10366 excluded_product_category: 11504 ad_block_key: 8767661977 publisher_settings_list_id: 7807286827624818876 publisher_settings_list_id: 8186380472781289268 allowed_restricted_category: 32 allowed_restricted_category: 33 excluded_creatives { buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID" } excluded_creatives { buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID" } iframing_state: UNKNOWN_IFRAME_STATE viewability: 6 allowed_restricted_category_for_deals: 32 allowed_restricted_category_for_deals: 33 click_through_rate: 0.0010397299 allowed_ad_types: ALLOWED_AD_TYPE_NATIVE is_amp_page: DIALECT_HTML amp_ad_requirement_type: AMP_AD_ALLOWED_AND_NOT_EARLY_RENDERED secure_signals { data: "Test Data: bw44G12BFZ" source: "OMITTED" } consented_providers_settings { tcf_consent_string: "OMITTED" additional_consent_string: "OMITTED" } regs_gdpr: true native_ad_template { required_fields: 17 recommended_fields: 0 headline_max_safe_length: 90 body_max_safe_length: 90 call_to_action_max_safe_length: 15 advertiser_max_safe_length: 25 image_width: 1200 image_height: 627 style_id: 749853 style_layout_type: FLUID style_height: 1 style_width: 1 } creative_enforcement_settings { policy_enforcement: POLICY_ENFORCEMENT_PLATFORM_POLICY publisher_blocks_enforcement: PUBLISHER_BLOCKS_ENFORCEMENT_APPLIES } auction_environment: SERVER_SIDE_AUCTION impression_expiration_seconds: 3600 supported_auction_environment: SERVER_SIDE_AUCTION } is_test: false timezone_offset: 120 geo_criteria_id: 1008463 bid_response_feedback { request_id: "\314\354d\177=@0\271\226a^\250\302u\037\301" creative_status_code: 1 event_notification_token: "token" buyer_creative_id: "test_creative_id_744913" minimum_bid_to_win: 220000 feedback_type: BID_FEEDBACK } bid_response_feedback { request_id: "\2354\335\340\347!\341~\265\n\206\327\300\005\370G" creative_status_code: 80 event_notification_token: "token" buyer_creative_id: "test_creative_id_744913" minimum_bid_to_win: 3450000 feedback_type: BID_FEEDBACK } publisher_type: PUBLISHER_OWNED_AND_OPERATED device { device_type: PERSONAL_COMPUTER platform: "Windows" screen_pixel_ratio_millis: 1000 limit_ad_tracking: false } publisher_country: "IT" publisher_id: "pub-1111111111111111" response_deadline_ms: 350 google_query_id: "ANy-zJXQF6-ob5v09r508m39543114QNHDY20RX67Ajs996K62nkEpcMuvWam950XP9486e6" auction_type: FIRST_PRICE geo { lat: 0.0 lon: 0.0 country: "ITA" region: "IT-MI" city: "Milan" utcoffset: 120 accuracy: 6821 } user_agent_data { platform { brand: "Windows" version: "10" version: "0" } mobile: false architecture: "x86" browsers { brand: "Chromium" version: "128" version: "0" } browsers { brand: "Not;A=Brand" version: "24" version: "0" } bitness: "64" source: CLIENT_HINTS_HIGH_ENTROPY } page_visibility: VISIBILITY_STATE_VISIBLE supply_chain { complete: true nodes { advertising_system_identifier: "testdomain.com" seller_identifier: "pub-1111111111111111" handles_payment: true } version: "1.0" } frequency_capping_scope: FREQUENCY_CAPPING_SCOPE_NONE privacy_treatments { allow_user_data_collection: true } inventory_partner_domain: "OMITTED"
Video bid requests
{ id: "\\\123/f\000\t\456&\n\789\1234\"\001a\123", ip: "\0338\355", google_user_id: "CAESEJ1ur2l94_8ruuu", cookie_version: 1, cookie_age_seconds: 5184000, hosted_match_data: "W9ABDAAAAGR67nl0", user_agent: "Mozilla/5.0 (Linux; Android 5.1; CP8298_I00) Mobile Safari/537.36", publisher_country: "IN", geo_criteria_id: 1007796, timezone_offset: 330, publisher_id: "pub-2230723027927371", seller_network_id: 989, url: "https://m.example.com", detected_language: [en], google_query_id: "ANy-zJEgdus4l0MishbSmH0eOcXUA1Fbo4_tKROsbR37q", auction_type: "SECOND_PRICE", device: { device_type: "HIGHEND_PHONE", platform: "android", brand: "coolpad", model: "cp8298_i00", os_version: { major: 5, minor: 1 }, carrier_id: 70210, screen_width: 360, screen_height: 640, screen_pixel_ratio_millis: 2000 }, mobile: { is_app: false, is_mobile_web_optimized: true, DEPRECATED_platform: "android", DEPRECATED_mobile_device_type: "HIGHEND_PHONE", DEPRECATED_brand: "coolpad", DEPRECATED_model: "cp8298_i00", DEPRECATED_os_version: { os_version_major: 5, os_version_minor: 1 }, DEPRECATED_screen_width: 360, DEPRECATED_screen_height: 640, DEPRECATED_carrier_id: 70210, DEPRECATED_device_pixel_ratio_millis: 2000 }, publisher_type: "ADX_PUBLISHER_OWNED_AND_OPERATED", adslot: [{ id: 1, ad_block_key: 2882274820, width: [300,250], height: [250,250], excluded_attribute: [114,22,34,25,27,13,14,15,16,17,18,19,20,25,27,22], allowed_vendor_type: [42,144,575,698,704,743,776,785,793,797,808,828,832,885], excluded_sensitive_category: [36,27,19,4,23,30,10,3,31,5,8,37,18], excluded_product_category: [10031,11669,13423,13525,13566,13589,13612,13740], excluded_creatives: [{ buyer_creative_id: "1234567.1234567890-ssl" }], matching_ad_data: [{ billing_id: [6629616415,51386650457], minimum_cpm_micros: 1380000, direct_deal: [{ direct_deal_id: 410401, fixed_cpm_micros: 1360000, deal_type: "PREFERRED_DEAL", publisher_blocks_overridden: true },{ direct_deal_id: 240644, fixed_cpm_micros: 1500000, deal_type: "PREFERRED_DEAL", publisher_blocks_overridden: true }] },{ billing_id: [1234567890], minimum_cpm_micros: 1380000 }], publisher_settings_list_id: [12109930661871909476,11138951146123409010], slot_visibility: "BELOW_THE_FOLD", viewability: 30, click_through_rate: 0.0010072842, iframing_state: "UNKNOWN_IFRAME_STATE", native_ad_template: [{ required_fields: 1065, recommended_fields: 4, headline_max_safe_length: 25, body_max_safe_length: 90, call_to_action_max_safe_length: 15, advertiser_max_safe_length: 25, logo_width: 100, logo_height: 100, style_id: 199892, style_height: 250, style_width: 300 }], sticky_settings: { }, renderer: "GOOGLE", is_amp_page: "DIALECT_HTML", amp_ad_requirement_type: "AMP_AD_ALLOWED_AND_NOT_EARLY_RENDERED", allowed_ad_types: [ALLOWED_AD_TYPE_BANNER,ALLOWED_AD_TYPE_NATIVE], session_depth: 1, internal_data: { } }], response_deadline_ms: 122, is_test: false }
Example bid responses
Non-video bid responses
Show me the example
Serialized responseid: "22i22S9494PQl819H7Ld5K" seatbid { bid { id: "2GTnPXOn76gg1C6574T" impid: "1" price: 0.24 adid: "test_creative_id_713312" adomain: "google.com" crid: "test_creative_id_713312" exp: 300 language: "xx" adm_native { ver: "1.2" assets { id: 1 title { text: "Luxury Mars Cruises" } } assets { id: 2 data { value: "Visit the planet in a luxury spaceship." } } assets { id: 3 data { value: "Book today" } } assets { id: 4 img { url: "https://native.test.com/image?id=123456" w: 1200 h: 627 } } assets { id: 5 img { url: "https://native.test.com/logo?id=123456" w: 1200 h: 1200 } } link { url: "https://www.google.com" clicktrackers: "https://native.test.com/click?id=123456" } eventtrackers { event: IMPRESSION method: IMG url: "https://test.com/event?id=123456" } eventtrackers { event: IMPRESSION method: IMG url: "https://test.com/event?id=123456" } privacy: "https://adssettings.google.com/whythisad?source=display&reasons=OMITTED" } [com.google.doubleclick.bid] { event_notification_token { payload: "token" } billing_id: 50577321529 third_party_buyer_token: "4G79rr82Ah8r51859j2XT2RBR1BW2808IQrAa2nRjf63oo5w71y8q929t794MO75n4642HmE5HQ2B1jj9a03w6BFxc4D0mVReL1NgZ42aj7l308820m77pg004705U32AC81b7nkghu7" } } seat: "5249:9218:332606" } cur: "USD"
Show me the example
{ "id": "22i22S9494PQl819H7Ld5K", "seatbid": [ { "bid": [ { "id": "2GTnPXOn76gg1C6574T", "impid": "1", "price": 0.24, "adid": "test_creative_id_713312", "adomain": [ "google.com" ], "crid": "test_creative_id_713312", "exp": 300, "language": "xx", "ext": { "event_notification_token": { "payload": "token" }, "billing_id": "50577321529", "third_party_buyer_token": "4G79rr82Ah8r51859j2XT2RBR1BW2808IQrAa2nRjf63oo5w71y8q929t794MO75n4642HmE5HQ2B1jj9a03w6BFxc4D0mVReL1NgZ42aj7l308820m77pg004705U32AC81b7nkghu7" }, "adm": "{\"ver\":\"1.2\",\"assets\":[{\"id\":1,\"title\":{\"text\":\"Luxury Mars Cruises\"}},{\"id\":2,\"data\":{\"value\":\"Visit the planet in a luxury spaceship.\"}},{\"id\":3,\"data\":{\"value\":\"Book today\"}},{\"id\":4,\"img\":{\"url\":\"https://native.test.com/image?id=123456\",\"w\":1200,\"h\":627}},{\"id\":5,\"img\":{\"url\":\"https://native.test.com/logo?id=123456\",\"w\":1200,\"h\":1200}}],\"link\":{\"url\":\"https://www.google.com\",\"clicktrackers\":[\"https://native.test.com/click?id=123456\"]},\"eventtrackers\":[{\"event\":1,\"method\":1,\"url\":\"https://test.com/event?id=123456\"},{\"event\":1,\"method\":1,\"url\":\"https://test.com/event?id=123456\"}],\"privacy\":\"https://adssettings.google.com/whythisad?source=display&reasons=OMITTED\"}" } ], "seat": "5249:9218:332606" } ], "cur": "USD" }
Show me the example
Serialized responsead { adslot { id: 1 max_cpm_micros: 110734 min_cpm_micros: 0 billing_id: 74792558829 deal_id: 0 } click_through_url: "google.com" attribute: 47 attribute: 8 buyer_creative_id: "test_creative_id_907643" advertiser_name: "Google" native_ad { headline: "Luxury Mars Cruises" body: "Visit the planet in a luxury spaceship." call_to_action: "Book today" advertiser: "Galactic Luxury Cruises" image { url: "https://native.test.com/image?id=123456" width: 800 height: 800 } logo { url: "https://native.test.com/logo?id=123456" width: 200 height: 200 } price: "\342\202\254 225" click_link_url: "https://www.google.com" } impression_tracking_url: "https://test.com/imp?id=123456" impression_tracking_url: "https://test.com/imp?id=123456" ad_choices_destination_url: "https://test.com/preferences" event_notification_token: "token" dsa_transparency { buyer_render: true } } processing_time_ms: 27
Video bid responses
bid_response { ad { ... click_through_url: "https://www.exampleDomain.com" impression_tracking_url: "https://my_impression_tracking_url.com/" ad_choices_destination_url: "https://my_ad_choices_destination_url.com/" ... native_ad { headline: "Lowest mortgage rates" video_url: "https://pubads.g.doubleclick.net/gampad/ads?sz=640x480&iu=/124319096/external/single_ad_samples&ciu_szs=300x250&impl=s&gdfp_req=1&env=vp&output=vast" call_to_action: "Get a quote" advertiser: "NY Mortgage Inc." image { url: "https://www.example.net/mypromoimage.png" width: 1200 height: 700 } logo { url: "https://www.example.net/mylogo.png" width: 200 height: 200 } click_link_url: "https://r1.example.com/r/u1dhfh3cow00/b1_googleadx/830/41972/ ?_b_ctrl=1" click_tracking_urls: "https://my_click_tracking_url.com/" } } }