CustomerLifecycleGoal 및
CampaignLifecycleGoal 리소스를 사용하여
Google Ads API의 고객 라이프사이클과 관련된 목표를 구성합니다. Google Ads API는 Google Ads 검색, 쇼핑, 실적
최대화 캠페인을 통해 신규 고객을 효율적으로
확보하기 위한 고객 확보
목표를 지원합니다.
Google Ads 계정에서 교차 계정 전환 추적을 사용하는 경우 Google Ads 계정에서 직접 구성하는 대신 Google Ads 전환 계정 에서 고객 라이프사이클 목표를 구성해야 합니다. 하지만 계정에서 캠페인 라이프사이클 목표를 설정해야 합니다. 이는 교차 계정 전환 추적을 사용할 때 다른 목표를 관리하는 방식과 유사합니다.
고객 라이프사이클 목표 구성
고객 수준에서
CustomerLifecycleGoal을 만들거나 업데이트하여 라이프사이클 목표를 구성합니다. Google Ads 계정당 CustomerLifecycleGoal은 최대 1개까지 있을 수 있습니다. 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는 create 및 remove
작업만 지원하므로 기존 UserListCustomerType을 업데이트하려면
삭제한 후 필요한 업데이트를 적용하여 새 UserListCustomerType을 만들어야 합니다.
UserListCustomerType은 하나의 사용자 목록에만 할당할 수 있지만 사용자 목록에는 UserListCustomerType 인스턴스 간에 충돌이 없는 한 여러 개의 연결된 UserListCustomerType 인스턴스가 있을 수 있습니다. 다음
customer_type_category 조합으로 UserListCustomerType 인스턴스를 동일한 사용자 목록
에 할당하려고 하면 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 |
| LOYALTY_TIER_X_MEMBERS | LOYALTY_TIER_Y_MEMBERS |
캠페인 라이프사이클 목표 구성
캠페인 수준에서 고객 확보 목표 설정을 구성할 수 있습니다.
CampaignLifecycleGoal 고객 확보를 위한 캠페인당 CampaignLifecycleGoal은 최대 1개까지 있을 수 있습니다.
이탈 고객 확보 목표와 같은 다른 목표 유형은 별도로 구성됩니다.
캠페인 수준 목표의 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`를 사용하여 캠페인 수준 설정으로 이 목표를 재정의할 수 있습니다.CampaignGoalConfig 계정 수준 목표가 있으면 resource_name을 사용하여 CampaignGoalConfig
mutate_campaign_goal_configs
메서드를 통해
CampaignGoalConfigService을 만듭니다.
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 on the appropriate
# allowlist.
#
# 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의 다른 리소스와 마찬가지로 search 또는 searchStream
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