業種別広告では、ホテルなどの業種別フィードにリンクされている検索キャンペーン向け AI 最大化設定が有効な検索キャンペーンに、特別な機能が提供されます。広告グループ単位で配信する業種別広告フォーマットを管理できます。また、業種別広告のアイテム グループ ルールを使用して、ターゲットとするフィード エンティティを管理できます。
概要
このガイドでは、業種別広告の管理に関する 2 つの主な機能について説明します。
- フォーマットの管理: 広告グループ単位で、特定の広告フォーマット(テキスト広告、予約リンク、業種別プロモーション広告)の有効 / 無効を切り替えます。
- 業種別広告アイテムの管理:
SharedSetとSharedCriterionを使用するルールベースのシステムを使用して、リンクされた業種別(以前の旅行)フィードから特定の広告枠をフィルタしてターゲットに設定します。
前提条件
これらの機能を実装する前に、キャンペーンが次の要件を満たしていることを確認してください。
- キャンペーン タイプ: 検索キャンペーンである必要があります。
- 業種別フィード: 有効な業種別データフィードは、顧客レベルまたはキャンペーン レベルでリンクされている必要があります。キャンペーン単位でフィードをリンクするには、キャンペーン単位で業種別データフィードをリンクするを参照してください。業種別データフィードをリンクすると、検索広告の旅行フィード(TFSA)が有効になり、キャンペーンの業種別広告のコントロールが有効になります。
- 検索キャンペーン向け AI 最大化設定: キャンペーンで検索キャンペーン向け AI 最大化設定を有効にする必要があります。
キャンペーン単位で業種別データフィードをリンクする
検索広告の旅行フィード(TFSA)を有効にして、キャンペーン内で業種別広告のコントロールを有効にするには、次の手順でキャンペーン単位で業種別データフィードのアセット セットをリンクします。または、アカウント内のすべてのキャンペーンでこれらの機能を有効にするには、検索広告の旅行フィード ガイドの顧客レベルのリンク手順に沿って、顧客レベルでフィードをリンクします。
CampaignAssetSetオブジェクトを作成し、asset_setを垂直フィード アセット セットのリソース名に、campaignをキャンペーンのリソース名に設定します。createがCampaignAssetSetに設定されたCampaignAssetSetOperationを作成します。CampaignAssetSetService.MutateCampaignAssetSetsを使用してオペレーションを送信します。
旅行フィードを大規模に管理する方法について詳しくは、検索広告の旅行フィードのドキュメントをご覧ください。
広告グループのフォーマット管理
特定の広告グループで有効にする縦型広告フォーマットを設定できます。これは、AdGroup リソースの vertical_ads_format_setting(VerticalAdsFormatSetting)フィールドで管理されます。
利用可能なフォーマット
- テキスト広告(
disable_text_ads): デフォルトで有効になっています。無効にできます。 - 予約リンク(
enable_booking_links): オプトインが必要です。 - 縦向きのプロモーション広告(
enable_vertical_promotion_ads): オプトインが必要です。
検証規則
- 1 つの広告グループで 3 つのフォーマットすべてを同時にオプトアウトすることはできません。
- これらの設定は、
SEARCH_STANDARDとSEARCH_DYNAMIC_ADSの広告グループ タイプにのみ適用されます。
例: 形式設定を更新する
次の Java の例は、既存の広告グループでテキスト広告を無効にして、業種別プロモーション広告を有効にする方法を示しています。
// Assuming 'adGroup' is an existing AdGroup object.
// Example resource name: "customers/{customer_id}/adGroups/{ad_group_id}"
AdGroup adGroupToUpdate = AdGroup.newBuilder()
.setResourceName(adGroup.getResourceName())
.setVerticalAdsFormatSetting(
VerticalAdsFormatSetting.newBuilder()
.setDisableTextAds(true)
.setEnableBookingLinks(false)
.setEnableVerticalPromotionAds(true)
)
.build();
AdGroupOperation operation = AdGroupOperation.newBuilder()
.setUpdate(adGroupToUpdate)
.setUpdateMask(FieldMasks.allSetFieldsOf(adGroupToUpdate))
.build();
// Submit the operation using AdGroupService...
縦長広告アイテムの管理
「ボストンのホテル」や「1 つ星のホテルを除外」など、フィードの在庫の特定のサブセットをターゲットに設定するには、業種別広告の商品アイテム グループ ルールを使用する必要があります。
データモデルの仕組み
データモデルでは、共有条件アプローチを使用します。
SharedSet: タイプVERTICAL_ADS_ITEM_GROUP_RULE_LISTのSharedSetを作成します。SharedCriterion: このセットにルール(条件)を追加します。各ルールでは、市区町村やホテルのクラスなどのディメンションと値を指定します。除外条件を作成してアイテムを除外することもできます。AdGroupCriterion:AdGroupCriterion(vertical_ads_item_group_rule_list)を使用して、SharedSetをAdGroupにリンクします。
サポートされているディメンション
SharedCriterion(VerticalAdsItemGroupRuleInfo)では、次のディメンションに基づいてエンティティをフィルタできます。
item_code: 特定のリスティング ID。city_criterion_id、region_criterion_id、country_criterion_id: 地域ターゲティング定数リソース名(geoTargetConstants/{id})。hotel_class: 星評価(1 ~ 5)。user_rating、venue、event_participant_display_name(v24以降): イベントと縦型リスティングの評価、会場、参加者名のフィルタ。
コード例: ルールを作成してリンクする
次の Python の例では、「Boston」または「San Francisco」のアイテムを含め、「1-star」と「2-star」のホテルを除外するルールを作成します。
# 1. Create the SharedSet
shared_set_operation = client.get_type("SharedSetOperation")
shared_set = shared_set_operation.create
shared_set.name = "Boston/SF Premium Hotels"
shared_set.type_ = (
client.enums.SharedSetTypeEnum.VERTICAL_ADS_ITEM_GROUP_RULE_LIST
)
shared_set.vertical_ads_item_vertical_type = (
client.enums.VerticalAdsItemVerticalTypeEnum.HOTELS
)
shared_set_service = client.get_service("SharedSetService")
shared_set_response = shared_set_service.mutate_shared_sets(
customer_id=customer_id, operations=[shared_set_operation]
)
shared_set_resource_name = shared_set_response.results[0].resource_name
# 2. Add Criteria (Rules) to the SharedSet
shared_criteria_operations = []
# Rule A: Include Boston and SF
geo_target_constant_service = client.get_service("GeoTargetConstantService")
included_city_ids = [1006543, 1014221] # Geo Target Constant IDs
for city_id in included_city_ids:
op = client.get_type("SharedCriterionOperation")
criterion = op.create
criterion.shared_set = shared_set_resource_name
criterion.vertical_ads_item_group_rule.city_criterion_id = (
geo_target_constant_service.geo_target_constant_path(city_id)
)
shared_criteria_operations.append(op)
# Rule B: Exclude 1 and 2 Star Hotels
excluded_stars = [1, 2]
for star_rating in excluded_stars:
op = client.get_type("SharedCriterionOperation")
criterion = op.create
criterion.shared_set = shared_set_resource_name
criterion.vertical_ads_item_group_rule.hotel_class = star_rating
criterion.negative = True # Mark as exclusion
shared_criteria_operations.append(op)
# Submit SharedCriterionOperations...
# 3. Link to AdGroup
ad_group_service = client.get_service("AdGroupService")
ad_group_resource_name = ad_group_service.ad_group_path(
customer_id, ad_group_id
)
agc_operation = client.get_type("AdGroupCriterionOperation")
agc = agc_operation.create
agc.ad_group = ad_group_resource_name
agc.status = client.enums.AdGroupCriterionStatusEnum.ENABLED
agc.vertical_ads_item_group_rule_list.shared_set = shared_set_resource_name
# Submit AdGroupCriterionOperation...
パフォーマンス レポート
バーティカル広告のパフォーマンス指標は、GoogleAdsService.SearchStream メソッドまたは GoogleAdsService.Search メソッドを使用して取得できます。
縦長広告セグメント
segments.vertical_ads_hotel_class: ホテル リスティングのクラス評価を指定する整数値(1 ~ 5 つ星)。segments.vertical_ads_listing: 特定の業種別広告リスティングの識別子。segments.vertical_ads_listing_brand: 縦型広告リスティングに関連付けられているブランド。segments.vertical_ads_listing_city: リスティングに関連付けられている都市。segments.vertical_ads_listing_country: リスティングに関連付けられている国。segments.vertical_ads_listing_region: リスティングに関連付けられているリージョン。segments.vertical_ads_partner_account: インベントリ フィードデータを提供するパートナー センター(Hotel Center など)内のパートナー アカウント。segments.vertical_ads_vertical: 業種(ホテル、レンタカーなど)。segments.vertical_ads_event_participant_display_names(v24以降): パフォーマー、スピーカー、チームなど、イベント リスティングの参加者の表示名。segments.vertical_ads_listing_user_rating(v24以降): 垂直広告リスティングのユーザー評価を指定する整数値(1 ~ 5)。segments.vertical_ads_listing_venue(v24以降): 業種別広告リスティングの会場名(コンサート会場など)。segments.vertical_ads_price_tier(v25以降): ホテル リスティングの相対的な価格競争力のバケット。segments.vertical_ads_rate_rule_id(v25以降): 入札またはインプレッションに適用されるプライベートまたは条件付きのレートルールに対応する文字列 ID。segments.vertical_ads_rate_type(v25以降): 一般公開、限定公開、限定価格のレートタイプの分類。
宿泊プラン ディメンション セグメント
v25 以降、旅行と宿泊施設のフィードにリンクされた業種別広告では、旅程ディメンションを使用してパフォーマンス レポートを分割できます。
segments.advance_booking_window: 旅程の事前予約期間(日数)。segments.length_of_booking: 宿泊プランの予約期間(日数)。segments.start_date: 予約の開始日(yyyy-MM-dd形式)。segments.start_day_of_week: 予約の開始曜日。segments.user_set_dates: ユーザーが指定した日付が選択されたかどうかを示します(USER_SELECTEDまたはDEFAULT_SELECTION)。
縦長広告の指標
v25 以降、次の業種別広告の指標を取得できます。
metrics.vertical_ads_potential_impressions: クエリ コンテキスト全体で利用可能なビュー上限付きの対象インプレッションの合計数を表す潜在的なインプレッション数。metrics.vertical_ads_average_booking_value_micros: 滞在日数全体のクリック加重平均日額(税金と手数料を含む、マイクロ単位)。metrics.vertical_ads_price_difference_percentage: 同じプロパティの競合他社の最低価格と広告主の提示価格を比較したパーセンテージの差。
GAQL クエリの例
SELECT
campaign.id,
ad_group.id,
segments.vertical_ads_listing_city,
segments.advance_booking_window,
segments.length_of_booking,
segments.start_date,
metrics.impressions,
metrics.vertical_ads_potential_impressions,
metrics.clicks,
metrics.all_conversions_value,
metrics.vertical_ads_average_booking_value_micros,
metrics.vertical_ads_price_difference_percentage
FROM
ad_group
WHERE
segments.date DURING LAST_30_DAYS
エラー処理
縦型広告の設定時に発生する可能性のある一般的なエラーは次のとおりです。
| エラーコード | 原因 | 推奨される対処方法 |
|---|---|---|
AdGroupError.INVALID_VERTICAL_ADS_FORMAT_SETTING |
3 つの広告フォーマット(テキスト広告、予約リンク広告、プロモーション広告)がすべて同時に無効になりました。 | VerticalAdsFormatSetting で少なくとも 1 つの形式が有効になっていることを確認します。 |
AdGroupError.VERTICAL_ADS_FORMAT_SETTING_NOT_SUPPORTED_FOR_CAMPAIGNS_WITHOUT_AI_MAX |
キャンペーンで検索キャンペーン向け AI 最大化設定が有効になっていない。 | キャンペーン設定で検索キャンペーン向け AI 最大化設定を有効にします。 |
AdGroupError.VERTICAL_ADS_FORMAT_SETTING_NOT_SUPPORTED_FOR_CAMPAIGNS_WITHOUT_ENABLED_TRAVEL_FEED |
キャンペーンに有効な業種別データフィードがありません。 | 有効な業種別フィードがお客様単位またはキャンペーン単位でリンクされていることを確認します。 |
CriterionError.VERTICAL_ADS_ITEM_GROUP_RULE_LIST_DOES_NOT_EXIST |
AdGroupCriterion で指定された SharedSet リソース名が存在しません。 |
shared_set リソース名が作成されたセットと一致することを確認します。 |
CriterionError.VERTICAL_ADS_ITEM_GROUP_RULE_NOT_SUPPORTED_FOR_THE_VERTICAL_TYPE |
使用された条件ディメンションが、特定の業種(レンタカーのホテル クラスなど)でサポートされていない。 | vertical_ads_item_group_rule ディメンションが業種と一致していることを確認します。 |