生命週期目標

使用 Google Ads API 的 CustomerLifecycleGoalCampaignLifecycleGoal 資源,設定與顧客生命週期相關的目標。Google Ads API 支援獲客目標,可透過 Google Ads 搜尋和最高成效廣告活動,有效招攬新顧客。

如果 Google Ads 帳戶使用跨帳戶轉換追蹤,您就必須在Google Ads 轉換帳戶中設定顧客生命週期目標,而不是直接在 Google Ads 帳戶中設定。不過,您仍應在帳戶中設定廣告活動生命週期目標。這與使用跨帳戶轉換追蹤時管理其他目標的方式類似。

設定顧客生命週期目標

在客戶層級,建立或更新 CustomerLifecycleGoal,即可設定生命週期目標。每個 Google Ads 帳戶最多只能有一個CustomerLifecycleGoal。「customer_acquisition_goal_value_settings.value」欄位會定義要加到新顧客首次購物轉換的額外價值調整項。customer_acquisition_goal_value_settings.high_lifetime_value 定義高價值新客的轉換價值增量。如果已設定,高生命週期價值應大於價值。

區隔目標對象

您必須使用 UserListCustomerType 資源,根據顧客生命週期目標區隔目標對象。您必須為每個使用者名單和類別的組合建立 UserListCustomerType,將每個使用者名單與一或多個類別建立關聯。

使用 UserListCustomerTypeService 建立 UserListCustomerType 例項。如果您先前已填寫「CustomerLifecycleGoal.lifecycle_goal_customer_definition_settings.existing_user_lists」欄位,帳戶中就會包含相關的「UserListCustomerType」執行個體。

UserListCustomerTypeService 僅支援 createremove 作業,因此如要更新現有 UserListCustomerType,必須先移除,然後建立新的 UserListCustomerType 並進行必要更新。

UserListCustomerType只能指派給一個使用者名單,但只要UserListCustomerType執行個體之間沒有衝突,一個使用者名單可以有多個相關聯的 UserListCustomerType 執行個體。如果嘗試將下列UserListCustomerType執行個體組合customer_type_category指派給相同的使用者清單,會導致UserListCustomerTypeError.CONFLICTING_CUSTOMER_TYPES錯誤:

發布後的前 customer_type_category 第二個 customer_type_category
購買者 CONVERTED_LEADS
購買者 QUALIFIED_LEADS
購買者 CART_ABANDONERS
CONVERTED_LEADS QUALIFIED_LEADS
DISENGAGED_CUSTOMERS CONVERTED_LEADS
DISENGAGED_CUSTOMERS QUALIFIED_LEADS
DISENGAGED_CUSTOMERS CART_ABANDONERS

設定廣告活動生命週期目標

在廣告活動層級,建立或更新CampaignLifecycleGoal,即可設定生命週期目標。每個廣告活動最多只能有一個 CampaignLifecycleGoal

廣告活動層級目標的 customer_acquisition_goal_settings 欄位可讓您設定廣告活動的最佳化模式,以及覆寫上層廣告主目標的值設定。

optimization_mode 可以是下列其中一個值:

TARGET_ALL_EQUALLY
廣告活動會對新客和現有顧客設定相同出價。這是預設的最佳化模式。
BID_HIGHER_FOR_NEW_CUSTOMERS
廣告活動會同時向新顧客和現有顧客放送,但對預計為新客且不在existing_user_lists中的顧客,出價會較高。
TARGET_NEW_CUSTOMERS
廣告活動只會鎖定新顧客。

value_settings 與客戶層級目標的 customer_acquisition_goal_value_settings 相同。使用這些廣告活動層級設定,即可覆寫特定廣告活動的值。

留存率目標

客戶留存率目標旨在提升商家顧客忠誠度和高生命週期價值 (LTV)。這項目標在最高成效廣告活動中提供多種模式,讓您指定現有顧客的特定區隔。

建立留存率目標前,請先滿足「關於留存率目標」一文所述的先決條件。包括最高成效廣告活動和目標顧客比對使用者名單。

如要建立留存率目標,您必須先初始化 GoalService,然後使用 mutate_goals 方法發出要求,建立新目標。

def create_goal(client: GoogleAdsClient, customer_id: str) -> None:
    """Sends an API request to add a new Goal.

    Args:
        client: an initialized GoogleAdsClient instance.
        customer_id: a client customer ID.
    """
    goal_operation: GoalOperation = client.get_type("GoalOperation")
    goal = goal_operation.create
    goal.retention_goal_settings.value_settings.additional_value = 50.0
    goal.retention_goal_settings.value_settings.additional_high_lifetime_value = 100.0

    goal_service = client.get_service("GoalService")
    goal_service.mutate_goals(
      customer_id=customer_id, operations=[goal_operation]
    )

系統會為指定的客戶帳戶建立新的帳戶層級保留目標,並套用至該帳戶的所有廣告活動。根據預設,這項目標會指定目標顧客比對使用者名單中的所有使用者。

您可以使用CampaignGoalConfig,透過廣告活動層級設定覆寫這項目標。取得帳戶層級目標後,請使用其 resource_name,透過 CampaignGoalConfigService 上的 mutate_campaign_goal_configs 方法建立 CampaignGoalConfig

def create_campaign_goal_config(
  client: GoogleAdsClient,
  customer_id: str,
  goal_resource_name: str,
  campaign_resource_name: str
) -> None:
    """Sends an API request to add a new CampaignGoalConfig.

    Args:
        client: an initialized GoogleAdsClient instance.
        customer_id: a client customer ID.
        goal_resource_name: the resource name of an existing Goal.
        campaign_resource_name: the resource name of an existing Campaign.
    """
    operation: CampaignGoalConfigOperation = client.get_type("CampaignGoalConfigOperation")
    goal_config = operation.create
    goal_config.campaign = campaign_resource_name
    goal_config.goal = goal_resource_name

    # Note that the target_option will be set to TARGET_ALL by default. In order
    # to set it to TARGET_SPECIFIC your account must be allowlisted.
    #
    # goal_config.campaign_retention_settings.target_option = (
    #   client.enums.CustomerLifecycleOptimizationModeEnum.TARGET_SPECIFIC
    # )

    campaign_goal_config_service = client.get_service("CampaignGoalConfigService")
    campaign_goal_config_service.mutate_campaign_goal_configs(
      customer_id=customer_id, operations=[operation]
    )

如果未設定, campaign_retention_settings.target_option 會預設為 TARGET_ALL。只有已加入許可清單的使用者,才能將設定設為 TARGET_SPECIFIC

擷取生命週期目標

與 Google Ads API 中的其他資源一樣,請使用 searchsearchStream 方法的 GoogleAdsService 擷取生命週期目標。

下列查詢會擷取 Google Ads 帳戶中每個 CustomerLifecycleGoal 的詳細資料:

SELECT
  customer_lifecycle_goal.owner_customer,
  customer_lifecycle_goal.customer_acquisition_goal_value_settings.value,
  customer_lifecycle_goal.customer_acquisition_goal_value_settings.high_lifetime_value
FROM customer_lifecycle_goal

同樣地,下列查詢會擷取每個 CampaignLifecycleGoal 的詳細資料:

SELECT
  campaign_lifecycle_goal.campaign,
  campaign_lifecycle_goal.customer_acquisition_goal_settings.optimization_mode,
  campaign_lifecycle_goal.customer_acquisition_goal_settings.value_settings.value,
  campaign_lifecycle_goal.customer_acquisition_goal_settings.value_settings.high_lifetime_value
FROM campaign_lifecycle_goal