[Conversion goals](https://support.google.com/google-ads/answer/10995103) help you organize your conversion
actions so that you can optimize toward your advertising objectives.

Conversion goals are grouped by the unique combinations of
[`category`](https://developers.google.com/google-ads/api/reference/rpc/v26/ConversionAction#category) (for example, `PAGE_VIEW`), and [`origin`](https://developers.google.com/google-ads/api/reference/rpc/v26/ConversionAction#origin)
(for example, `WEBSITE`) in the set of [`ConversionActions`](https://developers.google.com/google-ads/api/reference/rpc/v26/ConversionAction)
in your account's [Google Ads conversion customer](https://developers.google.com/google-ads/api/docs/conversions/getting-started#enable_conversion_tracking).

> [!IMPORTANT]
> **Important:** In the Google Ads UI goal management tabs, the `origin` attribute is labeled **Conversion source** . The Google Ads API uses the term `origin` to differentiate between this attribute and the **Source** field in the UI **Conversion actions** tab.

> [!IMPORTANT]
> **Important:** You can only set the [`selective_optimization`](https://developers.google.com/google-ads/api/reference/rpc/v26/Campaign#selective_optimization) field of `Campaign` on an [App campaign](https://developers.google.com/google-ads/api/docs/app-campaigns/overview). For all other campaign types, use [campaign goals](https://developers.google.com/google-ads/api/docs/conversions/goals/campaign-goals) to optimize a campaign for specific conversion actions.

## Goal management overview

Conversion goals are organized in a hierarchy. Customer goals define the
[default goals](https://support.google.com/google-ads/answer/10995103#account_default) for your entire account, while campaign
goals override the customer goals for campaigns with specific bidding and
optimization requirements.

| Goal Type | Scope | How It's Created | Primary Purpose |
|---|---|---|---|
| `CustomerConversionGoal` | Account-level | System-generated automatically | Sets default bidding goals for the entire account by category and origin. |
| `CampaignConversionGoal` | Campaign-level | System-generated automatically | Overrides account defaults for specific campaigns. |
| `CustomConversionGoal` | Account / Campaign | Manually using `MutateCustomConversionGoals` | Groups custom sets of conversion actions across categories for specialized campaign targeting. |

The goal management workflow is as follows:

1. Create a `ConversionAction`.

   When you create the conversion action, Google Ads automatically performs the
   following steps:
   - Creates a [`CustomerConversionGoal`](https://developers.google.com/google-ads/api/reference/rpc/v26/CustomerConversionGoal) for the conversion action's `category` and `origin` if one doesn't already exist.
   - Creates a [`CampaignConversionGoal`](https://developers.google.com/google-ads/api/reference/rpc/v26/CampaignConversionGoal) for each campaign and the conversion action's `category` and `origin` if one doesn't already exist.
   - Configures the `biddable` attribute of the `CustomerConversionGoal` and `CampaignConversionGoal` objects according to various rules covered later in this guide series.

   > [!NOTE]
   > **Note:** Your account already has `CustomerConversionGoal` and `CampaignConversionGoal` objects for your existing conversion actions.

2. Update the `CustomerConversionGoal` objects that Google Ads created automatically
   to align with your objectives. Set `biddable` to `true` to bid and optimize
   towards `ConversionActions` with the goal's `category` and `origin`, and
   `false` otherwise. Google Ads automatically applies these updates to every
   campaign where you hadn't explicitly updated campaign goals or applied
   custom goals.

3. If you have a campaign with unique goals that differ from your customer-level
   goals, configure its `CampaignConversionGoal` using one or both of the
   following steps.

   - Use `update` operations to modify the `biddable` attribute of any
     `CampaignConversionGoal` objects where the goal should differ from the
     customer-level goals.

   - If configuring the campaign's goals by `category` and `origin` doesn't
     suffice, use specific conversion actions for bidding and optimization by
     creating a [`CustomConversionGoal`](https://developers.google.com/google-ads/api/reference/rpc/v26/CustomConversionGoal) and updating
     the campaign's [`ConversionGoalCampaignConfig`](https://developers.google.com/google-ads/api/reference/rpc/v26/ConversionGoalCampaignConfig).

   As a result of the `update` operations, Google Ads ensures that the
   [`goal_config_level`](https://developers.google.com/google-ads/api/reference/rpc/v26/ConversionGoalCampaignConfig#goal_config_level) of the campaign's
   `ConversionGoalCampaignConfig` is set to [`CAMPAIGN`](https://developers.google.com/google-ads/api/reference/rpc/v26/GoalConfigLevelEnum.GoalConfigLevel#campaign) and
   stops applying `CustomerConversionGoal` updates to the campaign's
   `CampaignConversionGoal` objects.

   If you want to transition the campaign back to using customer-level goals,
   set `goal_config_level` to [`CUSTOMER`](https://developers.google.com/google-ads/api/reference/rpc/v26/GoalConfigLevelEnum.GoalConfigLevel#customer). Google Ads modifies its
   `CampaignConversionGoal` to match `CustomerConversionGoal` and as long as
   `goal_config_level` remains set to `CUSTOMER`, applies any changes to
   `CustomerConversionGoal` to the campaign's `CampaignConversionGoal`. The
   campaign in turn stops using any `CustomConversionGoals`.

   > [!IMPORTANT]
   > **Key Point:** System-generated goal objects ([`CustomerConversionGoal`](https://developers.google.com/google-ads/api/reference/rpc/v26/CustomerConversionGoal), [`CampaignConversionGoal`](https://developers.google.com/google-ads/api/reference/rpc/v26/CampaignConversionGoal), and [`ConversionGoalCampaignConfig`](https://developers.google.com/google-ads/api/reference/rpc/v26/ConversionGoalCampaignConfig)) are automatically managed by Google Ads and only support *update* operations; you cannot create or remove those objects. However, you can explicitly create and remove [`CustomConversionGoal`](https://developers.google.com/google-ads/api/reference/rpc/v26/CustomConversionGoal) objects using `MutateCustomConversionGoals`.

## Mutate requirements

When mutating a `CustomerConversionGoal` or `CustomConversionGoal` object,
the `customer_id` of the request must match the ID of your account's
[Google Ads conversion customer account](https://developers.google.com/google-ads/api/docs/conversions/getting-started#enable_conversion_tracking).

In contrast, when mutating a `CampaignConversionGoal` or
`ConversionGoalCampaignConfig` object, the `customer_id` of the request must
match the `customer_id` of your Google Ads account's `Customer` resource.

## Conversion action settings

Although goals are organized by `category` and `origin`, you can set the
[`primary_for_goal`](https://developers.google.com/google-ads/api/reference/rpc/v26/ConversionAction#primary_for_goal) attribute of each `ConversionAction` to
indicate the role it should play in bidding and how the action's conversions
will [appear in reports](https://support.google.com/google-ads/answer/11461796).

If `primary_for_goal` is `true`:

- Google Ads includes the conversion action in bidding based on the `biddable` attribute of customer and campaign goals for the conversion action's `category` and `origin`.
- Google Ads includes the conversion action's conversions and conversion values in [**Conversions**](https://developers.google.com/google-ads/api/fields/v26/campaign#metrics.conversions) and [**All conversions**](https://developers.google.com/google-ads/api/fields/v26/campaign#metrics.all_conversions).

If `primary_for_goal` is `false`:

- Google Ads doesn't include the conversion action in bidding or **Conversions**
  unless you use the conversion action in a `CustomConversionGoal`. You can
  still find the conversion action's conversions and conversion values in
  [**All conv.**](https://developers.google.com/google-ads/api/fields/v26/campaign#metrics.all_conversions) and its related fields in reports.

  See the [campaign goals guide](https://developers.google.com/google-ads/api/docs/conversions/goals/campaign-goals#custom_goals) for more information about
  custom conversion goals.

Conversion actions with `primary_for_goal` set to `true` appear in the Google Ads UI
as **Primary action used for bidding optimization** , otherwise they appear as
**Secondary action not used for bidding optimization**.

> [!IMPORTANT]
> **Important:** The [`include_in_conversions_metric`](https://developers.google.com/google-ads/api/reference/rpc/v26/ConversionAction#include_in_conversions_metric) attribute of `ConversionAction` is deprecated. When managing your conversion actions, set the `primary_for_goal` attribute instead, and transition any of your reporting or application logic that relies on `include_in_conversions_metric` to use `primary_for_goal`.