How to Use Custom Labels in Google Merchant Center

Custom labels let you group products by margin, season or sales speed, then bid and report on each group. Here's how to set them up in Merchant Center.

Prepared by the Oxford Impulse team with AI assistance
Published
8 min read

This guide is for advertisers and store owners who run Google Shopping or Performance Max and want to bid on groups of products instead of treating the whole catalogue the same. By the end you’ll be able to add custom labels in Google Merchant Center, stay inside the limits and use those labels to split a Performance Max listing group. You’ll need a working Merchant Center account with a product feed. A linked Google Ads account is also needed if you want to bid on the groups.

The short answer

Custom labels are five optional attributes, custom_label_0 to custom_label_4, that you fill with your own values (such as “high-margin” or “summer”) in your feed or through attribute rules[2][5]. Once Google Ads has picked them up, you can subdivide products by those values in a Performance Max listing group[3] and bid or report on each group[1][2].

That’s the whole mechanism. The skill is in deciding what to label, so most of this guide is about that.

What custom labels actually do

A custom label is a tag you attach to a product. It’s internal. It doesn’t appear in your ads and customers never see it[1][2]. Its only job is to let you filter products in Performance Max, Shopping or Demand Gen so you can set bids and read reports for a group[1][2].

Why bother? Because your catalogue is not uniform. A high-margin product and a thin-margin one shouldn’t need the same return on ad spend (ROAS, which is revenue divided by ad spend) to be worth advertising. Google Ads can’t see your margins or your seasons unless you tell it, and custom labels are one way to do that.

Google’s own examples of useful labels include season, selling rate (best seller, low seller), price ranges, margin (low, high) and release year[1]. Those are a good starting list.

Step 1: Decide what you want to segment by

Don’t open the feed yet. Decide first what decision you want the labels to support. A label that doesn’t change a bid, a budget or a report is just clutter.

Ask yourself which of these you’d actually act on:

  • Margin: high, medium, low. Lets you accept a lower ROAS on high-margin items and demand more from thin-margin ones.
  • Sales speed: best seller, low seller. Lets you protect budget for proven products and test the slow ones separately.
  • Season: summer, winter, autumn. Lets you switch focus as demand moves.
  • Price band: under 25, 25 to 100, over 100. Lets you treat cheap and expensive products differently.
  • Release year: useful for launches and clearance.

Trade-off to keep in mind: more labels mean more groups, and more groups mean less data in each. If a group gets only a handful of clicks a month, you won’t learn much from it. Start with two or three groups and add more only if each one still gets enough clicks to read.

Tip

Assign one dimension to each of the five slots and keep it that way. For example, custom_label_0 for margin, custom_label_1 for sales speed, custom_label_2 for season. Mixing margin values and season values in the same attribute makes reporting messy.

Step 2: Know the limits before you build

Check these limits now, because breaking them quietly breaks your segmentation:

  • There are five attributes, custom_label_0 to custom_label_4[2][5].
  • Each value must be 1 to 100 characters[1].
  • You can have up to 1,000 unique values per attribute across the account. The account total is 5,000 labels[1].
  • Values are strings and aren’t case-sensitive. ASCII characters are recommended[1].

Watch out

If you’re near the attribute limit, labels may not sync. Beyond 1,000 values, labels are ignored[1][2]. This is easy to trigger if you use a product ID or a very specific price as the label value. Use bands, not exact numbers. “25 to 50” is a usable label. “34.99” creates a new value for every price.

Also keep values consistent. Because they aren’t case-sensitive, “Summer” and “summer” are the same value, but “summer” and “summer-2” are two separate ones[1]. Pick a naming convention and write it down.

Step 3: Add custom labels to your feed

There are two ways to get labels onto products. You can write them into the feed yourself or generate them with rules (Step 4). Start with the feed route if your labels come from data you already hold, like margin in your store backend.

  1. Open your feed file or the app or plugin that produces it.
  2. Add a column or field named custom_label_0 (and custom_label_1 and so on if you need more).
  3. Fill in one value per product.
  4. Upload or fetch the feed again, then check the data source in Merchant Center for errors.

The format depends on your file type[1]:

  • TSV or CSV: add a column headed custom_label_0 and enter the plain value, such as summer.
  • XML: use <g:custom_label_0>summer</g:custom_label_0>.
  • Merchant API: also supported.

If you want to learn how feeds are structured, https://oxfordimpulse.com/beginners-guide-google-merchant-center-feed/ covers the basics.

Good to know

The attributes are optional, so you can leave them empty for products you don’t want to segment[2][5]. Enter the label as a plain value, without extra explanatory text.

A worked example

This is an illustration, not real data. Say a shop sells garden furniture and has decided on two dimensions: margin in custom_label_0 and season in custom_label_1.

  • Parasol: custom_label_0 = high-margin, custom_label_1 = summer
  • Outdoor heater: custom_label_0 = medium-margin, custom_label_1 = winter
  • Plastic planter: custom_label_0 = low-margin, custom_label_1 = all-year

Now the shop can accept a lower ROAS target for the high-margin group in summer and ask more of low-margin items when budget is tight.

Step 4: Assign labels automatically with attribute rules

If your feed can’t easily hold the values, or you’d rather not edit the source file, attribute rules can assign labels from data already in the feed, such as price ranges. Attribute rules were previously called feed rules, and they need the Advanced data source management add-on[1][4].

  1. In Merchant Center, go to Data sources.
  2. Open the Product sources tab.
  3. Select a primary source.
  4. Open the Attribute rules tab.
  5. Create a rule that fills a custom label attribute from an existing field, such as price.

Test the rule on a few products first and check the values it produces in your data source. Rules are best for logic based on data you already supply, like price bands. They can’t know your margin if margin isn’t in the feed.

Watch out

A rule is only as good as its source field. If some products have a blank price or the wrong currency format, they may land in the wrong band or none at all. Fix the source data first.

Labels do nothing for bidding until Google Ads can see them. If the two accounts aren’t connected yet, follow https://oxfordimpulse.com/how-to-link-google-merchant-center-to-google-ads/ first.

After the link is live, be patient. Labels can take 24 to 48 hours to appear in Google Ads[1][2]. Don’t assume something is broken after an hour.

One exception worth knowing: for Display dynamic remarketing, custom labels aren’t the right tool. Use ads_labels and ads_grouping instead[1].

Step 6: Use custom labels in a Performance Max listing group

Performance Max is Google’s campaign type that serves across channels from one set of assets. Listing groups are how you choose which products from your feed an asset group can promote. A listing group starts as All products, and you can subdivide it by a custom label[3].

  1. In Google Ads, open your Performance Max campaign.
  2. Go to Asset groups.
  3. Open the asset group you want to edit, then find Listing groups.
  4. Click the pencil icon next to All products.
  5. Choose Subdivide by, then pick the custom label (for example custom_label_0).
  6. Click Save.

Each asset group can have up to 1,000 listing groups[3].

How to structure it

One approach is a separate asset group for each label value that deserves its own treatment, with its listing group subdivided by that label[3]. That lets you judge each group on its own numbers.

Trade-off: splitting spreads your conversion data thinner. If one segment is tiny, keep it in the main asset group and use the label for reporting instead.

Step 7: Report on your segments

Labels also help you read performance, because they let you compare groups of products with each other[1][2]. Judge each group against your real costs, not only platform ROAS. A group with a decent ROAS and a low margin may still lose money.

Review labels on a schedule. Best seller and low seller are only useful if they’re refreshed. If you set them once and forget them, they go stale and your bids end up based on last year’s facts.

Common mistakes and how to avoid them

  • Using exact values like prices or SKUs. This uses up the 1,000 value limit quickly[1]. Use bands.
  • Inconsistent spelling. “high-margin” and “high margin” are different values. Keep a naming sheet.
  • Mixing dimensions in one attribute. One attribute, one idea.
  • Over-segmenting. Too many groups leave each one with too little data.
  • Expecting instant results. Allow 24 to 48 hours for labels to show in Google Ads[1][2].
  • Never updating labels. Schedule a monthly check.

Custom labels checklist

This week, pick one label that would change a bid, add it to a handful of products as a test and check that it shows in Google Ads within 48 hours. For the bigger picture on feeds, labels and account setup, the Merchant Center hub at https://oxfordimpulse.com/google-merchant-center/ is the place to start.

FAQs

What are custom labels in Google Merchant Center?

They’re five optional product attributes, custom_label_0 to custom_label_4, that you fill with your own values. They let you group products for bidding and reporting in Google Ads[1][2].

How many custom labels can you use?

You get five attributes per product[2][5]. Across your account, each attribute can hold up to 1,000 unique values, with 5,000 labels in total[1].

Do custom labels show in your ads?

No. They’re internal and customers don’t see them[1][2]. They only help you filter and organise products.

How long do custom labels take to show in Google Ads?

They can take 24 to 48 hours to appear[1][2]. If they’re still missing after that, check the feed for errors and make sure you’re not near the attribute limit.

How do you add custom_label_0 to a CSV or TSV feed?

Add a column headed custom_label_0 and type the plain value in each row, for example summer[1]. Then upload or fetch the feed again.

How do you write custom labels in an XML feed?

Use the tag format <g:custom_label_0>summer</g:custom_label_0>[1]. The Merchant API also supports the attribute[1].

Are custom labels case-sensitive?

No, values are strings and aren’t case-sensitive[1]. Still, pick one spelling and stick with it so your reports stay tidy.

Can you set custom labels without editing your feed?

Yes, with attribute rules, which were previously called feed rules. They need the Advanced data source management add-on and live under Data sources, Product sources, then the Attribute rules tab of a primary source[1][4].

How do you use a custom label in a Performance Max listing group?

Open Asset groups, go to Listing groups and click the pencil icon next to All products. Choose Subdivide by, select the custom label, then click Save[3].

What happens if you go over the custom label limit?

Labels may not sync if you’re near the attribute limit, and values beyond 1,000 are ignored[1][2]. Switch to broader bands to bring the number of unique values down.

Sources

Share this article

Prepared by

Oxford Impulse

Google Partner

How we make our guides: the Oxford Impulse team prepares them from official documentation with the help of AI. Ömer S. Ekinci reviews guides after they are published. A guide marked "Reviewed" has been read and checked by Ömer S. Ekinci against its sources.

Free Merchant Center audit

Products missing from Google Shopping?

We'll check your feed, site and account settings and send you a clear list of what to fix.

Get a free audit
0% read 8 min left

How to Use Custom Labels in Google Merchant Center

Get a free audit