Berichterstellung

Video: Hotelanzeigen – Berichte (Workshop 2019)

Mit der Google Ads API können Sie Abfragen erstellen, um die benötigten Hotelanzeigenberichte abzurufen. Anschließend können Sie diese Abfragen in Ihre Clientanwendungen einbinden.

Vorbereitung

Einfache Anfragen für Hotelanzeigen

Anhand dieser Beispielabfragen können Sie sich mit der Verwendung der Google Ads API für Hotelanzeigen-Berichte vertraut machen.

Messwerte für Klicks abrufen

Die folgende Beispielabfrage gibt die Anzahl der Klicks aus der Ansicht „Hotelleistung“ zurück.

SELECT metrics.clicks
FROM hotel_performance_view

Die Ergebnisse der Abfrage sehen in etwa so aus:

{
  "results": [
    {
      "metrics": {
        "clicks": "78090"
      },
      "hotelPerformanceView": {
        "resourceName": "customers/1234567890/hotelPerformanceView"
      }
    }
  ],
  "totalResultsCount": "1",
  "fieldMask": "metrics.clicks"
}

Messwerte für segmentierte Klicks abrufen

Mit der folgenden Beispielabfrage für Hotelleistungsansichten werden Klicks abgerufen und die Ergebnisse nach Hotel-ID segmentiert.

SELECT
  segments.partner_hotel_id,
  metrics.clicks
FROM hotel_performance_view

Das Ergebnis der Abfrage könnte wie der folgende JSON-String aussehen. Die Klicks werden nach partnerHotelID segmentiert. Daher können für dieselbe HotelPerformanceView zwei oder mehr Objekte zurückgegeben werden.

{
  "results": [
    {
      "metrics": {
        "clicks": "7055"
      },
      "hotelPerformanceView": {
        "resourceName": "customers/1234567890/hotelPerformanceView"
      },
      "segments": {
        "partnerHotelId": "1111"
      }
    },
    {
      "metrics": {
        "clicks": "3047"
      },
      "hotelPerformanceView": {
        "resourceName": "customers/1234567890/hotelPerformanceView"
      },
      "segments": {
        "partnerHotelId": "1112"
      }
    },
    ...
  ]
}

Anzeigengruppenstatistiken abrufen

Die folgende Beispielabfrage für Anzeigengruppen ruft Impressionen und Klicks der letzten 30 Tage ab, segmentiert nach Datum.

SELECT
  campaign.name,
  campaign.status,
  ad_group.name,
  segments.date,
  metrics.impressions,
  metrics.clicks
FROM ad_group
WHERE ad_group.type = HOTEL_ADS
  AND segments.date DURING LAST_30_DAYS

Das Ergebnis der Abfrage könnte wie der folgende JSON-String aussehen. Die Antwort wird nur nach den Messwerten gefiltert, die den Bedingungen der WHERE-Klausel entsprechen. Das Datumsfeld wird mit dem letzten Datum im Zeitraum von 30 Tagen ausgefüllt.

{
  "results": [
    {
      "campaign": {
        "resourceName": "customers/123456789/campaigns/23456789",
        "name": "test campaign",
        "status": "ENABLED"
      },
      "adGroup": {
        "resourceName": "customers/123456789/adGroups/11111111",
        "name": "test adgroup"
      },
      "metrics": {
        "clicks": "91",
        "impressions": "5145"
      },
      "segments": {
        "date": "2020-05-10"
      }
    }
  ]
}

Aktivierte Anzeigen in Anzeigengruppen abrufen

Mit der folgenden Beispielabfrage für Anzeigengruppenanzeigen werden die Anzeigengruppen abgerufen, die ausgeliefert werden. Damit Anzeigen in einer Anzeigengruppe ausgeliefert werden können, müssen die Anzeige in der Anzeigengruppe, die Anzeigengruppe und die Kampagne aktiviert sein.

SELECT
  ad_group.id,
  ad_group.name,
  ad_group.status,
  campaign.name,
  campaign.status,
  ad_group_ad.status
FROM ad_group_ad
WHERE ad_group_ad.status = ENABLED
  AND campaign.status = ENABLED
  AND ad_group.status = ENABLED

Das Ergebnis der Abfrage könnte wie der folgende JSON-String aussehen.

{
  "results": [
    {
      "campaign": {
        "resourceName": "customers/123456789/campaigns/23456789",
        "name": "test campaign",
        "status": "ENABLED"
      },
      "adGroup": {
        "resourceName": "customers/123456789/adGroups/111111111111",
        "id": "106121857411",
        "name": "test adgroup",
        "status": "ENABLED"
      },
      "adGroupAd": {
        "resourceName": "customers/123456789/adGroupAds/111111111111~33333333333",
        "status": "ENABLED",
        "ad": {
          "resourceName": "customers/123456789/ads/77777777777"
        }
      }
    }
  ]
}

Nützliche Ansichten für Hotelanzeigen-Berichte

In früheren APIs für Hotelanzeigenberichte konnten Sie einen bestimmten Bericht abrufen, z. B. einen Leistungsbericht. In der Google Ads API werden diese Daten in separaten *_view-Ressourcen wie hotel_performance_view und hotel_group_view dargestellt. In diesem Abschnitt werden die *_view-Ressourcen beschrieben, die für Berichte zu Hotelanzeigen nützlich sind. Außerdem werden Beispielanfragen bereitgestellt.

Jede *_view-Ressource hat bestimmte Ressourcenfelder, Segmente und Messwerte. Sehen Sie sich die Dokumentation für die jeweilige *_view-Ressource an, bevor Sie die Abfrage erstellen.

Ansicht für Hotelgruppen

Die Hotelgruppenansicht ist eine Kriterienansicht. Sie ist also nützlich, um Messwerte für einen bestimmten Kriterientyp einer Hotelgruppe abzurufen.

Die folgende Beispielabfrage für Hotelgruppenansichten ruft Klicks für jedes Hotel in einer Listengruppe für den gesamten Baum der Hotelgruppenliste ab, einschließlich des Stammknotens („Alle Hotels“).

SELECT
  metrics.clicks,
  ad_group_criterion.listing_group.case_value.hotel_id.value
FROM hotel_group_view

Das Ergebnis der Abfrage könnte wie der folgende JSON-String aussehen. Da case_value für den Stammknoten („Alle Hotels“) nicht definiert ist, stellt die erste Zeile die Messwerte für die Anzeigengruppe „Alle Hotels“ dar, während die zweite Zeile die Messwerte für die untergeordnete Anzeigengruppe „Sonstiges“ enthält.

{
  "results": [
    {
      "metrics": {
        "clicks": "5"
      },
      "adGroupCriterion": {
        "resourceName": "customers/1234567890/adGroupCriteria/22222222222~111111111111"
      },
      "hotelGroupView": {
        "resourceName": "customers/1234567890/hotelGroupViews/22222222222~111111111111"
      }
    },
    {
      "metrics": {
        "clicks": "0"
      },
      "adGroupCriterion": {
        "resourceName": "customers/1234567890/adGroupCriteria/22222222222~111111111112"
        "listingGroup": {
          "caseValue": {
            "hotelId": {
            }
          }
        }
      },
      "hotelGroupView": {
        "resourceName": "customers/1234567890/hotelGroupViews/22222222222~111111111112"
      }
    },
    {
      "metrics": {
        "clicks": "3"
      },
      "adGroupCriterion": {
        "resourceName": "customers/1234567890/adGroupCriteria/22222222222~111111111113"
        "listingGroup": {
          "caseValue": {
            "hotelId": {
              "value": "11111111111111111"
              }
            }
          }
        }
      },
      "hotelGroupView": {
        "resourceName": "customers/1234567890/hotelGroupViews/22222222222~111111111113"
      }
    },
    {
      "metrics": {
        "clicks": "2"
      },
      "adGroupCriterion": {
        "resourceName": "customers/1234567890/adGroupCriteria/22222222222~111111111114"
        "listingGroup": {
          "caseValue": {
            "hotelId": {
              "value": "11111111111111112"
              }
            }
          }
        }
      },
      "hotelGroupView": {
        "resourceName": "customers/1234567890/hotelGroupViews/22222222222~111111111114"
      }
    },
  ]
}

Ansicht „Hotelleistung“

Die Hotel-Leistungsansicht ist nützlich, wenn Sie Leistungsstatistiken für ein Hotel abrufen möchten, die nicht aus einer Hotelgruppierung stammen, auch wenn Sie eine Unterteilung nach Hotel-ID haben.

Mit der folgenden Beispielabfrage für Hotelleistungsansichten werden Klicks abgerufen und die Ergebnisse nach Hotel-ID segmentiert.

SELECT
  segments.partner_hotel_id,
  metrics.clicks
FROM hotel_performance_view

Das Ergebnis der Abfrage könnte wie der folgende JSON-String aussehen. Die Klicks werden nach partner_hotel_id segmentiert. Daher können für dieselbe Hotel-Leistungsansicht zwei oder mehr Objekte zurückgegeben werden.

{
  "results": [
    {
      "metrics": {
        "clicks": "7055"
      },
      "hotelPerformanceView": {
        "resourceName": "customers/1234567890/hotelPerformanceView"
      },
      "segments": {
        "partnerHotelId": "1111"
      }
    },
    {
      "metrics": {
        "clicks": "3047"
      },
      "hotelPerformanceView": {
        "resourceName": "customers/1234567890/hotelPerformanceView"
      },
      "segments": {
        "partnerHotelId": "1112"
      }
    },
    ...
  ]
}

Zielgruppenansicht für Anzeigengruppen

Die Ansicht „Anzeigengruppenzielgruppe“ ist nützlich, wenn Sie Leistungsmesswerte für Zielgruppen abrufen möchten, die auf Anzeigengruppenebene angehängt sind.

Hinweis: Dies ist eine allgemeine Ansicht für verschiedene Kampagnentypen, nicht nur für Hotelkampagnen. In dieser Ansicht können Sie die Ergebnisse auch nach hotel_date_selection_type segmentieren. So lässt sich festlegen, ob das Hoteldatum vom Nutzer ausgewählt wurde oder ein von Google festgelegtes Standarddatum für die Suche war. Wenn Sie nach hotel_date_selection_type segmentieren, werden nur Ergebnisse für Hotelkampagnen zurückgegeben.

Die folgende Abfrage gibt eine Zeile pro ad_group_criterion.user_list.user_list zurück.

SELECT
  ad_group.id,
  campaign.id,
  ad_group_criterion.user_list.user_list,
  segments.device,
  segments.hotel_date_selection_type,
  metrics.impressions,
  metrics.clicks,
  metrics.cost_micros,
  metrics.conversions,
  metrics.all_conversions_value
FROM ad_group_audience_view

Das Ergebnis der Abfrage könnte wie der folgende JSON-String aussehen.

{
  "results": [
    {
      "campaign": {
        "resourceName": "customers/123456789/campaigns/23456789",
        "id": "23456789"
      },
      "metrics": {
        "clicks": "0",
        "conversions": "0",
        "costMicros": "0",
        "impressions": "3",
        "allConversionsValue": "0"
      },
      "adGroupCriterion": {
        "resourceName": "customers/123456789/adGroupCriteria/23456789~789456",
        "userList": {
          "userList": "customers/123456789/userLists/456789"
        }
      },
      "adGroupAudienceView": {
        "resourceName": "customers/8005193609/adGroupAudienceViews/23456789~789456"
      },
      "segments": {
        "device": "TABLET",
        "hotelDateSelectionType": "USER_SELECTED"
      }
    }
  ]
}

Zielgruppenansicht für Kampagnen

Die Campaign Audience View ist nützlich, wenn Sie Leistungsmesswerte für Zielgruppen abrufen möchten, die auf Kampagnenebene angehängt sind.

Hinweis: Dies ist eine allgemeine Ansicht für verschiedene Kampagnentypen, nicht nur für Hotelkampagnen. In dieser Ansicht können Sie die Ergebnisse auch nach hotel_date_selection_type segmentieren. So lässt sich festlegen, ob das Hoteldatum vom Nutzer ausgewählt wurde oder ein von Google festgelegtes Standarddatum für die Suche war. Wenn Sie nach hotel_date_selection_type segmentieren, werden nur Ergebnisse für Hotelkampagnen zurückgegeben.

Die folgende Abfrage gibt eine Zeile pro campaign_criterion.user_list.user_list zurück.

SELECT
  campaign.id,
  campaign_criterion.user_list.user_list,
  segments.device,
  segments.hotel_date_selection_type,
  metrics.impressions,
  metrics.clicks,
  metrics.cost_micros,
  metrics.conversions,
  metrics.all_conversions_value
FROM campaign_audience_view

Das Ergebnis der Abfrage könnte wie der folgende JSON-String aussehen.

{
  "results": [
    {
      "campaign": {
        "resourceName": "customers/123456789/campaigns/23456789",
        "id": "23456789"
      },
      "metrics": {
        "clicks": "0",
        "conversions": "0",
        "costMicros": "0",
        "impressions": "3",
        "allConversionsValue": "0"
      },
      "campaignCriterion": {
        "resourceName": "customers/123456789/campaignCriteria/23456789~789456",
        "userList": {
          "userList": "customers/123456789/userLists/456789"
        }
      },
      "campaignAudienceView": {
        "resourceName": "customers/8005193609/campaignAudienceViews/23456789~789456"
      },
      "segments": {
        "device": "TABLET",
        "hotelDateSelectionType": "USER_SELECTED"
      }
    }
  ]
}

Nützliche Berichte für Hotelanzeigen

In diesem Abschnitt finden Sie einige nützliche Berichte, die speziell für Hotelanzeigen entwickelt wurden.

Leistungsberichte

In diesen Abfragen wird die Ansicht „Hotel Performance“ verwendet, um Leistungsdaten abzurufen.

Mit einem hotel_performance_view können Sie die Ressource campaign verwenden, um Messwerte zu segmentieren. Mit dem Feld campaign.id können Sie beispielsweise Leistungsmesswerte nach Kampagne abrufen.

Leistung

Beispielanfrage:

SELECT
  segments.hotel_center_id,
  segments.device,
  segments.partner_hotel_id,
  segments.hotel_check_in_day_of_week,
  segments.hotel_date_selection_type,
  segments.hotel_length_of_stay,
  segments.hotel_booking_window_days,
  metrics.search_top_impression_share,
  metrics.search_absolute_top_impression_share,
  metrics.impressions,
  metrics.clicks,
  metrics.cost_micros,
  metrics.conversions,
  metrics.all_conversions_value,
  metrics.search_impression_share
FROM hotel_performance_view

Beispiel für eine JSON-Antwort:

{
  "results": [
    {
      "campaign": {
        "resourceName": "customers/123456789/campaigns/23456789"
      },
      "metrics": {
        "clicks": "0",
        "conversions": "0.0",
        "costMicros": "0",
        "impressions": "0",
        "searchImpressionShare": "0.0999",
        "searchAbsoluteTopImpressionShare": "0.0999",
        "searchTopImpressionShare": "0.0999",
        "allConversionsValue": "1"
      },
      "hotelPerformanceView": {
        "resourceName": "customers/123456789/hotelPerformanceView"
      },
      "segments": {
        "device": "DESKTOP",
        "hotelBookingWindowDays": "3",
        "hotelCenterId": "1234",
        "hotelCheckInDayOfWeek": "MONDAY",
        "hotelDateSelectionType": "USER_SELECTED",
        "hotelLengthOfStay": "4",
        "partnerHotelId": "123"
      }
    },
    {
      "campaign": {
        "resourceName": "customers/123456789/campaigns/23456789"
      },
      "metrics": {
        "clicks": "0",
        "conversions": "0.0",
        "costMicros": "0",
        "impressions": "1",
        "searchImpressionShare": "1.0",
        "searchAbsoluteTopImpressionShare": "0.0999",
        "searchTopImpressionShare": "1.0",
        "allConversionsValue": "1"
      },
      "hotelPerformanceView": {
        "resourceName": "customers/123456789/hotelPerformanceView"
      },
      "segments": {
        "device": "DESKTOP",
        "hotelBookingWindowDays": "3",
        "hotelCenterId": "1234",
        "hotelCheckInDayOfWeek": "MONDAY",
        "hotelDateSelectionType": "USER_SELECTED",
        "hotelLengthOfStay": "4",
        "partnerHotelId": "123"
      }
    }
  ]
}

Leistung nach Klicktyp

Beispielanfrage:

SELECT
  segments.click_type,
  segments.hotel_center_id,
  segments.device,
  segments.partner_hotel_id,
  segments.hotel_check_in_day_of_week,
  segments.hotel_date_selection_type,
  segments.hotel_length_of_stay,
  segments.hotel_booking_window_days,
  metrics.impressions,
  metrics.clicks,
  metrics.cost_micros,
  metrics.conversions,
  metrics.all_conversions_value
FROM hotel_performance_view

Beispiel für eine JSON-Antwort:

{
  "results": [
    {
      "campaign": {
        "resourceName": "customers/123456789/campaigns/23456789"
    },
      "metrics": {
        "clicks": "0",
        "conversions": "0.0",
        "costMicros": "0",
        "impressions": "1",
        "allConversionsValue": "0.0"
      },
      "hotelPerformanceView": {
        "resourceName": "customers/123456789/hotelPerformanceView"
      },
      "segments": {
        "device": "DESKTOP",
        "hotelBookingWindowDays": "0",
        "hotelCenterId": "1234",
        "hotelCheckInDayOfWeek": "TUESDAY",
        "hotelDateSelectionType": "USER_SELECTED",
        "hotelLengthOfStay": "4",
        "partnerHotelId": "123",
        "clickType": "HOTEL_PRICE"
      }
    },
    {
      "campaign": {
        "resourceName": "customers/123456789/campaigns/23456789"
      },
      "metrics": {
        "clicks": "1",
        "conversions": "0.0",
        "costMicros": "0",
        "impressions": "1",
        "allConversionsValue": "0.0"
      },
      "hotelPerformanceView": {
        "resourceName": "customers/123456789/hotelPerformanceView"
      },
      "segments": {
        "device": "DESKTOP",
        "hotelBookingWindowDays": "0",
        "hotelCenterId": "1234",
        "hotelCheckInDayOfWeek": "TUESDAY",
        "hotelDateSelectionType": "USER_SELECTED",
        "hotelLengthOfStay": "4",
        "partnerHotelId": "12345",
        "clickType": "HOTEL_PRICE"
      }
    }
  ]
}

Leistungsbericht zu nutzerabhängigen Preisen

Mit der folgenden Abfrage werden Leistungsmesswerte abgerufen, die nach folgenden Kriterien segmentiert sind:

  • campaign
  • hotel_center_id
  • hotel_country
  • hotel_rate_rule_id
  • hotel_rate_type
  • device
  • partner_hotel_id

Eine Beschreibung der Typen finden Sie unter HotelRateType.

Eine Abfrage kann mehrere Segmente enthalten. Die Anzahl der zurückgegebenen Zeilen kann jedoch mit zusätzlichen Segmenten erheblich steigen.

SELECT
  campaign.id,
  segments.hotel_center_id,
  segments.hotel_country,
  segments.hotel_rate_rule_id,
  segments.hotel_rate_type,
  segments.device,
  segments.partner_hotel_id,
  metrics.search_top_impression_share,
  metrics.search_absolute_top_impression_share,
  metrics.impressions,
  metrics.clicks,
  metrics.cost_micros,
  metrics.conversions
FROM hotel_performance_view

Das Ergebnis der Abfrage könnte wie der folgende JSON-String aussehen.

{
  "results": [
    {
      "campaign": {
        "resourceName": "customers/123456789/campaigns/23456789",
        "id": "23456789"
      },
      "metrics": {
        "clicks": "1",
        "conversions": "0.0",
        "costMicros": "0",
        "impressions": "24",
        "searchAbsoluteTopImpressionShare": "0.0999",
        "searchTopImpressionShare": "0.17073170731707318"
      },
      "hotelPerformanceView": {
        "resourceName": "customers/123456789/hotelPerformanceView"
      },
      "segments": {
        "device": "TABLET",
        "hotelCenterId": "1234",
        "partnerHotelId": "123",
        "hotelRateRuleId": "desktop",
        "hotelRateType": "PUBLIC_RATE"
      }
    },
    {
      "campaign": {
        "resourceName": "customers/123456789/campaigns/23456789",
        "id": "23456789"
      },
      "metrics": {
        "clicks": "107",
        "conversions": "0.0",
        "costMicros": "0",
        "impressions": "1668",
        "searchAbsoluteTopImpressionShare": "0.0999",
        "searchTopImpressionShare": "0.3581201665675193"
      },
      "hotelPerformanceView": {
        "resourceName": "customers/123456789/hotelPerformanceView"
      },
      "segments": {
        "device": "TABLET",
        "hotelCenterId": "1234",
        "partnerHotelId": "1235",
        "hotelRateRuleId": "desktop",
        "hotelRateType": "PUBLIC_RATE"
      }
    }
  ]
}

Bericht zur Wettbewerbsfähigkeit von Preisen

Sie können sich ansehen, wie Ihre Preise im Vergleich zu den Preisen der Mitbewerber für dieselben Hotelanfragen abschneiden.

Beispielanfrage:

SELECT
  segments.hotel_center_id,
  segments.partner_hotel_id,
  segments.hotel_price_bucket,
  metrics.hotel_average_lead_value_micros,
  metrics.hotel_price_difference_percentage
FROM hotel_performance_view

Beispiel für eine JSON-Antwort:

{
  "results": [
    {
      "metrics": {
        "hotelAverageLeadValueMicros": "96416341.829268292",
        "hotelPriceDifferencePercentage": "-0.014627310872986811"
      },
      "hotelPerformanceView": {
        "resourceName": "customers/123456789/hotelPerformanceView"
      },
      "segments": {
        "hotelCenterId": "1234",
        "partnerHotelId": "123",
        "hotelPriceBucket": "LOWEST_TIED"
      }
    }
  ]
}

Bericht zum durchschnittlichen gebuchten Preis

Sie können die Daten abrufen, die zum Berechnen des durchschnittlichen gebuchten Preises (all_conversions_value ÷ conversions) für Hotels erforderlich sind.

Beispielanfrage:

SELECT
  segments.hotel_center_id,
  segments.partner_hotel_id,
  segments.hotel_price_bucket,
  metrics.all_conversions_value,
  metrics.conversions
FROM hotel_performance_view

Beispiel für eine JSON-Antwort:

{
  "results": [
    {
      "metrics": {
        "allConversionsValue": "123.5",
        "conversions": "1"
      },
      "hotelPerformanceView": {
        "resourceName": "customers/123456789/hotelPerformanceView"
      },
      "segments": {
        "hotelCenterId": "1234",
        "partnerHotelId": "123",
        "hotelPriceBucket": "LOWEST_TIED"
      }
    }
  ]
}

Zielgruppenberichte

In Zielgruppenberichten sehen Sie die Leistung von Gebotsfaktoren für Google Ads-Zielgruppenlisten. Beispiele für Zielgruppenberichte finden Sie in den Beispielabfragen in Anzeigengruppenzielgruppenansicht und Kampagnenzielgruppenansicht.

Bericht zum Hotelabgleich

Der Hotel-Abgleichsbericht enthält Conversion-Informationen aus Hotelbuchungen, die mit den Aufzeichnungen des Werbetreibenden abgeglichen werden können. Sie können Daten per Bulk-Upload hochladen, um Google mitzuteilen, welche Buchungen storniert oder abgeschlossen wurden. Die wichtigsten Spalten in diesem Bericht sind:

UI-Spalte API-Spalte Erklärung
Buchungswert metrics.value_per_conversions_by_conversion_date Der vom Tag gemeldete Conversion-Wert
Conversion-Datum segments.date Das Datum der Buchung
Provisionsrate metrics.hotel_commission_rate_micros Der Prozentsatz des Buchungswerts, den Sie als Gebot für eine Anzeigenimpression abgeben
Provisionskosten

Wenn status == RECONCILED oder CANCELED, kann dieser Wert als metrics.hotel_commission_rate_micros * hotel_reconciliation.reconciled_value_micros berechnet werden. In allen anderen Fällen kann dieser Wert aus der Spalte metrics.hotel_expected_commission_cost abgerufen oder als metrics.hotel_commission_rate_micros * metrics.value_per_conversions_by_conversion_date berechnet werden.

Der Betrag, den Sie für den Gastaufenthalt zahlen müssen oder bereits bezahlt haben