← Back to Blog
Insights

Optimize Product Feed for Comparison Shopping Services

Many merchants initially look to Comparison Shopping Services (CSS) for the biggest leverage. However, once the technical CSS integration is in place, it's primarily the product feed that determines which products Google correctly understands, for which queries they are eligible, and how convincingly they are presented.

A CSS Partner can establish a good technical and economic foundation. However, they cannot compensate for incomplete product titles, incorrect GTINs, outdated prices, or poor product images.

Google refers to the product title as one of the most visible components of a Shopping ad or free product listing. An accurate, specific title helps Google match the product to the right users.

Therefore, optimizing the product feed is not a one-time technical task. It combines:

This guide shows you how to optimize your product feed for Comparison Shopping Services and which attributes are particularly important for Google Shopping, Merchant Center, and CSS.

Two Product Data Levels You Should Differentiate

In CSS and Google Shopping, two different data levels are often mixed up.

1. The Merchant Feed in Google Merchant Center

This feed contains the product data from the online shop. This includes, for example:

  • Product ID
  • Title
  • Description
  • Product Page
  • Price
  • Availability
  • Images
  • Brand
  • GTIN
  • Variant Information
  • Shipping Data

This data is used for Shopping ads and free product listings, among other things. The feed remains crucial even if the merchant is connected via a CSS Partner.

2. Product Data for CSS Product Pages

Comparison Shopping Services can also provide their own product pages. For the organic display of such CSS product pages, Google specifies attributes such as id, title, description, image_link, additional_image_link, google_product_category, product_type, brand, gtin, mpn, variant attributes, product_detail, and product_highlight.

The practical consequence is:

Product data should not only be technically valid. It must also be structured so that merchants, Google, and the CSS provider can uniquely identify the same products.

In What Order Should You Optimize Your Feed?

A common mistake is to immediately write new titles, even when fundamental data errors still exist.

A clear prioritization makes more sense:

LevelGoalTypical Measures
1. ApprovalProducts must be technically permissibleRequired attributes, policies, URLs, identifiers
2. AccuracyFeed and shop must matchPrice, availability, variants, shipping
3. RelevanceGoogle must understand the productTitle, description, category, GTIN
4. PresentationThe offer must be convincingMain image, additional images, lifestyle_image_link
5. ControlProducts must be economically groupableCustom Labels, margin, season, stock
6. TimelinessData must be reliably synchronizedData sources, automation, Merchant API

An elaborately optimized title is of little use if the product is rejected due to a pricing error. Conversely, an approved feed is by no means a good feed.

Stable Product IDs and Clean Variants Form the Foundation

Each salable product or independently orderable product variant requires a unique assignment.

For a T-shirt with five sizes and four colors, there isn't just one product, but up to 20 specific variants. Each variant can have its own combination of the following information:

  • Product ID
  • Color
  • Size
  • Price
  • Availability
  • Image
  • GTIN
  • MPN

Google's examples show that variants can be submitted separately and linked via a common item_group_id. Titles and variant attributes should accurately describe the respective version.

Good Rules for Product IDs

A product ID should:

  • remain permanently stable
  • be unique within the feed
  • not depend on price or stock
  • ideally originate from the ERP or shop system
  • identify the specific version for variants

Don't use a new ID every time you change the title, price, or image. For Google, this would create a new offer, even though it is still the same product.

Typical Variant Error

A merchant submits all sizes of a shoe under the same ID. On the landing page, size 42 is selected by default, but in the feed, the product is described as size 39.

As a result, the feed, product page, and the actually selectable variant do not cleanly match.

Better is:

  • a unique ID for each size and color
  • the correct landing page variant
  • the matching variant image
  • the currently valid availability
  • a common item_group_id

Optimize Product Titles: Precision Over Keyword Volume

The product title is not a classic SEO title and not an advertisement. It should explain to Google and the user as quickly as possible what specific product is being offered.

A good title answers several of these questions, depending on the assortment:

  • Which brand?
  • Which model?
  • Which product type?
  • For which target group?
  • Which version?
  • Which color?
  • Which size?
  • Which material?
  • Which technical specification?
  • Which quantity?

Google recommends accurate and specific titles and even displays variants like color and size directly in the title in its own examples.

Meaningful Title Structures by Product Type

Product TypePossible Title Structure
FashionBrand + Target Group + Product Type + Material + Color + Size
ElectronicsBrand + Model + Product Type + Key Specification + Color
FurnitureBrand + Product Type + Dimensions + Material + Color
Home AppliancesBrand + Model + Appliance Type + Power/Capacity + Color
Spare PartsBrand + Product Type + Part Number + Compatibility
B2B ProductsBrand + Product Type + Technical Performance + Material + Packaging Unit

Examples

Too generic:

Women's jacket modern cheap

Better:

Brand Women's Transitional Jacket Water-Repellent Dark Blue Size 40

Too promotional:

Top Professional Coffee Machine buy now cheap

Better:

Brand Model Automatic Coffee Machine 15 bar 1.8 l Black

Imprecise:

Industrial Pump Stainless Steel

Better:

Brand Centrifugal Pump 400 V 12 m³/h Stainless Steel DN 50

Most Important Information First

Not every title will be fully displayed in every view. Therefore, place the purchase-critical information at the beginning.

For a well-known brand product, the brand can come first. For a lesser-known manufacturer, the specific product type might be more important.

There's no rigid rule for all product ranges. The key is what information helps a user identify the product fastest.

No Artificial Keyword List

A title like this doesn't add clarity:

Office Chair Desk Chair Work Chair Swivel Chair buy cheap online

Multiple similar terms in a row make the title unreadable and dilute the specific product description.

Better:

Brand Ergonomic Office Chair with Lumbar Support Black

Synonyms, additional application areas, and technical details can be included in the description or other attributes.

Properly Label AI-Generated Product Titles

For large product ranges, AI systems can help generate titles from structured product data. However, the AI should not write "creatively" freely, but rather follow clear rules.

A sensible prompt or title template only uses existing fields:

Create a product title from brand, model, product type, color, size, and material. Do not invent characteristics and do not use promotional statements.

In the current Merchant Center documentation, Google distinguishes between the classic title attribute and structured_title. For titles generated with generative AI, structured_title should be used. Non-AI-generated titles can be submitted via title or structured_title.

Even with automated titles, quality control remains necessary. Specifically, check for:

  • invented properties
  • duplicate terms
  • incorrect units of measurement
  • truncated model designations
  • missing variant information
  • unnatural translations
  • unauthorized promotional statements

Write Descriptions for Users and Systems

Many product descriptions in the feed consist only of the first paragraph of the product page. Others contain navigation elements, HTML remnants, generic manufacturer texts, or interchangeable promotional phrases.

A good feed description, on the other hand, should clearly summarize the most important product features.

Depending on the product, this includes:

  • Function
  • Application area
  • Material
  • Dimensions
  • Technical data
  • Compatibility
  • Scope of delivery
  • Target group
  • Special features

For rich product displays, Google recommends detailed, well-structured descriptions and suggests more than 200 characters. Additionally, product details and further product images can be submitted via separate attributes.

Example of a Weak Description

High-quality product of the best quality. Order conveniently online now and benefit from our fast shipping.

This text could apply to almost any product. It provides no valuable information to Google or potential customers.

Better

Height-adjustable desk with electrically controlled frame, a work surface of 160 × 80 cm, and an adjustment range of 65 to 130 cm. The frame has two motors, a memory function for four heights, and a maximum load capacity of 100 kg.

This describes concrete features without overloading the text with search terms.

Effectively use product_highlight and product_detail

Not every piece of information needs to be squeezed into the title or description.

With product_highlight, you can convey concise product benefits or key features in a structured way. Google recommends four to six highlights; a minimum of two and a maximum of 100 are possible. A single highlight can contain up to 150 characters.

Examples:

  • Electrically height-adjustable from 65 to 130 cm
  • Memory function for four working heights
  • Load capacity up to 100 kg
  • Two silent motors
  • Tabletop made from FSC-certified wood
AreaAttributeValue
DimensionsWidth160 cm
DimensionsDepth80 cm
PerformanceLoad capacity100 kg
MaterialTabletopOak
ElectricalInput voltage230 V

The product_detail attribute, on the other hand, is suitable for more structured technical specifications, for example:

This keeps the title readable, while technical information remains available in a structured format.

Submit GTIN, brand, and MPN correctly

Unique product identifiers help to clearly identify a specific commercial product.

The most important details include:

  • gtin: Global Trade Item Number, e.g., EAN or UPC
  • brand: Brand
  • mpn: Manufacturer Part Number

Google recommends submitting all three pieces of information if possible. These product identifiers can help Google correctly categorize the offer and show users the product they are looking for.

Never invent GTINs

If a product has an official GTIN, precisely that number must be used. Do not generate your own sequences of numbers just to fill the field.

For variants, each specific variant often has its own GTIN. A red T-shirt in size M may therefore have a different GTIN than the same model in blue or size L.

Products without unique identifiers

Handmade unique items, customized products, or certain custom productions may not have a GTIN, MPN, or brand.

For products that genuinely have no unique identifiers assigned, identifier_exists can be used with the value 'no' or 'false'. This attribute should not be used to bypass missing data for normal branded products.

Private labels

For a true private label, you enter your brand as the 'brand'. An existing internal article number can, under certain conditions, serve as an MPN, provided it uniquely identifies the product as a manufacturer's item.

Consistent use across your shop, feed, packaging, and product page is important.

Distinguish between Google Product Category and your own product types

The attributes google_product_category and product_type serve different purposes.

google_product_category

This is where the product is classified into Google's predefined product taxonomy.

Example:

Apparel & Accessories > Clothing > Outerwear > Jackets & Coats

Google documents both numerical category IDs and written-out category paths, illustrating the assignment using numerous product types.

Choose the most specific matching category. An office chair should not just be generally classified under "Furniture" if a more precise subcategory is available.

product_type

This field can reflect your own shop or assortment structure.

Example:

Office Furniture > Office Chairs > Ergonomic Office Chairs

A clean product type helps you evaluate and group products according to your actual assortment logic.

Don't write campaign logic into your product categories

Values like these aren't helpful product types:

  • high margin
  • bestseller
  • sale
  • campaign 3
  • PMax Test
  • priority A

This kind of information belongs in custom labels. The category should describe what the product is, not how you want to advertise it.

Optimize product images and lifestyle_image_link

The image often determines whether a user even notices a Shopping result.

The main image should clearly show the specific product. Avoid:

  • wrong variants
  • tiny products in large image areas
  • poor cut-outs
  • inconsistent backgrounds
  • blurry shots
  • placeholder images
  • accessories not included in the offer as dominant elements

For rich product presentations, Google recommends high-resolution images and suggests more than 1,500 pixels on the longest side.

The main image answers: What am I buying?

The image_link attribute should show the actual product being offered.

For variants, the image must match the color, material, or version. A user who clicks on a blue chair should not land on a product page with a red chair as the pre-selected variant.

Additional images answer further purchase decisions

You can submit additional views via additional_image_link. Google supports up to ten additional images. They can show, for example, different perspectives, details, packaging, or usage situations.

A useful image sequence could look like this:

  • clear main image
  • side view
  • rear view
  • detail shot
  • size comparison
  • product in use
  • scope of delivery
  • packaging

We combine CSS integration, feed quality, and campaign logic – so your products run cleanly, completely, and profitably on Google Shopping.

Request an offer

What is lifestyle_image_link?

With lifestyle_image_link, lifestyle images can be submitted separately from classic product images.

Google cites these examples:

  • clothing on a model
  • furniture in a decorated room
  • multiple products as a complete set
  • products in a real-life usage situation
  • image_link: Sofa cut out or on a neutral background
  • additional_image_link: Side view, back, fabric detail
  • lifestyle_image_link: Sofa in a fully furnished living room

This attribute is particularly suitable if you want your main image to remain factual and product-centric, but also want to convey the context of use.

For a sofa, the division could look like this:

Prices and availability must be synchronized

An optimized feed is worthless if users find a different price or an unavailable item after clicking.

The price submitted under 'price' must match the price on the respective product page. The currency must also match the target country and the visible currency on the landing page.

For availability, Google supports, among others:

  • in_stock
  • out_of_stock
  • preorder
  • backorder

The information must match the product page, checkout, and, if applicable, structured data. For pre-orders or backorders, an availability date is also required, which should also be visible on the product page.

Don't unnecessarily delete products

If an item is temporarily unavailable, you should not automatically delete it entirely from the data source.

Depending on the situation, you can:

  • use out_of_stock
  • control a pause via the corresponding attribute
  • use backorder for backordered items
  • use preorder for unreleased products

This generally maintains the product association, and the item can be updated when it becomes available again.

Safely implement repricing for Google Shopping

Dynamic price management can be useful in the Shopping environment. However, it increases the risk of price discrepancies.

A repricing system should not only change the visible shop price. It must simultaneously update all relevant data layers:

  • price in the shop system
  • price on the product page
  • structured data on the product page
  • Merchant Center data source
  • local prices, if applicable
  • CSS product data

The change should ideally occur as a connected process. If the feed is updated first, while the product page still shows the old price, a temporary discrepancy arises. The same applies in reverse order.

Google can use automatic product updates for price and availability if structured data is present on the product page. However, this feature is intended as an additional safeguard and does not replace regular product data updates.

Repricing needs economic boundaries

The lowest price is not automatically the most profitable price.

A sensible system considers:

  • Purchase price
  • Margin
  • Shipping costs
  • Payment fees
  • Return rate
  • Advertising costs
  • Minimum stock
  • Competition level
  • Desired market position

Therefore, set minimum prices and margin limits. Otherwise, an automatic price reduction may generate more clicks, but at the same time destroy the contribution margin.

Cleanly connect local inventory with the product feed

Retailers with physical stores require local inventory information in addition to general product data.

A distinction must be made between:

  • The product itself
  • Its availability in a specific store
  • Any differing local price
  • Pickup and delivery options

Google enables retailers to use existing product data for local ads and free local product listings. Depending on the configuration, product data and local inventory data can be synchronized automatically.

For store-dependent prices, the price can either come from the primary product data source or from the local inventory data. It is crucial that the price visible on the respective store product page matches the submitted data.

Typical local inventory structure

Product IDStoreStockPrice
CHAIR-100-BLUELondon-018€249
CHAIR-100-BLUEManchester-020€249
CHAIR-100-BLUEBirmingham-033€259

The product remains the same. However, stock and price may differ by location.

A consistent store identifier is important. The store ID used in the local inventory data must be uniquely assigned to the respective store.

Use custom labels for profitable campaigns

A technically good feed describes the product. An economically good feed also contains information that allows you to manage your assortment based on business value.

Google provides five custom labels for this:

  • custom_label_0
  • custom_label_1
  • custom_label_2
  • custom_label_3
  • custom_label_4

Google cites possible use cases such as season, sales performance, price range, margin, and launch date. The values are not visible to customers but are used for grouping and evaluation in Shopping and Performance Max campaigns.

Example of sensible assignment

Custom LabelMeaningExample Values
custom_label_0Marginhigh, medium, low
custom_label_1Sales PerformanceBestseller, normal, slow-mover
custom_label_2Stock Levelcritical, normal, high
custom_label_3Seasonyear-round, summer, winter
custom_label_4Strategic Rolefocus product, entry-level, accessory

This allows you, for example, to see whether your campaign is generating revenue but mainly selling low-margin products.

Avoid too many individual values

A Custom Label is not intended as a second product ID.

Less useful:

  • custom_label_0 = SKU-183729
  • custom_label_0 = SKU-183730
  • custom_label_0 = SKU-183731
  • custom_label_0 = high_margin
  • custom_label_0 = medium_margin
  • custom_label_0 = low_margin

More useful:

The values should form real groups that you can base decisions on.

Choose the right data source

Not every shop requires the same technical solution.

Small, relatively stable assortments

For a few products and infrequent price changes, an automatically retrieved file may be sufficient.

Possible formats include, for example:

  • XML
  • TSV
  • automatically provided product file
  • direct shop integration

It's not just the format that's crucial, but the reliability of the updates.

Medium-Sized Catalogs with Supplemental Business Data

In this scenario, a combination of primary and supplementary data sources can be useful.

For example, the primary source includes:

  • Product ID
  • title
  • Price
  • Availability
  • Product link
  • Images
  • Margin classes
  • Seasonal assignments
  • Campaign labels
  • Optimized titles
  • Additional product features

A supplementary source provides:

After processing, a Merchant Center product can consist of a primary product input and several supplementary inputs.

Large or Highly Dynamic Catalogs

For frequent price, inventory, or catalog changes, the Merchant API is often the more robust foundation.

Google allows you to manage primary and supplementary data sources via the Merchant API. Data sources can be set up for specific languages and feed labels, or used more flexibly for multiple combinations.

For file-based data sources, Google notes that manual or scheduled fetches are not intended for arbitrary update frequencies. If updates are needed more than once a day, the Products Service should be used instead.

A practical division is therefore:

SituationSuitable Solution
Small, stable product quantityautomatically retrieved file
Additional margin or campaign datasupplementary data source
Frequent inventory changesdirect API integration
Dynamic repricingAPI-based update
Many countries and languagesstructured, central data architecture
Agency with many clientsstandardized API and validation processes

Localizing Product Feeds for Multiple Countries

An international feed is not simply a translated copy of a German feed.

Differences per target country can include:

  • Language
  • Currency
  • Price
  • VAT
  • Shipping costs
  • Availability
  • Size designations
  • Units of measurement
  • Product names
  • Legal disclosure requirements
  • Assortment

In the Merchant API, feedLabel, contentLanguage, and target countries are separate configuration elements. A feed label like “DE” does not automatically mean that products are exclusively targeted to Germany. Target countries and shipping configuration must be set separately.

Translate Search Behavior, Not Just Words

A literal translation can be linguistically correct but commercially unsuitable.

For example, users in different countries may:

  • Use different product terms
  • Write measurements differently
  • Combine brands and models differently
  • Search more by materials or use cases
  • Expect different size standards

Therefore, create your own title rules for each language. A common product database can form the basis, but the linguistic output should be localized.

How to Make Feed Optimizations Measurable

Don't change all attributes of your entire catalog at once. Otherwise, it will be hard to tell which measures actually helped.

A controlled process is better.

Step 1: Form Comparable Product Groups

For example:

  • 200 products with optimized titles
  • 200 similar products with previous titles
  • Product group with lifestyle_image_link
  • Comparable product group without lifestyle_image_link

Or:

Step 2: Document Prior Performance

Record at least:

  • Impressions
  • Clicks
  • Click-through rate
  • Costs
  • Conversions
  • Conversion rate
  • Revenue
  • Cost-of-sale ratio
  • Share of approved products

Step 3: Change Only One Major Factor

For example, test titles first. Then images. Then custom_label_0-4 or product descriptions.

Step 4: Gather enough data

A product with two impressions doesn't provide reliable insights. Evaluate changes at the level of reasonably large product groups and consider seasonal effects.

Step 5: Evaluate business value over click-through rate

A new title can increase the click-through rate, but attract less purchase-ready users.

Therefore, don't just ask:

Did the optimization generate more clicks?

But also:

Did it generate more profitable orders or a higher contribution margin?

The most common CSS product feed errors

ErrorPotential ConsequenceBetter Solution
Generic product titlesUnclear attributionIntegrate specific product features
Incorrect or missing GTINWeak product identificationCheck manufacturer data
One ID for all variantsWrong execution after clickSubmit variants separately
Price discrepancyRejection or poor user experienceSynchronize feed and shop
Outdated stockClicks on unavailable productsMore frequent updates
Only one product imageInsufficient purchase contextAdd additional and lifestyle images
Category too generalImprecise classificationChoose the most specific suitable category
Custom Labels without systemNo meaningful evaluationUse fixed definitions
Margins not consideredRevenue without profitabilityMap margin in the feed
One feed for all languagesUnnatural product titlesLanguage-specific rules
Repricing only in shopPrice discrepanciesSynchronize all data sources
CSS as a substitute for feed qualityPotential remains unusedOptimize CSS and feed separately

A practical 30-day plan

Week 1: Check technical condition

First, take stock:

  • How many products are approved?
  • What are the most common errors?
  • Are prices and availability correct?
  • Are IDs stable?
  • Are variants correctly separated?
  • What is the proportion of valid GTINs?
  • Which products have no images?

First, fix errors that completely exclude products from being displayed.

Week 2: Improve titles and identifiers

Select the most important product groups by revenue or potential.

Develop a title template per category and add:

  • Brand
  • Model
  • Product type
  • Key specification
  • Variant details

At the same time, check GTIN, MPN and brand.

Week 3: Expand images and product information

For important products, add:

  • High-resolution main images
  • Alternative perspectives
  • Detail shots
  • Lifestyle images
  • Product highlights
  • Technical product details

Initially, focus on products with many impressions but a weak click or conversion rate.

Week 4: Economic control and automation

Define a Custom Label system and transfer:

  • Margin
  • Sales strength
  • Stock
  • Season
  • Strategic priority

Then, check if your update frequency matches your product range. Dynamic prices and stock levels suggest an API-based solution.

Conclusion: The CSS Partner is the infrastructure, the feed is the performance lever

A good Comparison Shopping Service creates the conditions for a professional CSS connection. However, whether your assortment actually reaches its full potential depends largely on the quality of your product data.

Don't start with cosmetic optimizations. First, ensure that products are uniquely identified, correctly approved, and delivered with up-to-date prices and stock levels.

After that, follow these performance-enhancing measures:

  • precise product titles
  • structured descriptions
  • correct GTINs
  • specific categories
  • convincing product images
  • lifestyle images
  • economical Custom Labels
  • reliable automation

The best product feed doesn't contain as much information as possible. It contains the right information, in the right attribute, for the right product, and at the right time.

Especially with large assortments, feed optimization becomes a continuous process. Those who consider CSS connection, product data, price control, and campaign logic together create a much better foundation for scalable Google Shopping.

Frequent Questions about Product Feed Optimization for CSS

Does a CSS Partner automatically optimize my product feed?

Not necessarily. CSS integration and product feed optimization are initially distinct services. Some providers exclusively handle CSS integration, while others also offer feed management, consulting, or technical integrations. Therefore, check the specific scope of services.

Is lifestyle_image_link a mandatory attribute?

No. The attribute is optional. It's suitable if you want to submit lifestyle and in-use images separately from classic additional product images. Google mentions, for example, clothing on models or furniture in decorated rooms as possible use cases.

Should I always use the maximum title length?

No. A title should above all be accurate, understandable, and product-specific. Artificially extending it with synonyms and promotional statements does not improve the product description. Google emphasizes the accuracy and specificity of the title.

How often should I update the product feed?

That depends on how often prices and stock change. For a stable assortment, a daily fetch may be sufficient. For dynamic stock or repricing, more frequent API-based updates are sensible. For more frequent updates with file-based fetching, Google refers to the Products-Service.

Do I always need a GTIN?

Not every product has a GTIN. However, branded products and standardized merchandise often have unique product identifiers. Only if a product genuinely does not have a GTIN, MPN, or brand assigned, should identifier_exists be set to no accordingly.

Can I store margins directly in the feed?

Yes, for example, using a Custom Label. Instead of submitting the exact margin value, you can create groups like "high margin," "medium margin," and "low margin." Google explicitly names margin as a possible use case for custom labels.

Can the same product feed be used for multiple CSS Partners?

The technical implementation depends on the respective Merchant Center and CSS configuration. Fundamentally, the underlying product information should remain consistent. Before parallel operation or switching, you should clarify with the involved CSS providers which accounts, data sources, and approvals will be used.

What's more important: product title or product image?

Both fulfill different tasks. The title helps with the clear description and categorization of the product. The image strongly influences whether the offer is visually perceived and understood. However, before optimizing both, price, availability, and product identification must be correct.

Product Data and CSS from a Single Source

We combine CSS integration, feed quality, and campaign logic – so your products run cleanly, completely, and profitably on Google Shopping.

Request an offer