動画: 2019 年ワークショップのホテル広告レポート講演を見る
Google Ads API では、必要なホテル広告レポートを取得するためのクエリを設計できます。 その後、これらのクエリをクライアント アプリケーションに組み込むことができます。
前提条件
ホテル広告の基本的なクエリ
以下のクエリ例で、ホテル向け Google Ads API の使い方をご確認ください 広告レポート。
クリック数の指標を取得する
次のサンプルクエリは、ホテルのクリック数を返します パフォーマンスビューです
SELECT metrics.clicks
FROM hotel_performance_view
クエリの結果は、次のようになります。
{
  "results": [
    {
      "metrics": {
        "clicks": "78090"
      },
      "hotelPerformanceView": {
        "resourceName": "customers/1234567890/hotelPerformanceView"
      }
    }
  ],
  "totalResultsCount": "1",
  "fieldMask": "metrics.clicks"
}
分割されたクリック数の指標を取得する
ホテルのパフォーマンス ビューを取得する次のクエリ例は、クリック数とセグメントを取得します ホテル ID 別の結果を表示します
SELECT
  segments.partner_hotel_id,
  metrics.clicks
FROM hotel_performance_view
クエリの結果は、次の JSON 文字列のようになります。
クリックは partnerHotelID で分割されるため、2 つ以上のオブジェクトが
返すことができます
{
  "results": [
    {
      "metrics": {
        "clicks": "7055"
      },
      "hotelPerformanceView": {
        "resourceName": "customers/1234567890/hotelPerformanceView"
      },
      "segments": {
        "partnerHotelId": "1111"
      }
    },
    {
      "metrics": {
        "clicks": "3047"
      },
      "hotelPerformanceView": {
        "resourceName": "customers/1234567890/hotelPerformanceView"
      },
      "segments": {
        "partnerHotelId": "1112"
      }
    },
    ...
  ]
}
広告グループの指標を取得
次のサンプルクエリでは、広告グループに対する次のインプレッションとクリック数を取得します 過去 30 日間のデータを日付別に表示しています。
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
クエリの結果は、次の JSON 文字列のようになります。
レスポンスは、WHERE 句を満たす指標のみにフィルタされます。
あります。日付フィールドには、30 日間に含まれる最後の日付が入力されます。
です。
{
  "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"
      }
    }
  ]
}
有効な広告グループの広告を取得
次のサンプルクエリは、広告グループの広告について、配信される広告グループを取得します。 広告グループを配信するには、広告グループの広告、広告グループ、キャンペーンの 3 つを すべて有効になります。
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
クエリの結果は、次の 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"
        }
      }
    }
  ]
}
ホテル広告のレポートに役立つビュー
以前のホテル広告レポート用 API では、
パフォーマンス レポートなどです。Google Ads API ではこの種のデータは
別々の *_view リソースで表される(hotel_performance_view や
hotel_group_view。このセクションでは、次の *_view リソースについて説明します。
ホテル広告のレポートに役立ちますクエリの例も示されています。
各 *_view リソースには、特定のリソース フィールド、セグメント、
できます。その前に、特定の *_view リソースのドキュメントをご覧ください。
いくつか見てみましょう
ホテルグループ ビュー
ホテルグループビューは条件 ため、指標を取得する場合や ホテルグループの特定の条件タイプを 指定することもできます
ホテルグループ ビューを取得する次のクエリ例は、 ルートノードを含むホテル リスティング グループ ツリー全体のリスティング グループ (「すべてのホテル」)。
SELECT
  metrics.clicks,
  ad_group_criterion.listing_group.case_value.hotel_id.value
FROM hotel_group_view
クエリの結果は、次の JSON 文字列のようになります。
case_value はルートノード(「All Hotels」)で定義されていないため、
最初の行が「すべてのホテル」の指標を表し、リスティング
2 行目は子リスティング グループの指標を表します。
「その他」を表します。
{
  "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"
      }
    },
  ]
}
ホテルの掲載結果ビュー
ホテルの掲載結果ビューは次のような場合に便利です。 取得されていないデータを使用して、ホテルのパフォーマンス指標を取得したい。 ホテルグループからのデータです。ホテル ID に基づく区分がある場合でも同様です。
ホテルのパフォーマンス ビューを取得する次のクエリ例は、クリック数とセグメントを取得します ホテル ID 別の結果を表示します
SELECT
  segments.partner_hotel_id,
  metrics.clicks
FROM hotel_performance_view
クエリの結果は、次の JSON 文字列のようになります。
クリックは partner_hotel_id で分割されるため、2 つ以上のオブジェクトが
同じホテルのパフォーマンス ビューに対して返されます。
{
  "results": [
    {
      "metrics": {
        "clicks": "7055"
      },
      "hotelPerformanceView": {
        "resourceName": "customers/1234567890/hotelPerformanceView"
      },
      "segments": {
        "partnerHotelId": "1111"
      }
    },
    {
      "metrics": {
        "clicks": "3047"
      },
      "hotelPerformanceView": {
        "resourceName": "customers/1234567890/hotelPerformanceView"
      },
      "segments": {
        "partnerHotelId": "1112"
      }
    },
    ...
  ]
}
広告グループのオーディエンス ビュー
広告グループのオーディエンス ビューは、次のような場合に役立ちます。 広告グループに関連付けられているオーディエンスのパフォーマンス指標を取得する場合 できます。
これはホテルにとどまらず、さまざまなタイプのキャンペーンについて一般的な見方をしたものです。
比較しますこのビューでは、次の基準で結果を分割することもできます。
hotel_date_selection_type: ホテルの日付
がユーザーによって選択されたか、Google が設定した検索のデフォルトの日付でした。条件
hotel_date_selection_typeで分割すると、ホテル キャンペーンの結果のみ
返されます。
次のクエリは、1 行につき 1 行を返します。
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
クエリの結果は、次の 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"
      }
    }
  ]
}
キャンペーンのオーディエンス ビュー
キャンペーンのオーディエンス ビューは、 キャンペーンに関連付けられているオーディエンスのパフォーマンス指標を取得する場合 できます。
これはホテルにとどまらず、さまざまなタイプのキャンペーンについて一般的な見方をしたものです。
比較しますこのビューでは、次の基準で結果を分割することもできます。
hotel_date_selection_type: ホテルの日付
がユーザーによって選択されたか、Google が設定した検索のデフォルトの日付でした。条件
hotel_date_selection_typeで分割すると、ホテル キャンペーンの結果のみ
返されます。
次のクエリは、1 行につき 1 行を返します。
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
クエリの結果は、次の 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"
      }
    }
  ]
}
ホテル広告に役立つレポート
このセクションでは、ホテル専用の便利なレポートをいくつか紹介します。 できます。
パフォーマンス レポート
これらのクエリでは、ホテルのパフォーマンス ビューを使用してパフォーマンス データを取得します。
hotel_performance_view を使用すると、campaign リソースを使用してセグメント化できます。
できます。たとえば、campaign.id フィールドを使用してパフォーマンスを取得できます。
キャンペーンごとに確認できます
パフォーマンス
クエリの例:
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
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"
      }
    }
  ]
}
クリックタイプ別のパフォーマンス
クエリの例:
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
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"
      }
    }
  ]
}
限定価格のパフォーマンス レポート
次のクエリは、パフォーマンス指標を次の基準で分割して取得します。
- campaign
- hotel_center_id
- hotel_country
- hotel_rate_rule_id
- hotel_rate_type
- device
- partner_hotel_id
詳しくは、HotelRateType をご覧ください。
タイプの説明です。
クエリには複数のセグメントを含めることができます。ただし、返された数の セグメントを追加すると、行数が大幅に増える可能性があります。
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
クエリの結果は、次の 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"
      }
    }
  ]
}
価格競争力レポート
お客様の料金と競合他社の料金を比較して、分析情報を確認できます価格は 同じホテルの旅行プランです。
クエリの例:
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
JSON レスポンスの例:
{
  "results": [
    {
      "metrics": {
        "hotelAverageLeadValueMicros": "96416341.829268292",
        "hotelPriceDifferencePercentage": "-0.014627310872986811"
      },
      "hotelPerformanceView": {
        "resourceName": "customers/123456789/hotelPerformanceView"
      },
      "segments": {
        "hotelCenterId": "1234",
        "partnerHotelId": "123",
        "hotelPriceBucket": "LOWEST_TIED"
      }
    }
  ]
}
平均予約料金レポート
平均予約料金の計算に必要なデータを取得できます
ホテルの場合(all_conversions_value ÷ conversions)。
クエリの例:
SELECT
  segments.hotel_center_id,
  segments.partner_hotel_id,
  segments.hotel_price_bucket,
  metrics.all_conversions_value,
  metrics.conversions
FROM hotel_performance_view
JSON レスポンスの例:
{
  "results": [
    {
      "metrics": {
        "allConversionsValue": "123.5",
        "conversions": "1"
      },
      "hotelPerformanceView": {
        "resourceName": "customers/123456789/hotelPerformanceView"
      },
      "segments": {
        "hotelCenterId": "1234",
        "partnerHotelId": "123",
        "hotelPriceBucket": "LOWEST_TIED"
      }
    }
  ]
}
ユーザー レポート
オーディエンス レポートでは、Google 広告オーディエンスに対する入札単価調整比のパフォーマンスを確認できます できます。オーディエンス レポートの例については、広告グループ オーディエンス ビューとキャンペーンのオーディエンス ビュー。
ホテル照合レポート
ホテル調整レポートの内容 ホテル予約のコンバージョン情報を広告主と調整するために レコード一括アップロードを使用してデータをアップロードすることで、 キャンセルされたか完了した予約の数。このレポートの主な列は次のとおりです。 次のようになります。
| UI 列 | API 列 | 説明 | 
|---|---|---|
| 予約金額 | metrics.value_per_conversions_by_conversion_date | タグによってレポートされるコンバージョン値 | 
| コンバージョンの日付 | segments.date | 予約の日付 | 
| コミッション率 | metrics.hotel_commission_rate_micros | 広告のインプレッションに対して入札した予約額の割合 | 
| コミッション費用 | 
 | 予想される宿泊費、または実際に支払った金額 |