← Back to blog
Product Feeds· 9 min read

Custom Labels for Shopping Campaign Segmentation

How to use Merchant Center's five custom label fields to segment Performance Max and Shopping campaigns by margin, season, or bestseller status.

Written by Mantas JurgutisFounder, Adsify — builds the Google & Meta automation merchants use daily

Editorially reviewed by Adsify Editorial on March 26, 2026Reviewed against Shopify, Google Ads and Meta official documentation.

What custom labels actually are

Google's product feed specification includes five optional attributes — custom_label_0 through custom_label_4 — that carry no meaning to shoppers and no ranking weight in search; they exist purely so advertisers can group products for reporting and bidding logic inside Google Ads. Each label holds a short text string per product, and you can filter or segment campaigns using these values without changing anything customers see.

This matters more with Performance Max than with legacy Shopping campaigns, because Performance Max removes granular keyword-level control and leans on the feed and asset groups to communicate structure to Google's automated bidding. Custom labels are one of the few remaining levers merchants have to tell the system 'these products are different from those' inside a single campaign.

Common segmentation patterns

A typical setup uses custom_label_0 for margin tier (high/medium/low), custom_label_1 for seasonality (spring, summer, holiday, year-round), custom_label_2 for bestseller status (top-seller, standard, clearance), custom_label_3 for price tier (under-25, 25-75, 75-plus), and custom_label_4 for a promotional flag (new-arrival, sale, discontinued). None of these are Google-mandated categories — the label names and values are entirely up to you, since Google just stores whatever string you send.

Setting values from Shopify

Shopify's native Google & YouTube channel doesn't expose direct custom label mapping in its basic settings; custom labels are more commonly populated by tagging products with a consistent Shopify tag (for example custom-label-0:high-margin) and using a feed rule or a feed management app to map that tag into the corresponding feed column. If you're on Google's Content API or a supplemental feed workflow, you can set the values directly per product ID without touching the primary feed.

A practical Shopify pattern: create product tags following a strict naming convention like margin:high, season:holiday, bestseller:yes. A feed rule (in Merchant Center Next's rules editor, or a third-party feed app) reads the tag prefix and writes the value after the colon into the matching custom label column. This keeps segmentation logic visible to whoever manages product tagging in Shopify admin, rather than buried in a spreadsheet only one person understands.

Using labels inside Performance Max

Once labels are in the feed, Performance Max campaigns can use the 'listing group' filters inside the asset group or campaign-level product feed filter (accessed via the campaign's Product feed section in Google Ads) to include or exclude products by custom label. This lets you run a dedicated high-margin campaign with a higher target ROAS, separate from a clearance campaign that tolerates lower ROAS to move inventory.

In standard Shopping campaigns, custom labels appear as a subdivision option in the product groups tree under Campaigns > Product groups. You can subdivide an 'All products' node by custom_label_0, then set different bids or exclude a subgroup entirely — for example, bidding down or excluding a 'clearance' label group so budget isn't spent chasing discontinued inventory that's about to sell out anyway.

Reporting without campaign changes

Even before changing bidding structure, custom labels are useful purely for reporting: the Google Ads Shopping reports and Merchant Center's Best Sellers-adjacent product performance views let you filter or pivot by custom label, so you can see conversion rate or ROAS by margin tier or season without exporting every SKU manually and matching it in a spreadsheet.

Keeping labels fresh

Custom labels are static feed attributes — they don't update automatically as, say, a product moves from 'new-arrival' to 'standard' after 60 days on the shelf, or as bestseller status shifts week to week based on sales velocity. If you're setting values via Shopify tags, this means someone (or a scheduled automation) needs to update tags periodically, otherwise labels become stale and segmentation decisions get made on outdated groupings.

Avoiding overlap and gaps

A frequent mistake is leaving custom labels blank for a large share of the catalog, which then falls into an implicit 'unlabeled' bucket that campaign structure doesn't explicitly account for. When subdividing a Shopping campaign by custom label, always check the 'everything else' node Google creates for unlabeled or unmatched products, since it can silently absorb a large chunk of spend with no explicit bid strategy applied.

Combining labels with product type or category

Custom labels work best as a layer on top of, not a replacement for, Google's product_type and google_product_category attributes. Use category attributes for what the product is, and custom labels for how you want to treat it strategically. Structuring a campaign purely by custom label without category context can produce asset groups that mix unrelated product types, which weakens Performance Max's ability to match creative assets to relevant search themes.

A worked example

Say a store has 400 SKUs, with 60 tagged bestseller:yes generating an assumed 40% of total ad-attributed revenue. Splitting those 60 into a dedicated Performance Max campaign with a lower target ROAS constraint (because they're already efficient) while leaving the remaining 340 in a broader campaign with a stricter ROAS goal is a direct, low-effort application of a single custom label — no new creative or landing pages required, just a feed filter and a second campaign.

How Adsify uses this

Adsify's optimizer, which runs every six hours, can incorporate custom label segments into its profit/POAS calculations so margin-tier campaigns are evaluated against different profitability targets rather than one blended ROAS goal across a whole catalog.

Custom labels cost nothing to add and don't affect approval or policy compliance, which makes them one of the lower-risk feed changes available — unlike GTIN or price attributes, getting a custom label wrong doesn't cause a disapproval, only a segmentation mistake you can fix by editing a tag and re-syncing the feed.

Frequently asked questions

Do custom labels affect Google Shopping approval or ranking?

No. Custom labels are purely for advertiser-side segmentation and reporting; they carry no ranking weight and don't affect policy compliance.

How many custom labels can I use per product?

Five: custom_label_0 through custom_label_4, each holding one text value per product.

Can Shopify's native Google & YouTube app set custom labels automatically?

Not directly in basic settings; most merchants map Shopify product tags to custom label columns via feed rules or a feed management app.

Should every product have a value in every custom label field?

Not required, but leaving many products unlabeled creates a large 'everything else' segment in campaign product groups that can absorb spend without an explicit strategy.

Sources

Try Adsify free for 7 days

Launch AI-powered Google & Meta ads for your Shopify store in one click. See pricing or the full feature list.

Install from Shopify App Store →

Keep reading on Product Feeds