Yaşam döngüsü hedefleri

Müşteri yaşam döngüsüyle ilgili hedefleri yapılandırmak için Google Ads API'nin Goal ve CampaignGoalConfig kaynaklarını kullanın. Google Ads API, Google Ads kampanyalarınız aracılığıyla müşteri yaşam döngüsü değeri ayarlamalarını verimli bir şekilde yönetmek için müşteri edinme hedeflerini ve elde tutma hedeflerini destekler.

Google Ads hesabınızda hesaplar arası dönüşüm izleme kullanılıyorsa müşteri düzeyindeki yaşam döngüsü hedeflerini doğrudan Google Ads hesabınızda değil, Google Ads dönüşüm hesabında yapılandırmanız gerekir. Ancak yine de hesabınızda kampanya düzeyinde yapılandırmalar ayarlamanız gerekir. Bu, hesaplar arası dönüşüm izleme özelliğini kullanırken diğer hedefleri yönetme şeklinize benzer.

Müşteri yaşam döngüsü hedefi türleri

Müşteri yaşam döngüsü hedefleri, Goal kaynağı kullanılarak hesap düzeyinde yapılandırılır. Hedef, belirli bir yaşam döngüsü amacını temsil eder ve goal_type ile tanımlanır.

Desteklenen yaşam döngüsü hedefi türleri şunlardır:

NEW_CUSTOMER_ACQUISITION
Dönüşümlerine değer ayarlamaları atayarak yeni müşterileri verimli bir şekilde edinmek için.
CUSTOMER_RETENTION
Mevcut, yüksek değere sahip ve etkin olmayan müşterilerle yeniden etkileşim kurmak için.
LOYALTY_RETENTION
Özellikle bağlılık programı üyeleri arasında elde tutma ve etkileşimi artırmak için.

Müşteri yaşam döngüsü hedeflerini yapılandırma

Müşteri düzeyinde, Goal oluşturarak bir yaşam döngüsü hedefi yapılandırın. Bir Google Ads hesabında hedef türü başına (NEW_CUSTOMER_ACQUISITION, CUSTOMER_RETENTION veya LOYALTY_RETENTION) en fazla bir Goal olabilir.

Yeni müşteri edinme hedefi ayarları

Yeni müşteri edinmeyi (NCA) ayarlamak için goal_type değerini NEW_CUSTOMER_ACQUISITION olarak ayarlayın ve new_customer_acquisition_goal_settings alanındaki ayarları GoalService kullanarak yapılandırın.

new_customer_acquisition_goal_settings.value_settings alanı, edinilen müşteriler için dönüşüm değeri ayarlamalarını belirtmek üzere CustomerLifecycleOptimizationValueSettings kullanır:

  • value_settings (CustomerLifecycleOptimizationValueSettings):
    • value_adjustment (oneof):
      • additional_value (çift): Yeni bir müşterinin ilk satın alma dönüşümüne eklenecek artımlı dönüşüm değeri.
      • value_multiplier (çift): Yeni müşterinin ilk satın alma işleminde dönüşüm değerine uygulanacak çarpan (NEW_CUSTOMER_ACQUISITION için desteklenmez; LOYALTY_RETENTION için desteklenir).
    • high_lifetime_value_adjustment (oneof):
      • additional_high_lifetime_value (çift): Yüksek yaşam boyu değere sahip olarak tanımlanan yeni müşteriler için artımlı dönüşüm değeri.
      • high_lifetime_value_multiplier (çift): Yaşam boyu değeri yüksek olan yeni müşteriler için uygulanacak dönüşüm değeri çarpanı (henüz desteklenmemektedir).

Yüksek yaşam boyu değeri, değerden büyük olmalıdır. Yüksek yaşam boyu değer çarpanı, ayarlanmışsa değer çarpanından kesinlikle büyük olmalıdır.

def create_nca_goal(client: GoogleAdsClient, customer_id: str) -> None:
    """Sends an API request to add a new New Customer Acquisition 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.goal_type = client.enums.GoalTypeEnum.NEW_CUSTOMER_ACQUISITION

    # Configure the value adjustments.
    value_settings = goal.new_customer_acquisition_goal_settings.value_settings
    value_settings.additional_value = 50.0
    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]
    )

Müşteriyi elde tutma hedefi ayarları

Müşteriyi elde tutma ayarını yapmak için goal_type seçeneğini CUSTOMER_RETENTION olarak ayarlayın ve retention_goal_settings alanındaki ayarları yapılandırın.

Elde tutma hedefi oluşturmadan önce Elde tutma hedefi hakkında başlıklı makalede açıklanan ön koşulları karşılamanız gerekir. Buna, Maksimum Performans kampanyası ve Müşteri Eşleştirme kullanıcı listesi de dahildir.

def create_retention_goal(client: GoogleAdsClient, customer_id: str) -> None:
    """Sends an API request to add a new Customer Retention 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.goal_type = client.enums.GoalTypeEnum.CUSTOMER_RETENTION
    value_settings = goal.retention_goal_settings.value_settings
    value_settings.additional_value = 50.0
    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]
    )

Bu işlem, belirtilen müşteri hesabı için hesap düzeyinde yeni bir elde tutma hedefi oluşturur. Bu hedef, müşteri hesabının tüm kampanyalarına uygulanır. Bu hedef, varsayılan olarak Müşteri Eşleştirme kullanıcı listelerinizdeki tüm kullanıcıları hedefler.

Bağlılık elde tutma hedefi ayarları

Bağlılık programı üyeleri için bağlılık elde tutma hedefleri belirlemek üzere goal_type değerini LOYALTY_RETENTION olarak ayarlayın ve loyalty_retention_goal_settings alanındaki ayarları yapılandırın (LoyaltyRetentionGoal).

NEW_CUSTOMER_ACQUISITION ve CUSTOMER_RETENTION hedeflerinin (toplama değer ayarlamalarını kullanan) aksine, LOYALTY_RETENTION hedefleri value_settings'de CustomerLifecycleOptimizationValueSettings kullanılarak value_multiplier ayarını destekler:

def create_loyalty_retention_goal(
    client: GoogleAdsClient, customer_id: str
) -> None:
    """Sends an API request to add a new Loyalty Retention 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.goal_type = client.enums.GoalTypeEnum.LOYALTY_RETENTION
    goal.loyalty_retention_goal_settings.value_settings.value_multiplier = 1.5

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

Kitlelerinizi segmentlere ayırma

Müşteri yaşam döngüsü hedefleri (yeni müşteri edinme, müşteri elde tutma ve bağlılık elde tutma hedefleri dahil) için kitlelerinizi segmentlere ayırmak üzere UserListCustomerType kaynağını kullanmanız gerekir. Her kullanıcı listesini bir veya daha fazla kategoriyle ilişkilendirmek için kullanıcı listesi ve kategori kombinasyonlarının her biri için bir UserListCustomerType oluşturmanız gerekir.

UserListCustomerTypeService kullanarak UserListCustomerType örnekleri oluşturun.

UserListCustomerTypeService yalnızca create ve remove işlemlerini destekler. Bu nedenle, mevcut bir UserListCustomerType öğesini güncellemek istiyorsanız bu öğeyi kaldırıp gerekli güncellemeleri içeren yeni bir öğe oluşturmanız gerekir.

Bir UserListCustomerType yalnızca bir kullanıcı listesine atanabilir ancak kullanıcı listesinde, UserListCustomerType örnekleri arasında çakışma olmadığı sürece birden fazla ilişkili UserListCustomerType örneği olabilir. Aşağıdaki customer_type_category kombinasyonlarıyla UserListCustomerType örneklerini aynı kullanıcı listesine atamaya çalışmak UserListCustomerTypeError.CONFLICTING_CUSTOMER_TYPES hatasıyla sonuçlanır:

İlk customer_type_category İkinci customer_type_category
PURCHASERS CONVERTED_LEADS
PURCHASERS QUALIFIED_LEADS
PURCHASERS 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

Kampanya yaşam döngüsü hedefi yapılandırmalarını ayarlama

Kampanya düzeyinde, CampaignGoalConfig kullanarak kampanyaya özel geçersiz kılma işlemleri veya hedefleme seçenekleri yapılandırabilirsiniz. Hesap düzeyinde bir hedefiniz olduğunda, CampaignGoalConfigService üzerinde mutate_campaign_goal_configs yöntemini kullanarak resource_name oluşturmak için bu hedefin CampaignGoalConfig değerini kullanın.

Kampanya yeni müşteri edinme ayarları

Kampanya düzeyinde ayarları geçersiz kılmak veya NCA için hedeflemeyi yapılandırmak üzere, CampaignNewCustomerAcquisitionGoalSettings türündeki campaign_new_customer_acquisition_settings alanını yapılandırın:

  • value_settings_override (Tür: CustomerLifecycleOptimizationValueSettings): Hesap düzeyindeki ayarları geçersiz kılacak özel değer düzenlemeleri.
  • target_option (Tür: CustomerLifecycleOptimizationMode): Müşteri yaşam döngüsü optimizasyon modunu kontrol eder. Seçenekler şunlardır:
    • TARGET_ALL: Kampanya hem yeni hem de mevcut müşterileri hedefler ancak yapılandırılan değer ayarlamalarını kullanarak yeni müşteriler için daha yüksek teklifler verir.
    • TARGET_SPECIFIC: Kampanya yalnızca yeni müşterileri hedefler. Bu seçenek için teklif ayarlamaları geçerli değildir.
def create_campaign_nca_config(
    client: GoogleAdsClient,
    customer_id: str,
    goal_resource_name: str,
    campaign_resource_name: str,
) -> None:
    """Sends an API request to add a new CampaignGoalConfig for NCA.

    Args:
        client: an initialized GoogleAdsClient instance.
        customer_id: a client customer ID.
        goal_resource_name: the resource name of an existing NCA 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

    # Set the target option to target both new and existing customers.
    nca_settings = goal_config.campaign_new_customer_acquisition_settings
    nca_settings.target_option = (
        client.enums.CustomerLifecycleOptimizationModeEnum.TARGET_ALL
    )
    # Optionally override value settings.
    nca_settings.value_settings_override.additional_value = 60.0

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

Kampanya müşteri bağlılığı ayarları

Ayarları geçersiz kılmak veya elde tutma hedefleri için hedeflemeyi kampanya düzeyinde yapılandırmak üzere CampaignRetentionGoalSettings türündeki campaign_retention_settings alanını yapılandırın:

  • value_settings_override (Tür: CustomerLifecycleOptimizationValueSettings): Hesap düzeyindeki ayarları geçersiz kılacak özel değer düzenlemeleri.
  • target_option (Tür: CustomerLifecycleOptimizationMode): Optimizasyon modunu kontrol eder. Varsayılan olarak TARGET_ALL değerine ayarlanır. Bu özelliği TARGET_SPECIFIC olarak ayarlamak için hesabınızın uygun izin verilenler listesinde olması gerekir.
def create_campaign_retention_config(
    client: GoogleAdsClient,
    customer_id: str,
    goal_resource_name: str,
    campaign_resource_name: str,
) -> None:
    """Sends an API request to add a new CampaignGoalConfig for Retention.

    Args:
        client: an initialized GoogleAdsClient instance.
        customer_id: a client customer ID.
        goal_resource_name: the resource name of an existing Retention 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

    goal_config.campaign_retention_settings.target_option = (
        client.enums.CustomerLifecycleOptimizationModeEnum.TARGET_ALL
    )
    # Accounts on the allowlist can set TARGET_SPECIFIC instead:
    # 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 ayarlanmamışsa varsayılan olarak TARGET_ALL olur. TARGET_SPECIFIC seçeneği yalnızca uygun izin verilenler listesindeki kullanıcılar tarafından kullanılabilir.

Kampanya bağlılığıyla müşteriyi elde tutma ayarları

LOYALTY_RETENTION hedefleri için ayarları geçersiz kılmak veya kampanyaya özel davranışları kampanya düzeyinde yapılandırmak üzere CampaignGoalConfig üzerinde CampaignLoyaltyRetentionGoalSettings türündeki campaign_loyalty_retention_settings alanını yapılandırın:

  • value_settings_override (Tür: CustomerLifecycleOptimizationValueSettings): Hesap düzeyindeki bağlılık programı müşteriyi elde tutma değeri ayarlarını geçersiz kılacak özel değer düzenlemeleri.
  • enable_bid_adjustments_for_loyalty_members (Tür: bool): Bu kampanyada bağlılık programı üyeleri için teklif ayarlamalarının etkinleştirilip etkinleştirilmeyeceği.
  • show_targeted_loyalty_member_benefits_in_pla (Tür: bool): Uygun ülkelerde, ürün listeleme reklamı (ÜLR) biçiminde hedeflenen bağlılık programı üyesi avantajlarının gösterilip gösterilmeyeceği.
def create_campaign_loyalty_retention_config(
    client: GoogleAdsClient,
    customer_id: str,
    goal_resource_name: str,
    campaign_resource_name: str,
) -> None:
    """Sends an API request to add a new CampaignGoalConfig for Loyalty.

    Args:
        client: an initialized GoogleAdsClient instance.
        customer_id: a client customer ID.
        goal_resource_name: the resource name of an existing Loyalty 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

    # Enable bid adjustments and targeted loyalty benefits in PLAs.
    loyalty_settings = goal_config.campaign_loyalty_retention_settings
    loyalty_settings.enable_bid_adjustments_for_loyalty_members = True
    loyalty_settings.show_targeted_loyalty_member_benefits_in_pla = True

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

Doğrulama ve hatalar

Müşteri yaşam döngüsü hedefleri yapılandırılırken aşağıdaki kısıtlamalar ve hatalarla karşılaşılabilir:

Hedef doğrulama hataları

Yinelenen hedef yapılandırması
Halihazırda bir yaşam döngüsü hedefi varken aynı hedeften bir tane daha oluşturmak GoalError.NEW_CUSTOMER_ACQUISITION_GOAL_ALREADY_EXISTS (yeni müşteri edinme için), GoalError.RETENTION_GOAL_ALREADY_EXISTS (elde tutma hedefleri için) veya GoalError.LOYALTY_RETENTION_GOAL_ALREADY_EXISTS (bağlılık elde tutma hedefleri için) hatasına neden olur.
Geçersiz değer ayarları
Yaşam döngüsü hedefi değer ayarlarını yapılandırırken yüksek yaşam boyu değeri varsa standart değer de olmalıdır (GoalError.HIGH_LIFETIME_VALUE_PRESENT_BUT_VALUE_ABSENT). Yüksek yaşam boyu değeri, ayarlanmışsa değerden büyük olmalıdır (GoalError.HIGH_LIFETIME_VALUE_LESS_THAN_OR_EQUAL_TO_VALUE).
Benzer şekilde, çarpımsal değer ayarlarında yüksek yaşam boyu değeri çarpanı varsa değer çarpanı da olmalıdır (GoalError.HIGH_LIFETIME_VALUE_MULTIPLIER_PRESENT_BUT_VALUE_MULTIPLIER_ABSENT). Yüksek yaşam boyu değeri çarpanı, değer çarpanından kesinlikle büyük olmalıdır (GoalError.HIGH_LIFETIME_VALUE_MULTIPLIER_LESS_THAN_OR_EQUAL_TO_VALUE_MULTIPLIER).

Kampanya hedefi yapılandırması doğrulama hataları

Belirli hedef değer geçersiz kılma çakışması
Yeni müşteri edinme hedefleri için target_option, TARGET_SPECIFIC olarak ayarlanırsa (yalnızca yeni müşterileri hedeflemek için) kampanya düzeyinde değer geçersiz kılmaları yapılandırılmamalıdır (CampaignGoalConfigError.CAMPAIGN_OVERRIDE_VALUES_SET_FOR_NEW_CUSTOMER_ACQUISITION_TARGET_SPECIFIC_OPTION).
Geçersiz değer ayarları geçersiz kılma
Kampanya düzeyinde yaşam döngüsü değeri ayarı geçersiz kılmaları yapılandırılırken yüksek yaşam boyu değeri varsa standart değer de olmalıdır (CampaignGoalConfigError.HIGH_LIFETIME_VALUE_PRESENT_BUT_VALUE_ABSENT) ve yüksek yaşam boyu değeri, ayarlanmışsa değerden büyük olmalıdır (CampaignGoalConfigError.HIGH_LIFETIME_VALUE_LESS_THAN_OR_EQUAL_TO_VALUE). Benzer şekilde, çarpımsal değer ayarlarında yüksek yaşam boyu değeri çarpanı varsa değer çarpanı da olmalıdır (CampaignGoalConfigError.HIGH_LIFETIME_VALUE_MULTIPLIER_PRESENT_BUT_VALUE_MULTIPLIER_ABSENT) ve yüksek yaşam boyu değeri çarpanı, değer çarpanından kesinlikle büyük olmalıdır (CampaignGoalConfigError.HIGH_LIFETIME_VALUE_MULTIPLIER_LESS_THAN_OR_EQUAL_TO_VALUE_MULTIPLIER).
Yüksek yaşam boyu değere sahip kampanya türü desteği
Yüksek yaşam boyu değeri geçersiz kılmaları ve yüksek yaşam boyu değeri çarpanı geçersiz kılmaları yalnızca desteklenen kampanya türleri (CampaignGoalConfigError.CAMPAIGN_OVERRIDE_HIGH_LIFETIME_VALUE_NOT_SUPPORTED_FOR_CAMPAIGN_TYPE veya CampaignGoalConfigError.CAMPAIGN_OVERRIDE_HIGH_LIFETIME_VALUE_MULTIPLIER_NOT_SUPPORTED_FOR_CAMPAIGN_TYPE) için ayarlanmalıdır.
Uyumsuz hedefler
Bir kampanya, uyumsuz müşteri yaşam döngüsü optimizasyonu hedeflerini aynı anda uygulamaya çalışırsa hata verilir (CampaignGoalConfigError.CANNOT_USE_INCOMPATIBLE_CLO_GOALS). Aşağıdaki tabloda, bu hatayı tetikleyen karşılıklı olarak hariç tutulan hedef kombinasyonları özetlenmektedir:
Müşteri yaşam döngüsü hedefi türü / modu Uyumsuz Hedef / Mod
Müşteriyi elde tutma ("Yalnızca etkin olmayan müşteriler için teklif ver" / TARGET_SPECIFIC) Yeni müşteri edinme ("Yalnızca yeni müşteriler için teklif verin" / TARGET_SPECIFIC, "Yeni müşteriler için daha yüksek teklif verin" / TARGET_ALL), potansiyel müşterilere ulaşma
Müşteriyi elde tutma ("Etkin olmayan müşteriler için daha yüksek teklif ver" / TARGET_ALL) Yeni müşteri edinme ("Yalnızca yeni müşteriler için teklif verin" / TARGET_SPECIFIC), potansiyel müşteriler
Bağlılık ile elde tutma (değer çarpanı) Yeni müşteri edinme ("Yalnızca yeni müşteriler için teklif ver" / TARGET_SPECIFIC), müşteri elde tutma ("Yalnızca etkin olmayan müşteriler için teklif ver" / TARGET_SPECIFIC), potansiyel müşteriler, brüt kâr
Bağlılık programı üyesi tutma (PLA'daki avantajlar) Yeni müşteri edinme ("Yalnızca yeni müşteriler için teklif verin" / TARGET_SPECIFIC), potansiyel müşteriler, brüt kâr
Potansiyel müşteri geliştirme Yeni müşteri edinme ("Yalnızca yeni müşteriler için teklif verin" / TARGET_SPECIFIC, "Yeni müşteriler için daha yüksek teklif verin" / TARGET_ALL)

Yaşam döngüsü hedeflerini alma

Google Ads API'deki diğer kaynaklarda olduğu gibi, yaşam döngüsü hedeflerini ve yapılandırmalarını almak için GoogleAdsService yöntemlerinin search veya searchStream yöntemlerini kullanın.

Aşağıdaki sorgu, bir Google Ads API hesabında yapılandırılmış her Goal öğesinin ayrıntılarını alır:

SELECT
  goal.goal_id,
  goal.goal_type,
  goal.owner_customer,
  goal.new_customer_acquisition_goal_settings.value_settings.additional_value,
  goal.new_customer_acquisition_goal_settings.value_settings.additional_high_lifetime_value,
  goal.retention_goal_settings.value_settings.additional_value,
  goal.retention_goal_settings.value_settings.additional_high_lifetime_value,
  goal.loyalty_retention_goal_settings.value_settings.value_multiplier
FROM goal

Benzer şekilde, aşağıdaki sorgu her bir CampaignGoalConfig ayrıntısını alır:

SELECT
  campaign_goal_config.campaign,
  campaign_goal_config.goal,
  campaign_goal_config.goal_type,
  campaign_goal_config.campaign_new_customer_acquisition_settings.target_option,
  campaign_goal_config.campaign_new_customer_acquisition_settings.value_settings_override.additional_value,
  campaign_goal_config.campaign_new_customer_acquisition_settings.value_settings_override.additional_high_lifetime_value,
  campaign_goal_config.campaign_retention_settings.target_option,
  campaign_goal_config.campaign_retention_settings.value_settings_override.additional_value,
  campaign_goal_config.campaign_loyalty_retention_settings.value_settings_override.value_multiplier,
  campaign_goal_config.campaign_loyalty_retention_settings.enable_bid_adjustments_for_loyalty_members,
  campaign_goal_config.campaign_loyalty_retention_settings.show_targeted_loyalty_member_benefits_in_pla
FROM campaign_goal_config