Con la API de Google Ads, puedes diseñar consultas para obtener los informes de los anuncios de hoteles que necesitas. Luego, puedes incorporar estas consultas en tus aplicaciones cliente.
Requisitos previos
- Obtén información sobre cómo funcionan los informes y las consultas en general.
- Obtén más información para consultar diferentes recursos.
Consultas básicas para los Anuncios de hoteles
Consulta estos ejemplos de consultas para familiarizarte con el uso de la API de Google Ads para los informes de anuncios de hotel.
Obtén métricas de clics
La siguiente consulta de ejemplo devuelve la cantidad de clics de la vista de rendimiento de los hoteles.
SELECT metrics.clicks
FROM hotel_performance_view
Los resultados de la búsqueda son similares a la siguiente respuesta JSON:
{
"results": [
{
"metrics": {
"clicks": "78090"
},
"hotelPerformanceView": {
"resourceName": "customers/1234567890/hotelPerformanceView"
}
}
],
"totalResultsCount": "1",
"fieldMask": "metrics.clicks"
}
Obtén métricas del grupo de anuncios
La siguiente consulta de ejemplo para grupos de anuncios obtiene las impresiones y los clics de los últimos 30 días, segmentados por fecha.
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
Los resultados de la búsqueda son similares a la siguiente respuesta JSON. La respuesta se filtra para incluir solo las métricas que cumplen con las condiciones de la cláusula WHERE. Como se seleccionó segments.date, la consulta devuelve una fila por día en el período de 30 días.
{
"results": [
{
"campaign": {
"resourceName": "customers/1234567890/campaigns/23456789",
"name": "test campaign",
"status": "ENABLED"
},
"adGroup": {
"resourceName": "customers/1234567890/adGroups/11111111",
"name": "test adgroup"
},
"metrics": {
"clicks": "91",
"impressions": "5145"
},
"segments": {
"date": "2020-05-10"
}
}
]
}
Obtén anuncios habilitados del grupo de anuncios
La siguiente consulta de ejemplo para los anuncios del grupo de anuncios obtiene los grupos de anuncios que se publicarán. Para que se publique un grupo de anuncios, se deben habilitar el anuncio del grupo de anuncios, el grupo de anuncios y la campaña.
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
Los resultados de la búsqueda son similares a la siguiente respuesta JSON:
{
"results": [
{
"campaign": {
"resourceName": "customers/1234567890/campaigns/23456789",
"name": "test campaign",
"status": "ENABLED"
},
"adGroup": {
"resourceName": "customers/1234567890/adGroups/11111111",
"id": "11111111",
"name": "test adgroup",
"status": "ENABLED"
},
"adGroupAd": {
"resourceName": "customers/1234567890/adGroupAds/11111111~33333333",
"status": "ENABLED",
"ad": {
"resourceName": "customers/1234567890/ads/77777777"
}
}
}
]
}
Vistas útiles para los informes de anuncios de hotel
En las APIs anteriores para los informes de anuncios de hotel, podías recuperar un informe específico, como un informe de rendimiento. En la API de Google Ads, este tipo de datos se representa en recursos *_view separados, como hotel_performance_view y hotel_group_view. En esta sección, se describen los recursos de *_view que son útiles para los informes de los anuncios de hotel, junto con ejemplos de consultas.
Vista de grupo de hoteles
La vista de grupo de hoteles es una vista de criterios, por lo que es útil para recuperar métricas de un tipo de criterio específico de un grupo de hoteles.
La siguiente consulta de ejemplo para las vistas de grupos de hoteles obtiene los clics de cada hotel en un grupo de fichas para todo el árbol del grupo de fichas de hoteles, incluido el nodo raíz ("Todos los hoteles").
SELECT
metrics.clicks,
ad_group_criterion.listing_group.case_value.hotel_id.value
FROM hotel_group_view
Los resultados de la búsqueda son similares a la siguiente respuesta JSON. Dado que case_value no está definido para el nodo raíz (“Todos los hoteles”), la primera fila representa las métricas del grupo de fichas “Todos los hoteles”, mientras que la segunda fila representa las métricas del grupo de fichas secundario que representa “Otros”.
{
"results": [
{
"metrics": {
"clicks": "5"
},
"adGroupCriterion": {
"resourceName": "customers/1234567890/adGroupCriteria/2222222~1111111"
},
"hotelGroupView": {
"resourceName": "customers/1234567890/hotelGroupViews/2222222~1111111"
}
},
{
"metrics": {
"clicks": "0"
},
"adGroupCriterion": {
"resourceName": "customers/1234567890/adGroupCriteria/2222222~1111112",
"listingGroup": {
"caseValue": {
"hotelId": {}
}
}
},
"hotelGroupView": {
"resourceName": "customers/1234567890/hotelGroupViews/2222222~1111112"
}
},
{
"metrics": {
"clicks": "3"
},
"adGroupCriterion": {
"resourceName": "customers/1234567890/adGroupCriteria/2222222~1111113",
"listingGroup": {
"caseValue": {
"hotelId": {
"value": "11111111111111111"
}
}
}
},
"hotelGroupView": {
"resourceName": "customers/1234567890/hotelGroupViews/2222222~1111113"
}
},
{
"metrics": {
"clicks": "2"
},
"adGroupCriterion": {
"resourceName": "customers/1234567890/adGroupCriteria/2222222~1111114",
"listingGroup": {
"caseValue": {
"hotelId": {
"value": "11111111111111112"
}
}
}
},
"hotelGroupView": {
"resourceName": "customers/1234567890/hotelGroupViews/2222222~1111114"
}
}
]
}
Vista del rendimiento del hotel
La vista de rendimiento de hoteles es útil si deseas recuperar métricas de rendimiento para un hotel con datos que no provienen de una agrupación de hoteles, incluso si tienes una subdivisión basada en el ID de hotel.
La siguiente consulta de ejemplo para las vistas de rendimiento de hoteles obtiene los clics y segmenta los resultados por ID de hotel.
SELECT
segments.partner_hotel_id,
metrics.clicks
FROM hotel_performance_view
Los resultados de la búsqueda son similares a la siguiente respuesta JSON. Los clics se segmentan por partner_hotel_id (partnerHotelId en JSON de REST), por lo que se pueden devolver dos o más objetos para el mismo hotel_performance_view.
{
"results": [
{
"metrics": {
"clicks": "7055"
},
"hotelPerformanceView": {
"resourceName": "customers/1234567890/hotelPerformanceView"
},
"segments": {
"partnerHotelId": "1111"
}
},
{
"metrics": {
"clicks": "3047"
},
"hotelPerformanceView": {
"resourceName": "customers/1234567890/hotelPerformanceView"
},
"segments": {
"partnerHotelId": "1112"
}
}
]
}
Vista del público del grupo de anuncios
La vista de público del grupo de anuncios es útil si deseas recuperar métricas de rendimiento para los públicos adjuntos a nivel del grupo de anuncios.
La siguiente consulta devuelve una fila por cada 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
Los resultados de la búsqueda son similares a la siguiente respuesta JSON:
{
"results": [
{
"campaign": {
"resourceName": "customers/1234567890/campaigns/23456789",
"id": "23456789"
},
"metrics": {
"clicks": "0",
"conversions": "0",
"costMicros": "0",
"impressions": "3",
"allConversionsValue": "0"
},
"adGroupCriterion": {
"resourceName": "customers/1234567890/adGroupCriteria/23456789~789456",
"userList": {
"userList": "customers/1234567890/userLists/456789"
}
},
"adGroupAudienceView": {
"resourceName":
"customers/1234567890/adGroupAudienceViews/23456789~789456"
},
"segments": {
"device": "TABLET",
"hotelDateSelectionType": "USER_SELECTED"
}
}
]
}
Vista del público de la campaña
La vista de público de la campaña es útil si deseas recuperar las métricas de rendimiento de los públicos adjuntos a nivel de la campaña.
La siguiente consulta devuelve una fila por cada 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
Los resultados de la búsqueda son similares a la siguiente respuesta JSON:
{
"results": [
{
"campaign": {
"resourceName": "customers/1234567890/campaigns/23456789",
"id": "23456789"
},
"metrics": {
"clicks": "0",
"conversions": "0",
"costMicros": "0",
"impressions": "3",
"allConversionsValue": "0"
},
"campaignCriterion": {
"resourceName": "customers/1234567890/campaignCriteria/23456789~789456",
"userList": {
"userList": "customers/1234567890/userLists/456789"
}
},
"campaignAudienceView": {
"resourceName":
"customers/1234567890/campaignAudienceViews/23456789~789456"
},
"segments": {
"device": "TABLET",
"hotelDateSelectionType": "USER_SELECTED"
}
}
]
}
Informes útiles para los anuncios de hoteles
En esta sección, se proporcionan varios informes útiles diseñados específicamente para los anuncios de hotel.
Informes de rendimiento
Estas consultas utilizan la vista de rendimiento de hoteles para obtener datos de rendimiento.
Un hotel_performance_view te permite usar el recurso campaign para segmentar las métricas. Por ejemplo, puedes usar el campo campaign.id para obtener métricas de rendimiento por campaña.
Rendimiento
Consulta de ejemplo:
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
Ejemplo de respuesta JSON:
{
"results": [
{
"campaign": {
"resourceName": "customers/1234567890/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/1234567890/hotelPerformanceView"
},
"segments": {
"device": "DESKTOP",
"hotelBookingWindowDays": "3",
"hotelCenterId": "1234",
"hotelCheckInDayOfWeek": "MONDAY",
"hotelDateSelectionType": "USER_SELECTED",
"hotelLengthOfStay": "4",
"partnerHotelId": "123"
}
},
{
"campaign": {
"resourceName": "customers/1234567890/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/1234567890/hotelPerformanceView"
},
"segments": {
"device": "DESKTOP",
"hotelBookingWindowDays": "3",
"hotelCenterId": "1234",
"hotelCheckInDayOfWeek": "MONDAY",
"hotelDateSelectionType": "USER_SELECTED",
"hotelLengthOfStay": "4",
"partnerHotelId": "123"
}
}
]
}
Rendimiento por tipo de clic
Consulta de ejemplo:
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
Ejemplo de respuesta JSON:
{
"results": [
{
"campaign": {
"resourceName": "customers/1234567890/campaigns/23456789"
},
"metrics": {
"clicks": "0",
"conversions": "0.0",
"costMicros": "0",
"impressions": "1",
"allConversionsValue": "0.0"
},
"hotelPerformanceView": {
"resourceName": "customers/1234567890/hotelPerformanceView"
},
"segments": {
"device": "DESKTOP",
"hotelBookingWindowDays": "0",
"hotelCenterId": "1234",
"hotelCheckInDayOfWeek": "TUESDAY",
"hotelDateSelectionType": "USER_SELECTED",
"hotelLengthOfStay": "4",
"partnerHotelId": "123",
"clickType": "HOTEL_PRICE"
}
},
{
"campaign": {
"resourceName": "customers/1234567890/campaigns/23456789"
},
"metrics": {
"clicks": "1",
"conversions": "0.0",
"costMicros": "0",
"impressions": "1",
"allConversionsValue": "0.0"
},
"hotelPerformanceView": {
"resourceName": "customers/1234567890/hotelPerformanceView"
},
"segments": {
"device": "DESKTOP",
"hotelBookingWindowDays": "0",
"hotelCenterId": "1234",
"hotelCheckInDayOfWeek": "TUESDAY",
"hotelDateSelectionType": "USER_SELECTED",
"hotelLengthOfStay": "4",
"partnerHotelId": "12345",
"clickType": "HOTEL_PRICE"
}
}
]
}
Informe de rendimiento de las tarifas condicionales
La siguiente consulta obtiene las métricas de rendimiento segmentadas por lo siguiente:
campaignhotel_center_idhotel_countryhotel_rate_rule_idhotel_rate_typedevicepartner_hotel_id
Consulta HotelRateType para obtener una descripción de los tipos.
Se pueden incluir varios segmentos en una consulta. Sin embargo, la cantidad de filas que se muestran puede aumentar significativamente con segmentos adicionales.
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
Los resultados de la búsqueda son similares a la siguiente respuesta JSON:
{
"results": [
{
"campaign": {
"resourceName": "customers/1234567890/campaigns/23456789",
"id": "23456789"
},
"metrics": {
"clicks": "1",
"conversions": "0.0",
"costMicros": "0",
"impressions": "24",
"searchAbsoluteTopImpressionShare": "0.0999",
"searchTopImpressionShare": "0.17073170731707318"
},
"hotelPerformanceView": {
"resourceName": "customers/1234567890/hotelPerformanceView"
},
"segments": {
"device": "TABLET",
"hotelCenterId": "1234",
"partnerHotelId": "123",
"hotelRateRuleId": "desktop",
"hotelRateType": "PUBLIC_RATE"
}
},
{
"campaign": {
"resourceName": "customers/1234567890/campaigns/23456789",
"id": "23456789"
},
"metrics": {
"clicks": "107",
"conversions": "0.0",
"costMicros": "0",
"impressions": "1668",
"searchAbsoluteTopImpressionShare": "0.0999",
"searchTopImpressionShare": "0.3581201665675193"
},
"hotelPerformanceView": {
"resourceName": "customers/1234567890/hotelPerformanceView"
},
"segments": {
"device": "TABLET",
"hotelCenterId": "1234",
"partnerHotelId": "1235",
"hotelRateRuleId": "desktop",
"hotelRateType": "PUBLIC_RATE"
}
}
]
}
Informe de competitividad de los precios
Puedes obtener estadísticas sobre cómo se comparan tus precios con los de la competencia en los mismos itinerarios de hoteles.
Consulta de ejemplo:
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
Ejemplo de respuesta JSON:
{
"results": [
{
"metrics": {
"hotelAverageLeadValueMicros": "96416341.829268292",
"hotelPriceDifferencePercentage": "-0.014627310872986811"
},
"hotelPerformanceView": {
"resourceName": "customers/1234567890/hotelPerformanceView"
},
"segments": {
"hotelCenterId": "1234",
"partnerHotelId": "123",
"hotelPriceBucket": "LOWEST_TIED"
}
}
]
}
Informe de precio promedio reservado
Puedes obtener los datos necesarios para calcular el precio promedio reservado (all_conversions_value dividido por conversions) de los hoteles.
Consulta de ejemplo:
SELECT
segments.hotel_center_id,
segments.partner_hotel_id,
segments.hotel_price_bucket,
metrics.all_conversions_value,
metrics.conversions
FROM hotel_performance_view
Ejemplo de respuesta JSON:
{
"results": [
{
"metrics": {
"allConversionsValue": "123.5",
"conversions": "1"
},
"hotelPerformanceView": {
"resourceName": "customers/1234567890/hotelPerformanceView"
},
"segments": {
"hotelCenterId": "1234",
"partnerHotelId": "123",
"hotelPriceBucket": "LOWEST_TIED"
}
}
]
}
Informe de rendimiento de las conversiones y los costos
La siguiente consulta obtiene el rendimiento general de las conversiones y los costos de tus anuncios de hoteles, lo que resulta útil para evaluar el rendimiento financiero y el ROAS.
Consulta de ejemplo:
SELECT
segments.date,
segments.partner_hotel_id,
metrics.all_conversions_value,
metrics.cost_micros,
metrics.conversions
FROM hotel_performance_view
WHERE segments.date DURING LAST_30_DAYS
Ejemplo de respuesta JSON:
{
"results": [
{
"metrics": {
"allConversionsValue": "250.0",
"costMicros": "15000000",
"conversions": "2.0"
},
"hotelPerformanceView": {
"resourceName": "customers/1234567890/hotelPerformanceView"
},
"segments": {
"date": "2026-03-24",
"partnerHotelId": "123"
}
}
]
}
Informes de público
Los informes de público muestran el rendimiento de los multiplicadores de ofertas en las listas de público de Google Ads. Para ver ejemplos de informes de público, consulta las consultas de ejemplo en Vista del público del grupo de anuncios y Vista del público de la campaña.