Berichterstellung

Video: Vortrag zu Berichten zu Hotelanzeigen vom Workshop 2019

Mit der Google Ads API können Sie Abfragen erstellen, um die von Ihnen benötigten Berichte zu Hotelanzeigen zu erhalten. Sie können diese Abfragen dann in Ihre Clientanwendungen einbinden.

Voraussetzungen

  • Informieren Sie sich über die allgemeine Funktionsweise von Berichten und Abfragen.
  • Erfahren Sie, wie verschiedene Ressourcen abgefragt werden können.

Einfache Abfragen für Hotelanzeigen

Sehen Sie sich diese Beispielabfragen an, um sich mit der Verwendung der Google Ads API für Hotelanzeigen-Berichte vertraut zu machen.

Messwerte zu Klicks abrufen

Die folgende Beispielabfrage gibt die Anzahl der Klicks aus der Hotel-Leistungsansicht zurück.

SELECT metrics.clicks
FROM hotel_performance_view

Die Ergebnisse der Abfrage würden in etwa so aussehen:

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

Segmentierte Messwerte für Klicks abrufen

Bei der folgenden Beispielabfrage für Ansichten zur Hotelleistung werden Klicks erfasst und die Ergebnisse nach Hotel-ID segmentiert.

SELECT
  segments.partner_hotel_id,
  metrics.clicks
FROM hotel_performance_view

Die Ergebnisse der Abfrage würden in etwa wie der folgende JSON-String aussehen. Die Klicks sind nach partnerHotelID segmentiert. Daher können zwei oder mehr Objekte für dieselbe hotelPerformanceView 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"
      }
    },
    ...
  ]
}

Anzeigengruppenmesswerte abrufen

Mit der folgenden Beispielabfrage für Anzeigengruppen werden die Impressionen und Klicks in den letzten 30 Tagen nach Datum segmentiert.

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

Die Ergebnisse der Abfrage würden in etwa wie der folgende JSON-String aussehen. Die Antwort wird nur nach den Messwerten gefiltert, die die Bedingungen der WHERE-Klausel erfüllen. Das Datumsfeld wird mit dem letzten Datum des 30-Tage-Zeitraums gefü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 Anzeigengruppenanzeigen abrufen

Mit der folgenden Beispielabfrage für Anzeigengruppenanzeigen werden die ausgelieferten Anzeigengruppen abgerufen. Damit Anzeigen in einer Anzeigengruppe ausgeliefert werden können, müssen die Anzeige, 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

Die Ergebnisse der Abfrage würden in etwa 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 Datenansichten für Berichte zu Hotelanzeigen

In früheren APIs für Hotelanzeigen-Berichte konnten Sie einen bestimmten Bericht abrufen, z. B. einen Leistungsbericht. In der Google Ads API wird diese Art von Daten in separaten *_view-Ressourcen dargestellt, z. B. hotel_performance_view und hotel_group_view. In diesem Abschnitt werden die *_view-Ressourcen beschrieben, die für die Berichterstellung zu Hotelanzeigen nützlich sind. Beispielabfragen sind ebenfalls verfügbar.

Beachten Sie, dass jede *_view-Ressource bestimmte Ressourcenfelder, Segmente und Messwerte enthält. Lesen Sie die Dokumentation zur jeweiligen *_view-Ressource, bevor Sie die Abfrage erstellen.

Hotelgruppenansicht

Die Hotelgruppenansicht ist eine Kriterienansicht und eignet sich daher zum Abrufen von Messwerten für einen bestimmten Kriterientyp einer Hotelgruppe.

Bei der folgenden Beispielabfrage für Hotelgruppenansichten werden Klicks für jedes Hotel in einer Eintragsgruppe für die gesamte Baumstruktur der Hoteleintragsgruppe erfasst, einschließlich des Stammknotens („Alle Hotels“).

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

Die Ergebnisse der Abfrage würden in etwa 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 Eintragsgruppe „Alle Hotels“ dar, während die zweite Zeile die Messwerte für die untergeordnete Eintragsgruppe für „Sonstiges“ darstellt.

{
  "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"
      }
    },
  ]
}

Hotel – Leistungsansicht

Die Hotelleistungsansicht ist nützlich, wenn Sie Leistungsmesswerte für ein Hotel anhand von Daten abrufen möchten, die nicht aus einer Hotelgruppe stammen, selbst wenn Sie eine Untergruppe basierend auf der Hotel-ID haben.

Bei der folgenden Beispielabfrage für Ansichten zur Hotelleistung werden Klicks erfasst und die Ergebnisse nach Hotel-ID segmentiert.

SELECT
  segments.partner_hotel_id,
  metrics.clicks
FROM hotel_performance_view

Die Ergebnisse der Abfrage würden in etwa wie der folgende JSON-String aussehen. Die Klicks werden nach partner_hotel_id segmentiert. Daher können zwei oder mehr Objekte für dieselbe Hotel-Leistungsansicht 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 Anzeigengruppe

Die Zielgruppenansicht für Anzeigengruppen ist nützlich, wenn Sie Leistungsmesswerte für Zielgruppen abrufen möchten, die auf Anzeigengruppenebene zugeordnet sind.

Dies ist eine allgemeine Ansicht für verschiedene Arten von Kampagnen, nicht nur für Hotelkampagnen. In dieser Ansicht können die Ergebnisse auch nach hotel_date_selection_type segmentiert werden. Damit lässt sich angeben, ob das Hoteldatum vom Nutzer ausgewählt wurde oder ein Standarddatum für die von Google festgelegte 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

Die Ergebnisse der Abfrage würden in etwa 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 der Kampagne

Die Zielgruppenansicht der Kampagne ist nützlich, wenn Sie Leistungsmesswerte für Zielgruppen abrufen möchten, die auf Kampagnenebene zugeordnet sind.

Dies ist eine allgemeine Ansicht für verschiedene Arten von Kampagnen, nicht nur für Hotelkampagnen. In dieser Ansicht können die Ergebnisse auch nach hotel_date_selection_type segmentiert werden. Damit lässt sich angeben, ob das Hoteldatum vom Nutzer ausgewählt wurde oder ein Standarddatum für die von Google festgelegte 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

Die Ergebnisse der Abfrage würden in etwa 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 mehrere nützliche Berichte, die speziell für Hotelanzeigen entwickelt wurden.

Leistungsberichte

Bei diesen Abfragen wird die Hotelleistungsansicht verwendet, um Leistungsdaten abzurufen.

Mit hotel_performance_view können Sie die Ressource campaign zum Segmentieren von Messwerten verwenden. So können Sie beispielsweise das Feld campaign.id verwenden, um Leistungsmesswerte nach Kampagne abzurufen.

Leistung

Beispielabfrage:

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 mit Klicktyp

Beispielabfrage:

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

Die folgende Abfrage ruft Leistungsmesswerte ab, 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 zunehmen.

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

Die Ergebnisse der Abfrage würden in etwa 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 Ihre Preise mit denen von Mitbewerbern für dieselben Hotelreisepläne vergleichen.

Beispielabfrage:

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 zur Berechnung des durchschnittlichen gebuchten Preises (all_conversions_value geteilt durch conversions) für Hotels erforderlich sind.

Beispielabfrage:

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

Zielgruppenberichte enthalten die Leistung von Gebotsfaktoren in Google Ads-Zielgruppenlisten. Beispiele für Zielgruppenberichte finden Sie in den Beispielabfragen in den Zielgruppenansichten für Anzeigengruppen und in der Zielgruppenansicht auf Kampagnenebene.

Hotel-Abgleichsbericht

Der Hotelabgleichsbericht enthält Conversion-Informationen zu Hotelbuchungen, die mit den Datensätzen des Werbetreibenden abgeglichen werden können. Sie können Daten über Bulk-Uploads hochladen, um Google mitzuteilen, welche Buchungen storniert oder abgeschlossen wurden. Die Hauptspalten 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 für eine Anzeigenimpression bieten
Provisionskosten

Wenn status == RECONCILED oder CANCELED ist, 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 voraussichtlich bezahlen müssen oder bereits bezahlt haben