Ad Customizers

Ad customizers adapt your expanded text ads to the full context of a search or the webpage someone's viewing. They can insert a keyword, the time left before a sale ends, and any other text that you define. For example, a line of text that says "Hurry, sale ends in xxxx days!" could be filled in with the right number of days.


  • Reporting: The automatic updates that happen when an ad is triggered don't reset the ad's performance data.
  • Time-sensitive calls to action: The COUNTDOWN function can say that time's running out to take advantage of a promotion.
  • Tailored messaging: Ad customizers let you customize your ads for each query without having to create a separate ad for each variation. These parameterized ads can be much more relevant to what people search for:

    Flowers For Sale Red Roses For Sale Tulips For Sale Sunflowers For Sale
    Generic ad Customized ad

Using ad customizers, you can insert text, prices, numbers, and countdowns into the headline and description lines of your ads. Customizers can be targeted to specific campaigns, ad groups, or keywords, so different keywords can trigger different customizations, as seen above. Each ad customizer also records statistics, letting you compare performance across variations in your ad.

How it works

Ad customizer data sources

Ad customizers are grouped into sources, with each source containing multiple items. Each source has a name and specifies which attributes each item has. You can think of each source as a table, with the attributes being the column headers and the items being the rows, as in the Google Ads UI:

When setting up an ad customizer source, you have to specify its attributes as well as what type of data each attribute has. The available data types are:

  • text: Arbitrary text content
  • price: Prices, represented as text
  • number: Integers
  • date: Dates and times in your account's time zone. In scripts, these are represented as a string in the form "yyyyMMdd HHmmss". For instance, 9 AM on October 30, 2022 would be represented as "20221030 090000".

Attributes can have any name, but an attribute named "Custom ID" is treated as a "key" into the data source, and the system will make sure that each item added to an ad customizer source has a unique Custom ID value.

Ad customizer items

The ad customizer items inside each data source specify the actual values that are substituted into your ads. Each customizer keeps track of statistics, so you can see which variations on your ads achieve the best performance.

Individual items can also be targeted at the campaign, ad group, or keyword levels. Targeting at the keyword level is useful to tailor your ad to the specific things that users are searching for, while targeting at higher levels lets you easily create variations of your ads that apply to a wider range of searches.

In addition, each item can also set a device preference (all devices vs. mobile only) and scheduling (start date, end date, and times of day to show).

Parameterized ads

Once you have your ad customizer data source set up, you have to create ads that refer to it. Substitutions can be made in the ads' headlines and description lines using placeholders of the form {=SourceName.AttributeName}. For instance, the ad in the above example was set up as:

{} For Sale} / Fresh cut {=Flowers.name_lowercase} / starting at {=Flowers.price}

In addition to substituting values from your ad customizer data, you can also use the COUNTDOWN function to insert a countdown to a specific date. This date can come from your data source (for instance, sale ends in {=COUNTDOWN(Flowers.sale_date)}), or it can be specified in the ad text itself (for instance, sale ends in {=COUNTDOWN("2022/10/30 09:00:00")}). For more information about the COUNTDOWN function, see the help center article and the Google Ads API.