Objetivos del ciclo de vida

Usa los recursos CustomerLifecycleGoal y CampaignLifecycleGoal de la API de Google Ads para configurar objetivos relacionados con el ciclo de vida del cliente. La API de Google Ads admite los objetivos de adquisición de clientes para adquirir clientes nuevos de manera eficiente a través de tus campañas de Búsqueda y de máximo rendimiento de Google Ads.

Si tu cuenta de Google Ads utiliza el seguimiento de conversiones de múltiples cuentas, debes configurar los objetivos de ciclo de vida del cliente en la cuenta de conversiones de Google Ads en lugar de hacerlo directamente en tu cuenta de Google Ads. Sin embargo, debes establecer objetivos de ciclo de vida de la campaña en tu cuenta. Esto es similar a la forma en que administras otros objetivos cuando utilizas el seguimiento de conversiones de múltiples cuentas.

Configura los objetivos de ciclo de vida del cliente

A nivel del cliente, configura un objetivo de ciclo de vida creando o actualizando un objeto CustomerLifecycleGoal. Puede haber, como máximo, un CustomerLifecycleGoal por cuenta de Google Ads. El campo customer_acquisition_goal_value_settings.value define el ajuste de valor adicional que se agregará a la conversión de la primera compra de un cliente nuevo. El objeto customer_acquisition_goal_value_settings.high_lifetime_value define el valor de conversión incremental para los clientes nuevos que son valiosos. El valor de ciclo de vida alto debe ser mayor que el valor, si se establece.

Segmenta tus públicos

Debes usar el recurso UserListCustomerType para segmentar tus públicos en función de los objetivos del ciclo de vida del cliente. Debes asociar cada lista de usuarios con una o más categorías creando un objeto UserListCustomerType para cada combinación de lista de usuarios y categoría.

Usa UserListCustomerTypeService para crear instancias de UserListCustomerType. Si ya completaste el campo CustomerLifecycleGoal.lifecycle_goal_customer_definition_settings.existing_user_lists, tu cuenta ya contendrá instancias de UserListCustomerType relacionadas.

El objeto UserListCustomerTypeService solo admite operaciones create y remove, por lo que, si quieres actualizar un objeto UserListCustomerType existente, debes quitarlo y, luego, crear uno nuevo con las actualizaciones necesarias.

Un objeto UserListCustomerType solo se puede asignar a una lista de usuarios, pero una lista de usuarios puede tener varias instancias de UserListCustomerType asociadas siempre que no haya conflictos entre las instancias de UserListCustomerType. Si intentas asignar instancias de UserListCustomerType con las siguientes combinaciones de customer_type_category a la misma lista de usuarios, se producirá un error de UserListCustomerTypeError.CONFLICTING_CUSTOMER_TYPES:

Primeros customer_type_category Segundo customer_type_category
COMPRADORES CONVERTED_LEADS
COMPRADORES QUALIFIED_LEADS
COMPRADORES CART_ABANDONERS
CONVERTED_LEADS QUALIFIED_LEADS
DISENGAGED_CUSTOMERS CONVERTED_LEADS
DISENGAGED_CUSTOMERS QUALIFIED_LEADS
DISENGAGED_CUSTOMERS CART_ABANDONERS

Configura los objetivos de ciclo de vida de la campaña

A nivel de la campaña, configura un objetivo de ciclo de vida creando o actualizando un CampaignLifecycleGoal. Puede haber, como máximo, un CampaignLifecycleGoal por campaña.

El campo customer_acquisition_goal_settings de un objetivo a nivel de la campaña te permite establecer el modo de optimización de la campaña y anular la configuración de valores del objetivo del cliente principal.

optimization_mode puede tener uno de los siguientes valores:

TARGET_ALL_EQUALLY
La campaña segmenta a los clientes nuevos y existentes por igual. Este es el modo de optimización predeterminado.
BID_HIGHER_FOR_NEW_CUSTOMERS
La campaña se segmenta para clientes nuevos y existentes, pero establece ofertas más altas para los clientes que se prevé que son nuevos y no se encuentran en uno de los existing_user_lists.
TARGET_NEW_CUSTOMERS
La campaña solo se segmenta para clientes nuevos.

Los value_settings son los mismos que los customer_acquisition_goal_value_settings en el objetivo a nivel del cliente. Utiliza esta configuración a nivel de la campaña para anular los valores de una campaña específica.

Objetivos de retención

Los objetivos de retención están diseñados para aumentar la lealtad de los clientes y el valor del ciclo de vida del cliente (LTV) en tu empresa. Ofrecen varios modos en las campañas de máximo rendimiento, lo que te permite segmentar tus anuncios para llegar a segmentos específicos de clientes existentes.

Antes de crear un objetivo de retención, debes cumplir con los requisitos previos que se describen en Acerca del objetivo de retención. Esto incluye tener una campaña de máximo rendimiento y una lista de usuarios de Segmentación por clientes.

Para crear un objetivo de retención, primero debes inicializar GoalService y enviar una solicitud con el método mutate_goals para crear un objetivo nuevo.

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]
    )

Esta acción creará un nuevo objetivo de retención a nivel de la cuenta para la cuenta del cliente especificada, que se aplicará a todas sus campañas. De forma predeterminada, este objetivo se segmentará para todos los usuarios de tus listas de usuarios de la Segmentación por clientes.

Es posible anular este objetivo con la configuración a nivel de la campaña, utilizando un CampaignGoalConfig. Una vez que tengas un objetivo a nivel de la cuenta, usa su resource_name para crear un CampaignGoalConfig con el método mutate_campaign_goal_configs en 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 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]
    )

Si no se establece, el valor predeterminado de campaign_retention_settings.target_option será TARGET_ALL. La opción para establecer TARGET_SPECIFIC solo está disponible para los usuarios incluidos en la lista de entidades permitidas.

Recupera los objetivos de ciclo de vida

Al igual que con otros recursos de la API de Google Ads, usa los métodos search o searchStream de GoogleAdsService para recuperar los objetivos de ciclo de vida.

La siguiente consulta recupera los detalles de cada CustomerLifecycleGoal en una cuenta de Google Ads:

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

Del mismo modo, la siguiente consulta recupera los detalles de cada 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