Rapports Hotel Ads

Avec l'API Google Ads, vous pouvez concevoir des requêtes pour obtenir les rapports sur les annonces d'hôtel dont vous avez besoin. Vous pouvez ensuite intégrer ces requêtes à vos applications clientes.

Prérequis

Requêtes de base pour les annonces d'hôtel

Consultez ces exemples de requêtes pour vous familiariser avec l'utilisation de l'API Google Ads pour les rapports sur les annonces d'hôtel.

Obtenir des métriques sur les clics

L'exemple de requête suivant renvoie le nombre de clics à partir de la vue "Performances des hôtels".

SELECT metrics.clicks
FROM hotel_performance_view

Les résultats de la requête ressemblent à la réponse JSON suivante :

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

Obtenir des métriques sur les groupes d'annonces

L'exemple de requête suivant pour les groupes d'annonces obtient les impressions et les clics au cours des 30 derniers jours, segmentés par date.

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

Les résultats de la requête ressemblent à la réponse JSON suivante. La réponse est filtrée pour ne contenir que les métriques qui répondent aux conditions de la clause WHERE. Étant donné que segments.date est sélectionné, la requête renvoie une ligne par jour sur la période de 30 jours.

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

Obtenir des annonces de groupes d'annonces activées

L'exemple de requête suivant pour les annonces de groupes d'annonces obtient les groupes d'annonces qui seront diffusés. Pour qu'un groupe d'annonces soit diffusé, l'annonce du groupe d'annonces, le groupe d'annonces et la campagne doivent tous être activés.

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

Les résultats de la requête ressemblent à la réponse JSON suivante :

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

Vues utiles pour les rapports sur les annonces d'hôtel

Dans les API précédentes pour les rapports sur les annonces d'hôtel, vous pouviez récupérer un rapport spécifique, tel qu'un rapport sur les performances. Dans l'API Google Ads, ce type de données est représenté dans des ressources *_view distinctes, telles que hotel_performance_view et hotel_group_view. Cette section décrit les ressources *_view utiles pour les rapports sur les annonces d'hôtel, ainsi que des exemples de requêtes.

Vue "Groupe d'hôtels"

La vue "Groupe d'hôtels" est une vue de critères, elle est donc utile pour récupérer les métriques d'un type de critère spécifique d'un groupe d'hôtels.

L'exemple de requête suivant pour les vues de groupes d'hôtels obtient les clics pour chaque hôtel d'un groupe de fiches pour l'ensemble de l'arborescence du groupe de fiches d'hôtels, y compris le nœud racine ("Tous les hôtels").

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

Les résultats de la requête ressemblent à la réponse JSON suivante. Étant donné que case_value n'est pas défini pour le nœud racine ("Tous les hôtels"), la première ligne représente les métriques du groupe de fiches "Tous les hôtels", tandis que la deuxième ligne représente les métriques du groupe de fiches enfant représentant "Autres".

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

Vue "Performances des hôtels"

La vue "Performances des hôtels" est utile si vous souhaitez récupérer les métriques de performances d'un hôtel à l'aide de données qui ne proviennent pas d'un regroupement d'hôtels, même si vous disposez d'une subdivision basée sur l'ID d'hôtel.

L'exemple de requête suivant pour les vues de performances des hôtels obtient les clics et segmente les résultats par ID d'hôtel.

SELECT
  segments.partner_hotel_id,
  metrics.clicks
FROM hotel_performance_view

Les résultats de la requête ressemblent à la réponse JSON suivante. Les clics sont segmentés par partner_hotel_id (partnerHotelId au format JSON REST). Par conséquent, deux objets ou plus peuvent être renvoyés pour le même 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"
      }
    }
  ]
}

Vue "Audience du groupe d'annonces"

La vue "Audience du groupe d'annonces" est utile si vous souhaitez récupérer les métriques de performances des audiences associées au niveau du groupe d'annonces.

La requête suivante renvoie une ligne par 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

Les résultats de la requête ressemblent à la réponse JSON suivante :

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

Vue "Audience de la campagne"

La vue "Audience de la campagne" est utile si vous souhaitez récupérer les métriques de performances des audiences associées au niveau de la campagne.

La requête suivante renvoie une ligne par 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

Les résultats de la requête ressemblent à la réponse JSON suivante :

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

Rapports utiles pour les annonces d'hôtel

Cette section présente plusieurs rapports utiles conçus spécifiquement pour Hotel Ads.

Rapports sur les performances

Ces requêtes utilisent la vue "Performances des hôtels" pour obtenir des données sur les performances.

Un hotel_performance_view vous permet d'utiliser la ressource campaign pour segmenter les métriques. Par exemple, vous pouvez utiliser le champ campaign.id pour obtenir les métriques de performances par campagne.

Performances

Exemple de requête :

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

Exemple de réponse 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"
      }
    }
  ]
}

Performances par type de clic

Exemple de requête :

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

Exemple de réponse 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"
      }
    }
  ]
}

Rapport sur les performances des tarifs sous conditions

La requête suivante obtient les métriques de performances segmentées par :

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

Consultez HotelRateType pour obtenir une description des types.

Vous pouvez inclure plusieurs segments dans une requête. Toutefois, le nombre de lignes renvoyées peut augmenter considérablement avec des segments supplémentaires.

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

Les résultats de la requête ressemblent à la réponse JSON suivante :

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

Rapport "Compétitivité tarifaire"

Vous pouvez obtenir des insights sur la comparaison de vos tarifs avec ceux de vos concurrents pour les mêmes itinéraires d'hôtel.

Exemple de requête :

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

Exemple de réponse JSON :

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

Rapport sur le prix moyen réservé

Vous pouvez obtenir les données nécessaires pour calculer le prix moyen réservé (all_conversions_value divisé par conversions) pour les hôtels.

Exemple de requête :

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

Exemple de réponse JSON :

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

Rapport sur les performances des conversions et des coûts

La requête suivante obtient les performances globales des conversions et des coûts pour vos annonces d'hôtel, ce qui est utile pour évaluer les performances financières et le ROAS.

Exemple de requête :

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

Exemple de réponse JSON :

{
  "results": [
    {
      "metrics": {
        "allConversionsValue": "250.0",
        "costMicros": "15000000",
        "conversions": "2.0"
      },
      "hotelPerformanceView": {
        "resourceName": "customers/1234567890/hotelPerformanceView"
      },
      "segments": {
        "date": "2026-03-24",
        "partnerHotelId": "123"
      }
    }
  ]
}

Rapports "Type d'audience"

Les rapports sur l'audience indiquent les performances des multiplicateurs d'enchères dans les listes d'audiences Google Ads. Pour obtenir des exemples de rapports sur l'audience, consultez les exemples de requêtes dans les vues "Audience du groupe d'annonces" et "Audience de la campagne".