The Google Ads API supports targeting and exclusion options at the customer, campaign,
and ad group levels. Depending on the criterion type and campaign architecture,
you can use the Google Ads API to:

- Target or exclude audiences, locations, placements, and demographics at the campaign or ad group level using [`CampaignCriterion`](https://developers.google.com/google-ads/api/reference/rpc/v26/CampaignCriterion) and [`AdGroupCriterion`](https://developers.google.com/google-ads/api/reference/rpc/v26/AdGroupCriterion).
- Set absolute bids for specific criteria at the ad group level.
- Adjust bids proportionally for specific criteria at the campaign or ad group level using [bid modifiers](https://developers.google.com/google-ads/api/docs/targeting/bid-modifiers).
- Apply account-wide negative criteria at the customer level using [`CustomerNegativeCriterion`](https://developers.google.com/google-ads/api/reference/rpc/v26/CustomerNegativeCriterion).
- Share reusable negative keyword, placement, brand, webpage, vertical ads item group rule, or retail filter (v24 and later) lists across campaigns, ad groups, and accounts using [shared sets](https://developers.google.com/google-ads/api/docs/targeting/shared-sets).

## Targeting capabilities overview

The following table summarizes the main targeting features available in the
Google Ads API:

| Feature | Primary resources | Typical use case |
|---|---|---|
| [Criteria](https://developers.google.com/google-ads/api/docs/targeting/criteria) | `CampaignCriterion`, `AdGroupCriterion`, `CustomerNegativeCriterion` | Positively target or exclude keywords, audiences, demographics, placements, vertical ads item group rule lists, retail filter bundles (v24 and later), and travel entity bids (v25 and later). |
| [Bid modifiers](https://developers.google.com/google-ads/api/docs/targeting/bid-modifiers) | `CampaignBidModifier`, `AdGroupBidModifier` | Scale bids up or down for devices, call interactions, or hotel ads dimensions without restricting reach. |
| [Location targeting](https://developers.google.com/google-ads/api/docs/targeting/location-targeting) | `LocationInfo`, `ProximityInfo`, `LocationGroupInfo` | Target or exclude geographic regions, radiuses around coordinates, or location assets. |
| [Targeting settings](https://developers.google.com/google-ads/api/docs/targeting/targeting-settings) | `TargetingSetting`, `TargetRestriction` | Configure whether criteria restrict reach (**Targeting** ) or only collect data and allow bid adjustments (**Observation**). |
| [Shared sets](https://developers.google.com/google-ads/api/docs/targeting/shared-sets) | `SharedSet`, `SharedCriterion`, `CampaignSharedSet` | Maintain a central list of negative keywords, placements, brands, webpages, vertical ads item group rules, or retail filters (v24 and later) across multiple campaigns, ad groups, or accounts. |

## What's next

- [Criteria guide](https://developers.google.com/google-ads/api/docs/targeting/criteria): Explore all supported positive and negative criterion types by hierarchy level.
- [Bid modifiers guide](https://developers.google.com/google-ads/api/docs/targeting/bid-modifiers): Adjust bids based on device, interaction type, and other criteria.
- [Location targeting guide](https://developers.google.com/google-ads/api/docs/targeting/location-targeting): Configure regional, proximity, and presence-based geo-targeting.
- [Targeting settings guide](https://developers.google.com/google-ads/api/docs/targeting/targeting-settings): Switch criteria dimensions between Targeting (`bid_only = false`) and Observation (`bid_only = true`).
- [Shared sets guide](https://developers.google.com/google-ads/api/docs/targeting/shared-sets): Share negative keyword and placement lists across campaigns and client accounts.