Native Anzeigen

Native Anzeigen sind so formatiert, dass sie zum Inhalt und Design der Umgebung passen. Dadurch erhöht sich die Wahrscheinlichkeit, dass sie von Nutzern gesehen und angeklickt werden. Natives Anzeigeninventar ist in mobilen Apps sowie auf Websites für Computer und Mobilgeräte verfügbar. Weitere Informationen zu nativen Anzeigen finden Sie unter Übersicht über native Anzeigen.

Native Anzeigen werden sowohl für Authorized Buyers als auch für Open Bidding unterstützt.

So funktioniert der Workflow für native Anzeigen:

  1. Ein Aufruf für eine native Anzeige wird an Google gesendet. Im Aufruf werden eine oder beide der unten aufgeführten nativen Anzeigenvorlagen angegeben, wobei jeweils die bevorzugten nativen Felder angegeben werden.
  2. Google sendet den Käufern eine RTB-Gebotsanfrage mit einer Liste der angeforderten Felder.
  3. Interessierte Käufer antworten mit den angeforderten Feldern.
  4. Google führt eine Auktion durch, um das erfolgreiche Gebot auszuwählen, und sendet die vom Käufer zur Verfügung gestellten Creative-Assets an den Publisher.
  5. Der Publisher stellt aus den Assets eine native Anzeige zusammen und gestaltet sie passend zum Design der Website.

Nachrichtenformate

Google unterstützt die OpenRTB-Spezifikation sowohl in JSON als auch in Protobuf.

Bei nativen OpenRTB-Protokollpufferanzeigen weichen die folgenden Felder von der Spezifikation ab:

JSON-Spezifikation
(PROTOCOL_OPENRTB_2_4)
JSON-Typ OpenRTB-Implementierung
(PROTOCOL_OPENRTB_PROTOBUF_2_4)
OpenRTB-Typ
BidRequest.imp[].native.request string BidRequest.imp[].native.request_native NativeRequest
BidResponse.seatbid[].bid[].adm string BidResponse.seatbid[].bid[].adm_native NativeResponse

Die OpenRTB-Felder sind Protobuf-Nachrichten und keine Strings.

Wenn Sie die OpenRTB-Protokollpufferimplementierung verwenden, erhalten Sie BidRequest.imp[].native.request nicht und müssen mit BidResponse.seatbid[].bid[].adm_native antworten. Gebotsantworten mit BidResponse.seatbid[].bid[].adm werden herausgefiltert. Asset-IDs sind für Gebotsantworten des OpenRTB-Protokollpuffers nicht erforderlich.

Wenn Sie native Anzeigen mit einem Käufer-SDK rendern, müssen Sie ein Bild-type in die declared_ad einfügen, wenn Sie Creatives zur Überprüfung einreichen.

Vorlagen für native Anzeigen

Google unterstützt die beiden gängigsten nativen Anzeigenvorlagen für Nicht-Video- und native Videoanzeigen:

Es gibt auch andere Vorlagen, bei denen für Felder, Abmessungen und Größen möglicherweise andere Anforderungen gelten.

Vorlage für App-Installationsanzeigen

Die folgenden Tabellen enthalten Felder, die mit Erforderlich oder Empfohlen gekennzeichnet sind. Es gelten die folgenden Regeln:

  • Felder, die als erforderlich gekennzeichnet sind, müssen vom Bieter ausgefüllt werden.
  • Felder, die als Empfohlen gekennzeichnet sind, müssen für den Bieter nicht angegeben werden. Der Publisher kann sie, falls vorhanden, angeben (z. B. Bewertung).
  • Der Call-to-Action (CTA) ist immer als Empfohlen gekennzeichnet, da ein Standardwert zugewiesen wird, wenn vom Bieter kein Call-to-Action gesendet wird. Wenn er gesendet wird, wird er aber immer angezeigt.

In der folgenden Tabelle sind die Felder für Vorlagen für App-Installationsanzeigen aufgeführt. Diese Felder werden für mobile Apps verwendet, um native App-Installationsanzeigen zu erstellen.

Feld Beschreibung Erforderlich oder empfohlen? Immer angezeigt? Empfohlene Bildgröße/maximale Zeichenanzahl Beispiel
Anzeigentitel Der Titel der App Erforderlich Ja 25 Zeichen Flood-It!
Bild Screenshot aus der App oder ein anderes relevantes Bild Erforderlich Nein 1.200 × 627 Pixel oder 600 × 600 Pixel,je nach dem vom Publisher geforderten Seitenverhältnis. <Ein Screenshot aus dem Spiel Flood-It!>
Text Haupttext der App Erforderlich Nein 90 Zeichen Irreführend einfach + fesselnd herausfordernd = macht Spaß!
App-Symbol Das App-Symbol Erforderlich Nein 128 x 128 px <Symbol der Flood-it! App>
Call-to-Action Bevorzugte Nutzeraktion Empfohlen Ja 15 Zeichen Installieren
Bewertung Anzahl der Sterne (0–5), die die Bewertung der App im App-Shop darstellen Empfohlen Nein 0–5 4.5
Preis Die Kosten der App Empfohlen Nein 15 Zeichen Kostenlos

Hinweise zur Textlänge

Wenn ein Käufer ein Text-Asset (z. B. Fließtext) sendet, das die empfohlene maximale Zeichenanzahl überschreitet, wird der Text möglicherweise von Google oder vom Publisher abgeschnitten und mit Ellipsen versehen. Beachten Sie, dass die Längenbeschränkungen für Chinesisch, Japanisch und Koreanisch nur halb so lang sind. Beispielsweise beträgt die maximale Anzahl der Anzeigentitel 90 für Englisch und 45 für Chinesisch.

Hinweise zur Bildgröße

Publishern ist Folgendes erlaubt:

  • Schneiden Sie das Hauptbild symmetrisch um bis zu 20% in einer Dimension (Höhe oder Breite) zu.
  • Skalieren Sie das Bild, ohne sein Seitenverhältnis zu ändern.
  • Bilder, deren Seitenverhältnisse deutlich von den Seitenverhältnissen abweichen, die sich aus der Höhe und Breite ergeben, werden unter Umständen herausgefiltert.

Vorlage für Contentanzeigen

In der folgenden Tabelle sind die Felder einer Vorlage für Contentanzeigen aufgeführt. Publisher verwenden diese Felder, um native Contentanzeigen zu erstellen.

Feld Beschreibung Erforderlich oder empfohlen? Immer angezeigt? Empfohlene Bildgröße/maximale Zeichenanzahl * Beispiel
Anzeigentitel Die Kopfzeile der Anzeige Erforderlich Ja 25 Zeichen Niedrigste Hypothekenzinsen
Bild Hauptbild der Anzeige Erforderlich Nein 1.200 × 627 Pixel oder 600 × 600 Pixel,je nach dem vom Publisher geforderten Seitenverhältnis. <Hauptbild der Anzeige>
Text Anzeigeninhalt Erforderlich Nein 90 Zeichen Dein Zuhause, süßes Zuhause in Brooklyn – günstiger und früher, als du denkst!
Logo Logo des Werbetreibenden oder ein anderes relevantes kleines Bild Empfohlen Nein 128 x 128 px <Logo von NY Mortgage Inc.>
Call-to-Action Bevorzugte Aktion des Nutzers Empfohlen Nein 15 Zeichen Angebot einholen
Advertiser Text, der den Werbetreibenden oder die Marke identifiziert Erforderlich Nein 25 Zeichen New York Mortgage Inc.

Vorlage für App-Installations-Videoanzeigen

Feld Beschreibung Erforderlich oder empfohlen? Immer angezeigt? Empfohlene Bildgröße/maximale Zeichenanzahl* Beispiel
Video Die Video-VAST-Antwort, die alle erforderlichen Assets für die Wiedergabe einer Videoanzeige enthält. Erforderlich Nein - Eine URL zu VAST-XML, die eine Flood-It!- Videoanzeige
Anzeigentitel Der Titel der App Erforderlich Ja 25 Zeichen Flood-It!
Bild Bild (Miniaturansicht), das im Player angezeigt wird, bevor auf die Videoanzeige geklickt wird oder während sie geladen wird. Erforderlich Nein Sollte dem Seitenverhältnis des Videos entsprechen, z. B. 1280 × 720 für 16:9-Videos, 4 : 3 für 640 × 480 Video. Ein Screenshot aus dem Spiel Flood-It! Oder aus dem Video
Text Haupttext der App Erforderlich Nein 90 Zeichen Irreführend einfach + fesselnd herausfordernd = macht Spaß!
App-Symbol Das App-Symbol Erforderlich Nein 128 x 128 px Symbol der Flood-it! App
Call-to-Action Bevorzugte Nutzeraktion Erforderlich Ja 15 Zeichen Installieren
Bewertung Anzahl der Sterne (0–5), die die Bewertung der App im App-Shop darstellen Empfohlen Nein 0–5 4.5
Preis Die Kosten der App Empfohlen Nein 15 Zeichen Kostenlos

Einschränkungen

  • Video: Alle Videos müssen in Form einer VAST-URL oder eines VAST-Tags vorliegen. Eine Rohvideodatei im Format WebM oder MP4 kann nicht angegeben werden.

  • Textlänge: Wenn ein Käufer ein Text-Asset wie body in der Antwort angibt, wird es möglicherweise von Google oder dem Publisher gekürzt und mit Auslassungspunkten versehen. In Chinesisch, Japanisch und Koreanisch sind Kürzungsbeschränkungen nur halb so groß. So beträgt die maximale Anzahl der Anzeigentitel für Englisch 90 und für Chinesisch 45.

  • Bildgröße: Publisher dürfen Folgendes tun:

    • Schneiden Sie das Hauptbild symmetrisch um bis zu 20% in einer Dimension (Höhe oder Breite) zu.
    • Skalieren Sie das Bild, ohne sein Seitenverhältnis zu ändern.

Beispiel für eine App-Installationsanzeige

natives Video

Vorlage für Videocontentanzeigen

Feld Beschreibung Erforderlich oder empfohlen? Immer angezeigt? Empfohlene Bildgröße/maximale Zeichenanzahl* Beispiel
Video Die Video-VAST-Antwort, die alle erforderlichen Assets für die Wiedergabe einer Videoanzeige enthält. Erforderlich Ja - Eine URL zu VAST-XML, die eine Flood-It!- Videoanzeige
Anzeigentitel Die Kopfzeile der Anzeige Erforderlich Ja 25 Zeichen Niedrigste Hypothekenzinsen
Bild Bild (Miniaturansicht), das im Player angezeigt wird, bevor auf die Videoanzeige geklickt wird oder während sie geladen wird. Erforderlich Nein Sollte dem Seitenverhältnis des Videos entsprechen, z. B. 1280 × 720 für 16:9-Videos, 4 : 3 für 640 × 480 Video. Screenshot aus dem Video
Text Anzeigeninhalt Erforderlich Nein 90 Zeichen Dein Zuhause, süßes Zuhause in Brooklyn – günstiger und früher, als du denkst!
Logo Logo des Werbetreibenden oder ein anderes relevantes kleines Bild Empfohlen Nein 128 x 128 px Logo von NY Mortgage Inc.
Call-to-Action Bevorzugte Aktion des Nutzers Erforderlich Nein 15 Zeichen Angebot einholen
Advertiser Text, der den Werbetreibenden oder die Marke identifiziert Erforderlich Nein 25 Zeichen New York Mortgage Inc.

Metafelder

Die folgenden Metafelder werden von allen unterstützten Anzeigenvorlagen gemeinsam genutzt:

Protokollzwischenspeicher in Authorized Buyers Authorized Buyers-OpenRTB-Äquivalent Beschreibung
NativeAd.click_link_url Link.url Die URL, die vom Browser aufgerufen wird, wenn der Nutzer auf die Anzeige klickt. Dies kann der erste Schritt einer Weiterleitungskette sein, die schließlich zur Landingpage führt. Für native Anzeigen empfehlen wir die Verwendung von click_link_url als Feld, um das Ziel festzulegen, zu dem der Nutzer letztendlich weitergeleitet wird. Bei dynamischen Landingpages ist es erforderlich.
Ad.click_through_url Bid.adomain

Muss festgelegt werden, wenn der Bieter ein Gebot abgeben möchte. Dies sind die Ziel-URLs für das Snippet. Dazu zählen die URLs, zu denen der Nutzer weitergeleitet wird, wenn er auf die ausgelieferte Anzeige klickt, sowie alle URLs, die in der gerenderten Anzeige sichtbar sind. Fügen Sie keine Zwischenaufrufe an den Ad-Server ein, die nichts mit der endgültigen Landingpage zu tun haben. Eine BidResponse, die ein Snippet oder eine Videoanzeige zurückgibt, aber kein click_through_url angibt, wird verworfen. Legen Sie dieses Feld nur fest, wenn html_snippet, video_url oder native_ad festgelegt sind. Diese Daten werden als Ziel-URL-Deklarationen verwendet, z. B. zum Nachfiltern von vom Publisher blockierten URLs oder zur Anzeigenkategorisierung. Wenn Sie native Anzeigen verwenden, lesen Sie den Abschnitt NativeAd.click_link_url oben.

Bei nicht nativen Anzeigen wird sie nicht für das Klick-Tracking oder andere Anzeigenfunktionen verwendet, sondern nur zur Deklarierung der Ziel-URL.

Wenn NativeAd.click_link_url bei nativen Anzeigen nicht festgelegt ist, wird der erste Wert von click_through_url verwendet, um den Nutzer zur Landingpage weiterzuleiten. Darüber hinaus werden alle Werte – ähnlich wie beim nicht nativen Fall – als Ziel-URL-Deklarationen verwendet.

NativeAd.click_tracking_urls Link.clicktrackers Optional. Zusätzliche URLs, mit denen Werbetreibende Klicks von Nutzern auf die Anzeige erfassen können.
Ad.ad_choices_destination_url BidExt.ad_choices_destination_url Link zu einer Seite für Anzeigenvorgaben oder zur Deaktivierung Falls vorhanden, wird dem nativen Creative ein standardmäßiges Datenschutzinfo-Symbol hinzugefügt und mit dieser URL verknüpft. Dies wird für native Anzeigen unterstützt, ist aber nicht Teil der nativen Nachricht in der Gebotsantwort.
Ad.impression_tracking_url NativeResponse.imptrackers Die native Impression sollte mit impression_tracking_url im Authorized Buyers-Protokoll für Echtzeitgebote oder mit nativen Impressions-Trackern in OpenRTB erfasst werden.

required_fields und recommended_fields werden vom Publisher angegeben. Wir zeigen, wie diese Bitfelder übersetzt werden, um zu bestimmen, ob ein Feld erforderlich oder empfohlen wird.

Ein Bitfeld verwendet jedes Bit eines Binärwerts zum Speichern einer Wahr- oder Falsch-Anweisung, was dem Senden vieler boolescher Signale wie is_logo_required, is_header_required usw. entspricht, aber alle zusammengepackt ist.

Beispiel

In diesem Beispiel verwenden wir den required_fields-Wert 1085.

Suchen Sie zuerst nach dem äquivalenten Binärwert: 10000111101

Sobald Sie den Binärwert haben, können Sie die Bits überprüfen, um festzustellen, ob ein Feld erforderlich (1) oder nicht erforderlich (0) ist.

In der folgenden Tabelle werden die Felder ihrem Platz im Binärwert zugeordnet. Lesen Sie das Binärprogramm von rechts nach links, wobei das 1-Bit der ganz rechtssten Stelle im Binärwert entspricht.

Feld Binärwert-Platzierung (von rechts nach links)
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

Im Beispielbinärwert 10000111101 ist das 1-Bit (ganz rechts) 1, was einen erforderlichen Wert angibt. Laut Tabelle entspricht das 1-Bit HEADLINE.

Der 2-Bit-Wert (zweiter Wert von rechts) ist 0 und bedeutet, dass nicht erforderlich ist. Das 2-Bit entspricht BODY.

Hier sind alle interpretierten Pflichtfelder in unserem Beispiel:

Wert Beschreibung Erforderlich?
1 VIDEO Ja
0 STORE Nein
0 PRICE Nein
0 STAR_RATING Nein
0 APP_ICON Nein
1 LOGO Ja
1 IMAGE Ja
1 ADVERTISER Ja
1 CALL_TO_ACTION Ja
0 BODY Nein
1 HEADLINE Ja

NativeAdTemplate-Mitteilung

Wenn Sie eine Gebotsanfrage mit nativem Inventar erhalten, enthält diese die ausgefüllte Anfrage BidRequest.adSlot[].native_ad_template. Die NativeAdTemplate-Nachricht enthält Spezifikationen für:

  • Felder, die erforderlich oder empfohlen werden.
  • Abmessungen von Bildern, Logos und App-Symbolen
  • Dies ist die Spezifikation für das Design, in dem die Anzeige gerendert wird.
message BidRequest {
  //...
  message AdSlot {
    //...

    message NativeAdTemplate {
      // Defines the bits used in required_fields and recommended_fields.
      // There is one bit for each of the fields in BidResponse.Ad.NativeAd
      enum Fields {
        NO_FIELDS = 0x0;
        HEADLINE = 0x1;
        BODY = 0x2;
        CALL_TO_ACTION = 0x4;
        ADVERTISER = 0x8;
        IMAGE = 0x10;
        LOGO = 0x20;
        APP_ICON = 0x40;
        STAR_RATING = 0x80;
        PRICE = 0x100;
        DEPRECATED_STORE = 0x200;
        VIDEO = 0x400;
      }

      // Bitfield describing which fields are required by the publisher. Bid
      // responses with no value for these fields will be rejected. Click
      // and view tracking urls are always implicitly required.
      optional int64 required_fields = 1;

      // Bitfield describing which fields are recommended by the publisher.
      // All recommended field are supported, but not all recommended fields
      // are required.
      optional int64 recommended_fields = 2;

      // max_safe_length indicates the maximum number of Unicode characters that
      // are guaranteed to be shown without truncation. Longer strings may be
      // truncated and ellipsized by Ad Exchange or the publisher during
      // rendering.
      optional int32 headline_max_safe_length = 3;
      optional int32 body_max_safe_length = 4;
      optional int32 call_to_action_max_safe_length = 5;
      optional int32 advertiser_max_safe_length = 6;
      optional int32 price_max_safe_length = 15;

      // The width and height from which to calculate the required aspect ratio.
      // You can provide a larger image in the response. Images that have aspect
      // ratios substantially different than those implied by the height and
      // width may be filtered.
      optional int32 image_width = 7;
      optional int32 image_height = 8;
      optional int32 logo_width = 9;
      optional int32 logo_height = 10;
      optional int32 app_icon_width = 11;
      optional int32 app_icon_height = 12;

      // Globally distinct id for the specific style, HTML, and CSS with which
      // the native ad is rendered.
      optional int32 style_id = 16;

      // Type of style layout for each native ad template.
      enum LayoutType {
        PIXEL = 0;
        FLUID = 1;
      }
      optional LayoutType style_layout_type = 17 [default = PIXEL];

      // If the style_layout_type is Pixel, width and height of the
      // entire native ad after rendering. If the style_layout_type is
      // Fluid, the style_height and style_width may optionally
      // not be populated.
      optional int32 style_height = 18;
      optional int32 style_width = 19;
    }
    repeated NativeAdTemplate native_ad_template = 51;
  }

    // NativePlacementType describes placement of native ad slot with respect to
    // surrounding context.
    enum NativePlacementType {
      PLACEMENT_UNKNOWN = 0;
      // In the feed of content - for example as an item inside the organic
      // feed/grid/listing/carousel.
      PLACEMENT_IN_FEED = 1;
      // In the atomic unit of the content - for example, in the article page or single
      // image page.
      PLACEMENT_ATOMIC_UNIT = 2;
      // Outside the core content - for example in the ads section on the right
      // rail, as a banner-style placement near the content, etc.
      PLACEMENT_OUTSIDE = 3;
      // Recommendation widget, most commonly presented below the article
      // content.
      PLACEMENT_RECOMMENDATION = 4;
    }

    optional NativePlacementType native_placement_type = 45;

  // ...
}

NativeAnzeigenmitteilung

Wenn ein Käufer auf natives Inventar bietet, muss ein Käufer BidResponse.ad[].native_ad mit den Pflichtfeldern füllen, die in der entsprechenden BidRequest.adSlot[].native_ad_template angegeben sind.

message BidResponse {
  //...
  message Ad {
    //...

    message NativeAd {
      // A short title for the ad.
      optional string headline = 1;

      // A long description of the ad.
      optional string body = 2;

      // A label for the button that the user is supposed to click.
      optional string call_to_action = 3;

      // The name of the advertiser or sponsor, to be displayed in the ad
      // creative.
      optional string advertiser = 4;

      // Next tag to use: 4
      message Image {
        optional string url = 1;

        // Image width and height are specified in pixels. You may provide a
        // larger image than was requested, so long as the aspect ratio is
        // preserved.
        optional int32 width = 2;
        optional int32 height = 3;
      }

      // A large image.
      optional Image image = 5;

      // A smaller image, for the advertiser's logo.
      optional Image logo = 6;

      // The app icon, for app download ads.
      optional Image app_icon = 7;

      // The video file. Only set this field if the video field is requested.
      oneof video {
        // The URL to fetch a video ad. The URL should return an XML response
        // that conforms to VAST standards.
        string video_url = 13;

        // The VAST document to be returned.
        string video_vast_xml = 16;
      }

      // The app rating in the app store. Must be in the range [0-5].
      optional double star_rating = 8;

      // The URL that the browser/SDK will load when the user clicks the ad.
      // This can be the landing page directly, or the first step of a redirect
      // chain that eventually leads to it. For backward compatibility, if this
      // is not set, the first Ad.click_through_url is used.
      optional string click_link_url = 14;

      // The URL to use for click tracking. The SDK pings click tracking url on
      // a background thread. When resolving the url, HTTP 30x redirects are
      // followed. The SDK ignores the contents of the response; this URL
      // has no effect on the landing page for the user.
      // This field is planned to be deprecated and we are moving to the
      // repeated click_tracking_urls field.
      optional string click_tracking_url = 11;

      // The URLs to use for click tracking. This will be used throughout the
      // serving stack and will incorporate any URL in click_tracking_urls.
      repeated string click_tracking_urls = 15;

      // The price of the promoted app including the currency info.
      optional string price = 10;

    };
    optional NativeAd native_ad = 18;

    // The set of destination URLs for the snippet. This includes the URLs that
    // the user will go to if they click on the displayed ad, and any URLs that
    // are visible in the rendered ad. Do not 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 click_through_url will be
    // discarded. Only set this field if html_snippet or video_url or native_ad
    // are set. This data is used as a destination URL declaration, for example
    // for post-filtering of publisher-blocked URLs or ad categorization.
    //
    // 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_link_url is not set, the first
    // value of click_through_url is used to direct the user to the landing
    // page. In addition, all values are used as destination
    // URL declarations (similar to the non-native case).
    repeated string click_through_url = 4;

    //...

    // The URLs to call when the impression is rendered. The SDK pings
    // impression urls on a background thread and ignores the contents
    // of the response.
    repeated string impression_tracking_url = 19;

    // Link to ad preferences page. This is only supported for native ads.
    // If present, a standard AdChoices icon is added to the native ad creative and
    // linked to this URL.
    optional string ad_choices_destination_url = 21;
    // ...
  }
}

Beispiele für Gebotsanfragen

Gebotsanfragen ohne Video

Google

OpenRTB-JSON

OpenRTB-Protokollzwischenspeicher

Videogebotsanfragen

Beispiele für Gebotsantworten

Beachten Sie, dass die Werte in dieser Antwort nicht mit den entsprechenden Anfragen oben übereinstimmen sollen. Wenn die Vorlage des Antrags jedoch Pflichtfelder oder optionale Felder vorschlägt, entsprechen die Antworten hier diesen Anforderungen.

Gebotsantworten (ohne Video)

Google

OpenRTB-JSON

OpenRTB-Protokollzwischenspeicher

Videogebotsantworten