Google Shopping custom labels exist to tell your campaigns which products play different roles in your business. Not every product deserves the same budget, the same aggressiveness and the same strategy.
One product can sell a lot but carry a low margin. Another can sell less but be highly profitable. A bestseller may be out of stock within days. A seasonal product may only explode in certain months. An item on promotion may be a priority now, but not in a fortnight.
If the feed doesn't contain this information, Google Ads mainly sees products, prices, titles, images and performance. But it doesn't really know your margin, your strategic availability, seasonality, the stock you need to clear or the products you want to protect.
That is exactly what custom labels are for: bringing part of the eCommerce commercial logic into Merchant Center and Google Ads.
What custom labels are
Custom labels are Merchant Center feed attributes. Google provides five fields:
custom_label_0custom_label_1custom_label_2custom_label_3custom_label_4
Inside these fields you can put values of your own choosing, useful for filtering, segmenting, analysing or structuring Shopping and Performance Max campaigns.
For example:
custom_label_0 = high_margincustom_label_1 = season_christmascustom_label_2 = bestsellercustom_label_3 = high_stockcustom_label_4 = price_band_50_100
These values aren't meant for the end user. They are internal signals that help you organise the catalogue on the advertising side.
Why, without custom labels, you treat the whole catalogue the same way
Many eCommerce sites have Shopping or Performance Max campaigns receiving a feed with thousands of products, but no commercial segmentation.
The result is that very different products end up under the same logic:
- high-margin and low-margin products;
- evergreen and seasonal products;
- best sellers and products still being tested;
- products with high stock and products nearly sold out;
- products on promotion and products at full price;
- strategic products and products not worth pushing;
- products with a high return rate and very solid products.
If you don't distinguish these groups, you risk spending too much on products that aren't worth selling and too little on the ones that bring real margin.
This is one of the reasons why looking only at ROAS can be dangerous. We covered it in the article on misleading Google Ads ROAS when the conversion value doesn't describe the margin.
Custom labels by margin
The first useful segmentation is almost always margin.
For example:
high_marginmedium_marginlow_margincritical_margin
This information lets you see whether campaigns are bringing in useful revenue or just sales that look good in the reports.
A 200-euro product with a 10% margin is not the same as an 80-euro product with a 45% margin. If the ROAS is similar, the financial outcome can be very different.
With a margin custom label you can:
- analyse performance by profit band;
- push more profitable products;
- reduce budget on products with a fragile margin;
- stop Performance Max optimising for revenue alone;
- build reports that are closer to the reality of the business.
Margin shouldn't live only in the ERP. It has to reach the Ads strategy too.
Custom labels by seasonality
Seasonality is another very powerful dimension.
For example:
evergreenspringsummerback_to_schoolblack_fridaychristmassales
A seasonal product shouldn't be treated like an evergreen one. It has windows for pushing, a run-up, a peak and a decline.
A seasonal custom label helps you prepare budget and campaigns before demand explodes, instead of noticing once the best period has already passed.
In many sectors this makes the difference: fashion, sport, pet, beauty, gardening, electronics, gifts, school, furniture, outdoor products and supplements.
Custom labels by best seller
"Bestseller" is a delicate label.
A bestselling product can be:
- high-selling but not very profitable;
- high-selling and highly profitable;
- an entry product used to acquire customers;
- a product to defend from competitors;
- a product not to push when stock is low;
- a product that only converts well in certain periods.
So the bestseller custom label on its own isn't always enough. It has to be cross-referenced with margin, stock and strategy.
A good scheme might distinguish:
bestseller_profitablebestseller_volumebestseller_to_defendtest_productproduct_to_push
That way you aren't just saying "it sells a lot". You are saying why that product matters.
Custom labels by stock and availability
Stock directly influences Ads strategy.
Example values:
high_stockmedium_stocklow_stockrestockingoutletend_of_line
If a product is running out, pushing it too hard can create problems. If a product has high stock and a good margin, it may deserve more visibility. If a line is at the end of its run, it can follow a different strategy: sell quickly without competing against new products.
Availability has to be consistent across site, feed and campaigns. We saw this in the guide on out-of-stock products, pre-orders and SEO redirects: stock and feed are not separate details.
Custom labels by price band
Price bands help you read performance and user behaviour more accurately.
For example:
price_under_30price_30_80price_80_150price_over_150
A 19-euro product and a 400-euro one don't share the same decision cycle. They can have very different conversion rates, ROAS, returns and margins.
Segmenting by price band helps you see whether the campaign is doing well on small orders or bringing in an interesting average order value.
Custom labels by promotion
Promotions deserve a logic of their own.
For example:
promo_activeflash_promosalebundlesecond_item_offerdiscount_code
The point isn't just showing the discounted price. The point is being able to read and govern the advertising push during the promotion.
If you have products on offer but don't distinguish them in the feed, it becomes harder to see how much budget they are absorbing and how much they are really returning.
A practical custom_label_0-4 scheme
A simple, readable scheme could look like this:
custom_label_0: margin, for examplehigh_margin,medium_margin,low_margin;custom_label_1: seasonality, for exampleevergreen,summer,christmas,black_friday;custom_label_2: commercial priority, for examplepush,defend,test,do_not_push;custom_label_3: stock, for examplehigh_stock,low_stock,outlet;custom_label_4: price band or performance, for exampleprice_50_100orbestseller.
There is no perfect scheme for everyone. The scheme depends on the catalogue, margins, seasonality, Ads strategy, stock management and the way you want to read your reports.
The important thing is not to waste custom labels duplicating data already handled well by other attributes. If the brand is already correct, you probably don't need a custom label for the brand. Better to reserve it for information Google can't work out on its own.
Common mistakes with custom labels
These are the most frequent mistakes.
- Not using them at all: the catalogue stays flat and campaigns get fewer commercial signals.
- Using them with no strategy: random values, hard to read and useless in reports.
- Creating too many values: tiny segments that produce no useful data.
- Not updating them: a product stays
high_stockeven when it is nearly sold out. - Duplicating categories and brands: instead of using labels for margin, priority or seasonality.
- Not documenting them: six months later nobody remembers what they mean.
- Not aligning them with campaigns: labels present in the feed but never used in Google Ads.
- Not connecting them to the business: marketing sees clicks and ROAS, but not margin and real priority.
Custom labels are only useful if the team knows why they exist and how to use them.
Custom labels and Performance Max
With Performance Max many owners think they can't control anything. That isn't quite true.
Custom labels can help you organise product groups, asset groups, analysis and segmentation better. They don't turn Performance Max into a fully manual campaign, but they do let you bring more order to the catalogue.
For example:
- an asset group for high-margin products;
- an asset group for seasonal products;
- a separate group for best sellers to defend;
- a group for products being tested;
- an exclusion or reduced push for products with a critical margin.
The structure has to be designed carefully. Segmenting too much can starve the algorithms of data. Segmenting too little can cost you commercial control.
Custom labels and Standard Shopping
Custom labels are very useful in Standard Shopping campaigns too.
They let you build more sensible product groups and more readable reports. For example, you can see how high-margin products perform compared with seasonal ones, or separate outlet from new arrivals.
This is one of the reasons you shouldn't pick a campaign structure out of habit. Sometimes Standard Shopping offers more control, sometimes Performance Max scales better. The feed has to be ready for both approaches.
The feed has to be dynamic
A static custom label is only useful up to a point.
Some values change rarely, such as strategic category or product type. Others change often:
- stock;
- promotions;
- seasonality;
- bestsellers;
- commercial priority;
- actual margin;
- products to clear;
- products to defend.
If the feed is updated but the custom labels stay old, campaigns work from the wrong snapshot.
That is why the best custom labels come from the connection between eCommerce, ERP, margins, sales, stock and Ads strategy.
How to automate them with a custom eCommerce site
On a custom eCommerce site, custom labels can be generated automatically from the catalogue.
Examples:
- if the margin passes a threshold, assign
high_margin; - if stock is above a threshold, assign
high_stock; - if the product is on promotion, assign
promo_active; - if the product sells well over the last 30 days, assign
bestseller; - if the product belongs to a season, assign the seasonal label;
- if the product has high returns, flag it with a warning label;
- if the product isn't strategic, assign it to
do_not_push.
This automation avoids the classic problem: the feed goes live, but nobody actually updates the labels.
The subject also connects to the article on AI for the eCommerce catalogue, tags, filters and quality control: if the catalogue is governed well, the Ads feed becomes smarter too.
How to start without overcomplicating things
If you aren't using custom labels yet, don't start from a huge scheme.
Start from three questions:
- Which products are worth selling more of?
- Which products shouldn't absorb too much budget?
- Which products change strategy depending on season, stock or promotion?
From here you can build a first simple scheme:
custom_label_0 = margincustom_label_1 = seasonalitycustom_label_2 = priority(commercial priority)
Then, once the data is stable, add stock, price or performance.
Three labels done well beat five fields full of chaotic values.
Checklist before sending custom labels in the feed
- Does every custom label have a clear purpose?
- Are the values few, readable and documented?
- Do the labels genuinely serve the campaigns, or only the reports?
- Are margin and stock updated automatically?
- Do the campaigns actually use those segments?
- Do the labels avoid pointlessly duplicating category, brand or product type?
- Is there a naming convention?
- Are products without a label handled?
- Does the team know what each value means?
- Are the Ads reports read by custom label?
This checklist looks simple, but it is often enough to reveal that the feed is running with no real commercial logic.
How we use them in Google Ads audits
When we review an eCommerce account, we also look at whether the feed really lets you read the business.
We ask ourselves:
- are the campaigns spending on profitable products?
- do the best sellers have margin or only volume?
- are seasonal products ready before the peak?
- are low-stock products absorbing budget?
- can products on promotion be separated in the reports?
- is Performance Max learning from sensible segments?
- is the feed consistent with the real catalogue?
This is part of the work on SEO, Google Ads and eCommerce strategy: not just looking at the campaign and the dashboard, but also at the feed, the catalogue, the margin and the sales data.
If you want a broader grounding in feeds, we have also written the guide to the 15 Google Merchant Center feed errors that waste Shopping and Performance Max budget.
Useful Google sources
For this article we checked the official Google sources on custom labels 0-4 in Merchant Center, the Merchant Center product data specification, listing groups for Performance Max and Shopping Ads reporting.
FAQs: Google Shopping custom labels
Are Google Shopping custom labels mandatory?
No, they aren't mandatory. But for an eCommerce site with many products they are very useful for segmenting campaigns, reading reports and distinguishing margins, seasonality, stock and priorities.
How many custom labels can I use?
Merchant Center provides five fields, from custom_label_0 to custom_label_4. The important thing is to use them with a clear scheme, not to fill them in at random.
Which custom labels should I create first?
It usually makes sense to start from margin, seasonality and commercial priority. Then you can add stock, price band, promotions or performance depending on the catalogue.
Do custom labels help Performance Max?
Yes, they can help organise product groups, asset groups, exclusions and reports. They don't give total control over the algorithm, but they bring more structure to the catalogue.
Do custom labels need to update automatically?
When they depend on stock, promotions, bestsellers or variable margins, yes. An out-of-date custom label can lead campaigns into the wrong decisions.
Can I use custom labels for margin?
Yes, and it is one of the most useful applications. Segmenting products by margin helps avoid Google Ads optimising for revenue alone without considering real profitability.