Film: zobacz prezentację na temat raportów z warsztatów dotyczących Reklam hoteli z 2019 roku
Za pomocą interfejsu Google Ads API możesz projektować zapytania tak, aby uzyskiwać potrzebne raporty o reklamach hoteli. Możesz następnie włączyć te zapytania w swoje aplikacje klienckie.
Wymagania wstępne
- Dowiedz się, jak działają raporty i zapytania.
- Dowiedz się, jak wysyłać zapytania dotyczące różnych zasobów.
Podstawowe zapytania w przypadku reklam hoteli
Zapoznaj się z tymi przykładowymi zapytaniami, aby dowiedzieć się, jak korzystać z interfejsu Google Ads API na potrzeby raportowania w przypadku Reklam hoteli.
Pobieranie danych o kliknięciach
Podane niżej przykładowe zapytanie zwraca liczbę kliknięć z widoku skuteczności hotelu.
SELECT metrics.clicks
FROM hotel_performance_view
Wyniki zapytania będą wyglądać mniej więcej tak:
{
"results": [
{
"metrics": {
"clicks": "78090"
},
"hotelPerformanceView": {
"resourceName": "customers/1234567890/hotelPerformanceView"
}
}
],
"totalResultsCount": "1",
"fieldMask": "metrics.clicks"
}
Uzyskiwanie posegmentowanych danych o kliknięciach
Podane niżej przykładowe zapytanie związane z widokami skuteczności hoteli uzyskuje kliknięcia i segmentuje wyniki według identyfikatora hotelu.
SELECT
segments.partner_hotel_id,
metrics.clicks
FROM hotel_performance_view
Wyniki zapytania będą wyglądać mniej więcej tak jak ten ciąg JSON.
Kliknięcia są podzielone na segmenty według parametru partnerHotelID
, dzięki czemu dla tego samego obiektu hotelPerformanceView mogą zostać zwrócone co najmniej 2 obiekty.
{
"results": [
{
"metrics": {
"clicks": "7055"
},
"hotelPerformanceView": {
"resourceName": "customers/1234567890/hotelPerformanceView"
},
"segments": {
"partnerHotelId": "1111"
}
},
{
"metrics": {
"clicks": "3047"
},
"hotelPerformanceView": {
"resourceName": "customers/1234567890/hotelPerformanceView"
},
"segments": {
"partnerHotelId": "1112"
}
},
...
]
}
Pobierz dane grupy reklam
Podane niżej przykładowe zapytanie dotyczące grup reklam uzyskuje wyświetlenia i kliknięcia z ostatnich 30 dni podzielone według daty.
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
Wyniki zapytania będą wyglądać mniej więcej tak jak ten ciąg JSON.
Odpowiedź jest filtrowana tylko pod kątem wskaźników spełniających warunki klauzuli WHERE
. Pole daty jest wypełniane ostatnią datą z okresu 30 dni.
{
"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"
}
}
]
}
Pobierz włączone reklamy z grupy reklam
Podane niżej przykładowe zapytanie dotyczące reklam w grupie reklam pobiera grupy reklam, które zostaną wyświetlone. Aby można było wyświetlić dowolną grupę reklam, musi ona być włączona: reklama z grupy reklam, grupa reklam i kampania.
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
Wyniki zapytania będą wyglądać mniej więcej tak jak ten ciąg JSON.
{
"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"
}
}
}
]
}
Widoki przydatne do raportowania Reklam hoteli
We wcześniejszych interfejsach API do raportowania Reklam hoteli można było pobierać konkretny raport, np. raport skuteczności. W interfejsie Google Ads API dane te są prezentowane w osobnych zasobach *_view
, np. hotel_performance_view
i hotel_group_view
. W tej sekcji znajdziesz opis zasobów związanych z *_view
, które są przydatne podczas tworzenia raportów o reklamach hoteli. Dostępne są też przykładowe zapytania.
Pamiętaj, że każdy zasób *_view
ma określone pola zasobów, segmenty i dane. Zanim utworzysz zapytanie, zapoznaj się z dokumentacją konkretnego zasobu *_view
.
Widok grupy hoteli
Widok grupy hoteli jest widokiem kryteriów, więc przydaje się do pobierania danych dotyczących określonego typu kryteriów grupy hoteli.
Podane niżej przykładowe zapytanie dotyczące widoków grup hoteli uzyskuje kliknięcia każdego hotelu w grupie informacji o produktach w całym drzewie grupy informacji o hotelach, w tym w węźle głównym („Wszystkie hotele”).
SELECT
metrics.clicks,
ad_group_criterion.listing_group.case_value.hotel_id.value
FROM hotel_group_view
Wyniki zapytania będą wyglądać mniej więcej tak jak ten ciąg JSON.
Ponieważ w węźle głównym („Wszystkie hotele”) wartość case_value
jest nieokreślona, widać, że pierwszy wiersz zawiera dane z grupy informacji o produktach „Wszystkie hotele”, a drugi – dane dotyczące podrzędnej grupy informacji o produktach reprezentującej grupę „Inne”.
{
"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"
}
},
]
}
Skuteczność hotelu
Widok skuteczności hotelu przydaje się, gdy chcesz pobierać dane o skuteczności hotelu za pomocą danych, które nie pochodzą z grupy hoteli, nawet jeśli stosujesz podgrupę do podziału na podstawie identyfikatora hotelu.
Podane niżej przykładowe zapytanie związane z widokami skuteczności hoteli uzyskuje kliknięcia i segmentuje wyniki według identyfikatora hotelu.
SELECT
segments.partner_hotel_id,
metrics.clicks
FROM hotel_performance_view
Wyniki zapytania będą wyglądać mniej więcej tak jak ten ciąg JSON.
Kliknięcia są podzielone na segmenty według atrybutu partner_hotel_id
, dzięki czemu w tym samym widoku skuteczności hotelu mogą zostać zwrócone co najmniej 2 obiekty.
{
"results": [
{
"metrics": {
"clicks": "7055"
},
"hotelPerformanceView": {
"resourceName": "customers/1234567890/hotelPerformanceView"
},
"segments": {
"partnerHotelId": "1111"
}
},
{
"metrics": {
"clicks": "3047"
},
"hotelPerformanceView": {
"resourceName": "customers/1234567890/hotelPerformanceView"
},
"segments": {
"partnerHotelId": "1112"
}
},
...
]
}
Widok odbiorców grupy reklam
Widok Odbiorcy grupy reklam przydaje się, gdy chcesz pobierać dane o skuteczności dotyczące odbiorców dołączonych na poziomie grupy reklam.
Pamiętaj, że jest to ogólny widok różnych typów kampanii, nie tylko kampanii reklam hoteli. Ten widok umożliwia też segmentowanie wyników według parametru hotel_date_selection_type
, dzięki któremu można określić, czy data pobytu w hotelu została wybrana przez użytkownika, czy była to domyślna data dla wyszukiwania ustawionego przez Google. Jeśli posegmentujesz dane według wymiaru hotel_date_selection_type
, otrzymasz wyniki tylko z kampanii reklam hoteli.
To zapytanie zwraca 1 wiersz na ad_group_criterion.user_list.user_list
.
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
Wyniki zapytania będą wyglądać mniej więcej tak jak ten ciąg JSON.
{
"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"
}
}
]
}
Odbiorcy kampanii – widok
Widok Odbiorcy kampanii przydaje się, gdy chcesz pobierać dane o skuteczności dotyczące list odbiorców dołączonych na poziomie kampanii.
Pamiętaj, że jest to ogólny widok różnych typów kampanii, nie tylko kampanii reklam hoteli. Ten widok umożliwia też segmentowanie wyników według parametru hotel_date_selection_type
, dzięki któremu można określić, czy data pobytu w hotelu została wybrana przez użytkownika, czy była to domyślna data dla wyszukiwania ustawionego przez Google. Jeśli posegmentujesz dane według wymiaru hotel_date_selection_type
, otrzymasz wyniki tylko z kampanii reklam hoteli.
To zapytanie zwraca 1 wiersz na campaign_criterion.user_list.user_list
.
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
Wyniki zapytania będą wyglądać mniej więcej tak jak ten ciąg JSON.
{
"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"
}
}
]
}
Przydatne raporty dotyczące Reklam hoteli
W tej sekcji znajdziesz kilka przydatnych raportów opracowanych specjalnie z myślą o Reklamach hoteli.
Raporty skuteczności
Zapytania te korzystają z widoku skuteczności hotelu w celu uzyskiwania danych o skuteczności.
hotel_performance_view
umożliwia segmentację danych przy użyciu zasobu campaign
. Możesz np. w polu campaign.id
uzyskać dane o skuteczności według kampanii.
Występy
Przykładowe zapytanie:
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
Przykładowa odpowiedź JSON:
{
"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"
}
}
]
}
Skuteczność według typu kliknięcia
Przykładowe zapytanie:
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
Przykładowa odpowiedź JSON:
{
"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"
}
}
]
}
Raport skuteczności cen warunkowych
To zapytanie powoduje podział danych o skuteczności na segmenty według:
campaign
hotel_center_id
hotel_country
hotel_rate_rule_id
hotel_rate_type
device
partner_hotel_id
Opisy poszczególnych typów znajdziesz w sekcji HotelRateType
.
W zapytaniu można uwzględnić wiele segmentów, jednak liczba zwróconych wierszy może się znacznie zwiększyć po zastosowaniu dodatkowych segmentów.
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
Wyniki zapytania będą wyglądać mniej więcej tak jak ten ciąg JSON.
{
"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"
}
}
]
}
Raport o konkurencyjności cenowej
Możesz sprawdzić, jak Twoje ceny wypadają na tle cen konkurencji w przypadku tych samych planów podróży do hoteli.
Przykładowe zapytanie:
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
Przykładowa odpowiedź JSON:
{
"results": [
{
"metrics": {
"hotelAverageLeadValueMicros": "96416341.829268292",
"hotelPriceDifferencePercentage": "-0.014627310872986811"
},
"hotelPerformanceView": {
"resourceName": "customers/123456789/hotelPerformanceView"
},
"segments": {
"hotelCenterId": "1234",
"partnerHotelId": "123",
"hotelPriceBucket": "LOWEST_TIED"
}
}
]
}
Raport średniej ceny zarezerwowanej
Możesz uzyskać dane potrzebne do obliczenia średniej ceny rezerwacji hoteli (all_conversions_value
podzielone przez conversions
).
Przykładowe zapytanie:
SELECT
segments.hotel_center_id,
segments.partner_hotel_id,
segments.hotel_price_bucket,
metrics.all_conversions_value,
metrics.conversions
FROM hotel_performance_view
Przykładowa odpowiedź JSON:
{
"results": [
{
"metrics": {
"allConversionsValue": "123.5",
"conversions": "1"
},
"hotelPerformanceView": {
"resourceName": "customers/123456789/hotelPerformanceView"
},
"segments": {
"hotelCenterId": "1234",
"partnerHotelId": "123",
"hotelPriceBucket": "LOWEST_TIED"
}
}
]
}
Raporty z sekcji Odbiorcy
Raporty o odbiorcach pokazują skuteczność mnożników stawek na listach odbiorców Google Ads. Przykłady raportów o odbiorcach znajdziesz w przykładowych zapytaniach w sekcjach Odbiorcy w grupie reklam i Widok odbiorców kampanii.
Raport uzgodnień dotyczących hoteli
Raport uzgodnień dotyczących hoteli zawiera informacje o konwersjach z rezerwacji hoteli, które są zgodne z danymi reklamodawcy. Aby poinformować Google, które rezerwacje zostały anulowane, a które zrealizowane, możesz przesłać dane za pomocą przesyłania zbiorczego. Główne kolumny w tym raporcie są następujące:
Kolumna interfejsu | Kolumna interfejsu API | Wyjaśnienie |
---|---|---|
Wartość rezerwacji | metrics.value_per_conversions_by_conversion_date |
Wartość konwersji raportowana przez tag. |
Data konwersji | segments.date |
datę rezerwacji; |
Stawka prowizji | metrics.hotel_commission_rate_micros |
Procent wartości rezerwacji, który określasz dla wyświetlenia reklamy |
Koszt prowizji |
Jeśli jest ustawiona na |
Kwota, jaką masz zamiar zapłacić za pobyt gościa lub została już zapłacona |