Componentes opcionales de las campañas de máximo rendimiento

Objetivos de conversión

Cuando creas una campaña de máximo rendimiento, se crea automáticamente una serie de objetivos de conversión que coinciden con los CustomerConversionGoal de la cuenta. Puedes personalizarlas específicamente para cada una de tus campañas de máximo rendimiento actualizando las campañas.

Para ello, primero debes recuperar una lista de todos los objetivos de conversión de los clientes.

const searchResults = AdsApp.search(
  `SELECT
     customer_conversion_goal.category,
     customer_conversion_goal.origin
   FROM customer_conversion_goal`
);

Luego, puedes iterar todos los objetivos de conversión que obtuviste y crear una operación de actualización para nuestra campaña de máximo rendimiento actual para personalizar la segmentación de cada objetivo. El siguiente código los establece todos como aptos para oferta, pero le recomendamos que personalice esa parte de la lógica para que coincida con lo que desea obtener de su campaña.

Antes de ejecutar este código, debes recuperar el ID de tu campaña de máximo rendimiento.

Te recomendamos configurar los objetivos de conversión en una transacción independiente del resto del proceso de creación de la campaña. CampaignConversionGoalOperation requiere que partialFailure para la solicitud se configure como false. Si deseas ejecutar este código en la misma transacción en la que creaste la campaña por primera vez, debes configurar todo el conjunto de operaciones para que se desactiven las fallas parciales. Este código de ejemplo muestra cómo realizar esta operación en una transacción independiente.

operations = [];
while (searchResults.hasNext()) {
  const row = searchResults.next();
  const conversionGoal = row.customerConversionGoal;

  operations.push({
    "campaignConversionGoalOperation": {
      "update": {
        "resourceName": `customers/${customerId}/campaignConversionGoals/${campaignId}~${conversionGoal.category}~${conversionGoal.origin}`,
        // Insert your logic here to determine whether you want this particular
        // campaign conversion goal to be biddable or not.
        // This code will just default everything to being biddable, but that
        // is not necessarily best for your use case.
        "biddable": true
      },
      "updateMask": "biddable"
    }
  });
}

AdsApp.mutateAll(operations, {partialFailure: false});

Orientación de campaña

Para la segmentación de campañas en campañas de máximo rendimiento, asegúrate de consultar la guía de la API para obtener una lista completa de los tipos de criterios permitidos.

No se requieren criterios adicionales para crear una campaña de máximo rendimiento, pero pueden ser útiles para ayudar a restringir la segmentación según tu caso de uso. En el siguiente ejemplo de código, se muestra cómo configurar una segmentación geográfica. Puedes consultar la documentación de CampaignCriterion sobre el formato para otros tipos de criterios.

Puedes crear estos criterios junto con la campaña en sí como parte de la misma llamada a mutateAll, y en este ejemplo de código, se supone que estructuras el código de esa forma.

operations.push({
  "campaignCriterionOperation": {
    "create": {
      "campaign": campaignOperation.campaignOperation.create.resourceName,
      "negative": false,
      "location": {
        // 1023191 represents New York City
        "geoTargetConstant": "geoTargetConstants/1023191"
      }
    }
  }
});

Indicadores de grupos de recursos

Antes de comenzar, lee sobre los indicadores de grupos de recursos en la documentación de la API. Para ello, se vincula un grupo de recursos a un criterio de AudienceInfo o SearchThemeInfo existente. Si deseas usar un público, especifica el campo audience en lugar del campo searchTheme con el nombre del recurso del público.

operations.push({
  "assetGroupSignalOperation": {
    "create": {
      "assetGroup": assetGroupOperation.assetGroupOperation.create.resourceName,
      "searchTheme": {
        "text": "mars cruise"
      }
    }
  }
});