レポート

動画: 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_viewhotel_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 広告のインプレッションに対して入札した予約額の割合
コミッション費用

status == RECONCILED または CANCELED の場合、これは 値は metrics.hotel_commission_rate_micros * hotel_reconciliation.reconciled_value_micros として計算できます。それ以外の場合はすべて この値は metrics.hotel_expected_commission_cost 列、または 次のように計算: metrics.hotel_commission_rate_micros * metrics.value_per_conversions_by_conversion_date

予想される宿泊費、または実際に支払った金額