Automation

How to Automate Custom Labels Without Google Ads Scripts

Three approaches to performance-based product labeling, from free scripts to fully automated tools.

By Samuli Kesseli 15 min read

Custom labels are the mechanism Google gives advertisers to segment products for campaign structure and bidding. They're five text fields (custom_label_0 through custom_label_4) that you attach to each product in your feed. Most advertisers use them to group products by performance — top performers, scale opportunities, underperformers, zero-conversion products — and then build campaigns or ad groups around those segments.

The problem isn't understanding why you should label products. It's operationalizing the workflow. Someone (or something) needs to pull performance data from Google Ads, apply classification logic, write the labels into your feed, and keep doing it as performance changes. Manually reviewing hundreds or thousands of products weekly doesn't scale.

This guide covers three approaches to automating custom labels, from the original free script method to modern SaaS tools that handle everything end to end.

The Script Approach: How It Started

The most widely adopted open-source solution is the Flowboost script, originally created by Shopstory. It's been downloaded over 5,000 times and popularized the concept of performance-based labeling for Shopping campaigns.

How the Flowboost script works

  1. Script runs in Google Ads: You paste the script into your Google Ads account (Tools > Scripts). It queries the shopping_performance_view to pull product-level performance data (clicks, conversions, revenue, ROAS).
  2. Products are classified: Based on configurable thresholds (click count and ROAS), each product gets one of four labels: Over-index (high ROAS, enough clicks), Near-index (moderate performance), Under-index (low ROAS, spent budget), No-index (zero or minimal clicks).
  3. Labels written to Google Sheets: The script writes the product ID and label to a Google Sheets spreadsheet.
  4. Sheet connected as supplemental feed: You connect the Google Sheet as a supplemental feed in Merchant Center. Google fetches it daily, and the labels appear on your products.
Side-by-side comparison of three custom label automation workflows: script-based with Google Sheets, SaaS tool with direct MC push, and analytics platform with rule builder
Three approaches to automating custom labels, each with different complexity and capability trade-offs.

Script limitations

The Flowboost script is a solid starting point, but it has inherent constraints:

The SaaS Tool Approach

Several commercial tools have replaced the script workflow with managed services. They pull performance data via API, apply classification rules, and push labels directly to Merchant Center — no scripts, no spreadsheets.

ProductHero Labelizer

ProductHero is probably the best-known commercial labeling tool. It classifies products into four buckets (Hero, Sidekick, Villain, Zombie) based on click and ROAS thresholds, and pushes labels to Merchant Center via the Content API. Pricing starts at EUR 39/month.

ProductHero improves on scripts by removing the maintenance burden and the Sheets intermediary. But it still uses fixed buckets — you can't customize the label names, add more categories, or use conditions beyond basic performance metrics. See our ProductHero alternatives comparison for more detail.

Shoptimised

Shoptimised is a UK-based platform that goes a step further. It lets you configure performance thresholds and time windows (24 hours to 90 days), providing more control over how recency affects labeling. Pricing starts at GBP 120/month.

Optmyzr

Optmyzr includes a Smart Product Labeler within its broader PPC management platform. It uses 5 fixed performance buckets and pushes labels to MC. It's more of an enterprise PPC platform than a pure labeling tool — pricing starts around $249/month.

What SaaS tools share in common

The Analytics-First Approach

The newest wave of labeling moves beyond fixed buckets and adds two capabilities that scripts and SaaS tools lack: flexible rule definition and connected analytics.

Comparison matrix showing the three approaches (scripts, SaaS tools, analytics platforms) across eight criteria including label flexibility, conditions, maintenance, analytics, and pricing
How the three approaches compare on flexibility, automation, and analytics capabilities.

SKU Analyzer takes this approach. Instead of classifying products into pre-defined buckets, it gives you a rule builder with 40+ condition fields organized across performance metrics, pricing data, feed attributes, Google signals, and computed dimensions.

How the rule builder works

Each rule has a label name, a color, and one or more conditions connected with AND logic. Rules are ordered by priority — the first rule that matches wins.

Example rules:

Hero

ROAS ≥ 5 AND conversions ≥ 3 AND price_position = Competitive

Scale

ROAS ≥ 3 AND clicks ≥ 20 AND click_potential = HIGH

Fix Price

clicks ≥ 10 AND conversions = 0 AND price_position = Overpriced

Cut

cost ≥ 50 AND conversions = 0 AND ROAS = 0

The difference from fixed-bucket tools is the condition flexibility. You can combine:

The 40+ condition fields available in a flexible rule builder, organized by category: Performance, Pricing, Feed Attributes, Google Signals, and Computed Dimensions
Flexible rule builders support 40+ condition fields across five categories. Fixed-bucket tools use 2-3 fields from the Performance category only.

This means you can create rules like "label as Fix Price if the product has clicks but zero conversions AND is overpriced by more than 10% vs benchmark" — a rule that combines ad performance with Merchant Center pricing data. Scripts and fixed-bucket tools can't express this because they only see ad performance data.

Preview before applying

Before saving rules, you can preview the distribution — see how many products would land in each label category. This prevents launching a labeling scheme where 90% of products end up as "Cut" because a threshold was set too aggressively.

Auto-push to Merchant Center

Labels push to Merchant Center via the Content API through a dedicated supplemental datasource. You choose which custom_label slot (0-4) to use. With auto-push enabled, labels recalculate and push daily as part of the automated data refresh — no manual intervention.

Connected analytics

This is the part scripts and standalone labeling tools miss entirely. When labeling is connected to a full analytics platform, you can:

Approach Comparison

Criteria Scripts (Flowboost) SaaS Tools Analytics Platform
Label buckets 4 fixed 4-5 fixed Unlimited custom
Condition fields 2-3 3-5 40+
MC push method Via Sheets supplemental Content API Content API
Update frequency Manual (run script) Daily auto Daily auto
Maintenance High None None
Preview distribution No No Yes
Performance analytics No No Yes (13 pages)
Pricing data in conditions No No Yes
Price Free From ~$40/mo Invite-only

Getting Started: Which Approach to Choose

The right approach depends on your catalog size, technical comfort, and what else you need beyond labeling.

1

Start with scripts if you want free and simple

The Flowboost script gets you from zero to labeled products in an afternoon. Good for learning how performance-based labels work. Expect to spend time maintaining the script and updating thresholds manually.

2

Use a SaaS labeling tool if you want hands-off automation

ProductHero, Shoptimised, or Optmyzr remove the maintenance burden. Labels compute and push automatically. Trade-off: you're still limited to fixed buckets and basic conditions.

3

Use an analytics platform if you need flexible rules and performance tracking

When you need conditions that combine performance + pricing + feed attributes, or you want to track whether your labeling strategy actually improves results over time. Also makes sense if you need title optimization, price benchmarking, or wasted spend analysis alongside labeling.

Implementation Checklist

Regardless of which approach you choose, here's what you need:

  1. Define your label strategy. What segments do you need? At minimum: top performers (bid up), growth opportunities (test higher bids), underperformers (reduce bids), and zero-conversion products (pause or restructure). See our custom labels guide for strategy frameworks.
  2. Choose your custom_label slot. You have 5 slots (0-4). Use one for performance labels. Reserve others for margin tiers, seasonality, brand grouping, or budget allocation segments.
  3. Set initial thresholds. What ROAS qualifies as "Hero"? What click count means "enough data to evaluate"? Start conservative — you can always adjust after seeing the distribution.
  4. Build your campaign structure. Labels are pointless without campaigns to use them. Create campaign segments or ad groups that target specific label values, then apply appropriate bidding strategies per segment.
  5. Schedule regular reviews. Even automated labels need periodic threshold checks. Does your "Hero" threshold still make sense if your account-level ROAS shifted from 5x to 3x? Review distribution monthly.

Frequently Asked Questions

Can I automate custom labels without coding?

Yes. Several SaaS tools automate custom labels without requiring any scripting. ProductHero, Shoptimised, and SKU Analyzer all compute labels from ad performance data and push them to Merchant Center automatically. You configure rules in a visual interface and the tool handles the rest.

What is the Flowboost script for Google Shopping?

Flowboost is a free Google Ads script that labels products into four buckets (Over-index, Near-index, Under-index, No-index) based on click volume and ROAS. It outputs labels to a Google Sheet, which is then connected as a supplemental feed to Merchant Center. It's been downloaded over 5,000 times but requires manual threshold updates and script maintenance.

How often should custom labels be updated?

Daily updates work best for most accounts. Product performance changes day to day as budgets shift, competition fluctuates, and conversion patterns evolve. Daily relabeling ensures your campaign structure reflects current performance, not last week's data. Tools that auto-push labels daily eliminate the manual update cycle.

What conditions should custom labels be based on?

At minimum, use ROAS and cost (or clicks) to separate performers from non-performers. More advanced setups add conversion count, price competitiveness, click potential (a Google signal), availability, and brand. The more conditions you can combine, the more precise your label segmentation. Scripts typically support 2-3 conditions while SaaS tools support 10-40+.

Do custom label changes affect my Google Ads campaign performance?

Custom labels themselves don't affect performance — they're organizational tags. But when you use labels to segment campaigns and apply different bidding strategies per label group (higher bids for Hero products, lower for underperformers), the resulting campaign structure directly impacts performance. The label quality determines how effectively you can allocate budget.

Bottom Line

Automating custom labels is one of the highest-leverage optimizations for Google Shopping campaigns. The approach that started with free scripts has matured into a range of options from fully managed SaaS tools to analytics-integrated platforms.

If you're still manually reviewing products in Google Ads and setting labels by hand, even the simplest automation (a Flowboost script) will save hours per week. If you've outgrown scripts and want to stop maintaining code, SaaS labeling tools handle the plumbing. And if you need flexible rules that go beyond basic click-and-ROAS thresholds, or you want to track whether your labeling strategy actually moves the needle, the analytics-first approach gives you the most control.

Start with the approach that matches your current complexity. You can always upgrade as your needs grow.

See the rule builder in action

SKU Analyzer's Labels page lets you build custom rules with 40+ condition fields, preview the distribution, and push to Merchant Center. Try the demo to see how it works.

Try the demo dashboard

Related Guides