Feed field reference
The canonical multi-channel reference for product feed fields. One page per field — what it is, which channels require it, the exact format, and the common mistakes that quietly suppress catalog performance.
Identifiers
id The unique identifier for a product in your feed. Every other field hangs off this one — it's how channels track, match, and report on individual SKUs.
Read referencegtin The Global Trade Item Number — the standardised manufacturer-assigned barcode that uniquely identifies a product across retailers. UPC (12 digits), EAN (13), ISBN (10 or 13), and JAN (8 or 13) are all GTIN variants.
Read referencempn The Manufacturer Part Number — a manufacturer's internal identifier for a product, separate from any retail barcode. Used as an identifier when GTIN isn't available or isn't unique enough.
Read referencebrand The brand or manufacturer name. Required across almost every shopping channel. For own-brand products use your store name; for resold products use the original manufacturer's brand.
Read referencelink The product page URL on your site — where the user lands when they click your ad or listing. Channels validate that the URL is crawlable and that the page they reach actually matches the feed listing.
Read referenceidentifier_exists Tells channels whether the product has manufacturer-assigned identifiers (GTIN, MPN, brand). Default is true. Set to false only for genuinely identifier-exempt products: custom-made, vintage, art, antiques, books with no ISBN.
Read referencemobile_link A mobile-specific landing page URL. Used when a site serves different content on mobile vs desktop — typically a separate m. subdomain or AMP page. Most modern responsive sites don't need this field.
Read referencecanonical_link The canonical URL for the product, used when your feed's link includes parameters or session IDs but the canonical page lives at a clean URL. Helps channels avoid duplicate-content suppression.
Read referenceexternal_seller_id The seller's identifier when items are sold through a marketplace catalog. Lets the marketplace operator distinguish items from different sellers within the same catalog.
Read referenceads_redirect Alternative URL used only for paid ad clicks. Lets you separate paid-traffic tracking from organic landing. Useful for accounts running heavy attribution analysis.
Read referencedisplay_ads_id The identifier sent to Google Ads dynamic remarketing pixels. Lets you separate Shopping ads identifiers from display retargeting identifiers when they need to differ.
Read referenceasin Amazon Standard Identification Number — Amazon's internal product identifier. Unique to Amazon's catalog, distinct from GTIN. Required for Amazon listings; not used by other channels.
Read referenceCategorisation
google_product_category Assigns each product to a node in Google's predefined product taxonomy — ~6,000 hierarchical categories covering all major retail verticals. The single most consequential categorisation field in any modern feed.
Read referenceproduct_type Your own internal product taxonomy — free-form, hierarchical, used by you to segment your catalog for product set rules, reporting, and campaign structure. Separate from `google_product_category`, which uses Google's published taxonomy.
Read referenceenergy_efficiency_class EU energy efficiency rating, required for appliances and electronics sold in the EU. Mandatory under EU energy labelling regulations.
Read referenceexcluded_destination Tells channels to exclude the item from specific surface destinations — for example, excluding an item from Shopping ads while still using it for free listings. Lets you control product distribution at the surface level.
Read referenceincluded_destination Explicit list of destinations the item should appear in. Useful when an item is excluded by default but should serve in specific surfaces.
Read referencemin_energy_efficiency_class Minimum energy efficiency rating across an item group's variants. Used when energy_efficiency_class varies across variants — the parent declares a range, the variants declare their specific class.
Read referencemax_energy_efficiency_class Upper bound of energy efficiency across variants. Pairs with min_energy_efficiency_class.
Read referenceads_grouping Groups items for Shopping campaign organisation. Used at the campaign level (separate from product_type or custom_label) to define which items belong to which ad groups.
Read referenceads_labels Additional granular labels for Shopping campaigns, beyond custom_label_0 through custom_label_4. Useful for accounts hitting the five-label ceiling.
Read referenceVariants
item_group_id Groups individual variants of the same product under one parent identifier. A medium blue dress, large blue dress, and small blue dress share one `item_group_id` but each has its own `id`.
Read referencecolor The product's colour. Required for apparel and several other verticals. Channels use it as a variant filter and audience-segmentation signal.
Read referencesize The product's size. Required for apparel and footwear, recommended for many other categories where dimensions matter.
Read referencematerial The product's primary material — cotton, leather, wool, polyester. Used as a variant filter and shopper-search signal, especially for apparel, footwear, and home goods.
Read referencepattern The product's pattern — solid, striped, floral, plaid, etc. Used as a variant filter alongside colour and size, primarily for apparel and home textiles.
Read referencegender The gender the apparel is targeted at. Required for all apparel and accessories — Google uses it to apply gender-appropriate sizing rules and to match items to gender-filtered searches.
Read referenceage_group The age range the product is targeted at. Required for apparel and accessories — channels use it to apply age-appropriate sizing and to gate items from inappropriate ad placements.
Read referencesize_system The regional sizing standard used in the size field. Disambiguates between e.g. UK 12, US 12, and EU 12 — three different physical sizes despite the same number.
Read referencesize_type The body type the size is cut for. Distinguishes regular from petite, plus, tall, or maternity sizing within the same numeric size value.
Read referencemultipack The number of identical items sold as one unit. A six-pack of socks has multipack: 6. Channels show this so users know what they're getting — and the GTIN refers to the pack, not the individual item.
Read referenceis_bundle Whether the product is a bundle of different items sold together. A shampoo + conditioner gift set is a bundle; a six-pack of identical socks is not (it's a multipack).
Read referenceparent_sku Amazon's equivalent of item_group_id — the parent SKU that groups variants together. Required when listing items with variants on Amazon.
Read referenceTitle & description
title The product name displayed in Shopping ads, free listings, and catalog placements. Carries more SEO weight than any other field — the title is what determines whether a product matches a search query.
Read referencedescription The longer-form product description that channels use for relevance scoring and surface in product detail views. Read after the title catches the user's attention; rarely the deciding factor for click-through but heavily weighted for search relevance.
Read referenceproduct_detail Structured key-value product attributes that don't fit standard fields. Lets you encode brand-specific attributes (camera megapixels, fabric blend percentages, screen refresh rate) channels can surface in detail views.
Read referenceproduct_highlight Short bullet points highlighting key product features. Used in expanded product views as quick-scan summaries. Most channels display 3-5 highlights per listing.
Read referenceImages
image_link The primary product image URL. Every channel surfaces this image first — it's what the user sees in feed placements, search results, and catalog tiles.
Read referenceadditional_image_link Additional product images shown alongside the primary `image_link` — multiple angles, scale shots, detail crops, lifestyle imagery. Channels surface these in product detail views and rotate them through creative variations.
Read referencevideo_link URL to a product video. TikTok Shop heavily favours items with video; Amazon and Meta also surface product videos in detail views. Video lifts conversion measurably in categories where it makes sense (apparel, fitness, beauty, electronics).
Read referencelifestyle_image_link URL to a lifestyle image showing the product in use. Separate from image_link (which is typically the clean product shot) — lifestyle images get used as secondary creative in detail views and remarketing surfaces.
Read referencebrand_logo URL to the brand's logo image, surfaced in some catalog placements as a brand identity signal alongside product listings.
Read referenceCustom labels
custom_label_0 The first of five free-text custom label fields you can use to tag products with your own segmentation logic — margin tiers, ROAS bands, seasonal flags, anything that's useful for product set rules or campaign segmentation.
Read referencecustom_label_1 The second custom label slot. Identical to `custom_label_0` at the system level — the convention is to use it for a different segmentation dimension.
Read referencecustom_label_2 The third custom label slot. Typically used for inventory or seasonality flags.
Read referencecustom_label_3 The fourth custom label slot. Often used for promotional or campaign flags.
Read referencecustom_label_4 The fifth and final custom label slot. Often left for ad-hoc or experimental segmentation since the first four typically encode the stable dimensions.
Read referencePrice
price The product's standard selling price including the currency code. The single field every shopping channel reads first — wrong prices, wrong currency, or mismatches against the landing page break delivery outright.
Read referencesale_price The discounted price for promotional periods, alongside `sale_price_effective_date` for the start/end window. Only set during actual promotions — a permanent sale_price tells the algorithm this is always discounted, dampening the urgency signal.
Read referencesale_price_effective_date The start and end timestamps for a promotional sale_price. Lets you schedule discounts in advance — the discount activates at start, deactivates at end, without manual intervention.
Read referenceunit_pricing_measure The size or measure that price applies to — for example, 750ml for a wine, 100g for a chocolate bar. Required in some EU regions for retail comparability.
Read referencepromotion_id A reference identifier linking the item to an account-level promotion (defined separately via Merchant Center's promotions feed). Lets you attach 'free shipping over £50' or '10% off code SUMMER' to specific items.
Read referencesubscription_cost The recurring cost for subscription products. Separate from price (the upfront cost) — subscription_cost makes the recurring nature explicit and surfaces in Shopping placements as 'X/month'.
Read referenceinstallment Instalment payment structure for items sold via payment plans. Includes number of instalments and the per-period amount. Used for big-ticket items where instalment offerings are part of the value proposition.
Read referenceloyalty_points The loyalty points earned by purchasing the item, used by channels that surface loyalty program participation as a value signal (e.g. 'Earn 250 points').
Read referenceunit_pricing_base_measure The base measure used for unit-price comparison. Pairs with unit_pricing_measure to enable per-unit price displays. EU regulation requires both for many product categories.
Read referencecost_of_goods_sold The cost to acquire or produce the item. Internal margin data — used by some channels for profitability-aware reporting and by automated repricers to enforce minimum margins.
Read referenceauto_pricing_min_price The minimum price below which automated repricers shouldn't drop. Used when Google's Smart Bidding or third-party repricers have permission to adjust price — sets a floor to protect margins.
Read referenceAvailability
availability Whether the product can be bought right now. Channels suspend out-of-stock items from delivery automatically — provided the field actually flips when stock hits zero, which is the operational problem most catalogues quietly carry.
Read referencecondition Whether the product is new, refurbished, or used. Required across all major shopping channels — without it, channels default to 'new' which is fine for most catalogues but breaks reseller catalogues where mixed conditions exist.
Read referenceavailability_date When a preorder or backorder item becomes available. Pairs with availability='preorder' or 'backorder' to give users a concrete date.
Read referenceexpiration_date When the product listing expires from the catalog. Useful for limited-time offerings, seasonal items, or products with regulated expiry (food, supplements).
Read referencepause Pauses an item from serving without removing it from the catalog. 'ads' pauses paid Shopping ads but keeps the item in free listings; 'all' pauses everywhere.
Read referencedisclosure_date The date when an embargoed product becomes visible. Used for product launches where the listing exists in advance but shouldn't appear to users until a specific moment.
Read referenceShipping
shipping Shipping cost for the item, structured by country and service. Required when Merchant Center can't infer shipping from your account-level settings or when prices vary by SKU.
Read referenceshopping_ads_excluded_country List of countries to exclude from Shopping ads delivery for this item. Use when you can't ship or sell to specific regions while keeping the listing live for others.
Read referenceshipping_weight The item's weight for shipping calculation. Used by channels to compute shipping costs when shipping isn't explicitly defined at item level.
Read referenceshipping_label A grouping label that maps items to account-level shipping rules. Lets you set 'oversized' or 'hazmat' or 'free_shipping' labels on items and define the cost or service per label at the account level.
Read referencemin_handling_time Minimum days between order placement and dispatch. Pairs with max_handling_time to give a range. Channels use this to calculate delivery estimates shown in placements.
Read referencemax_handling_time Maximum days between order placement and dispatch. Pairs with min_handling_time. Used by channels to compute the upper bound of delivery promises.
Read referenceships_from_country The country the item ships from. Channels use this to calculate import duties, delivery times, and applicable customs rules for international orders.
Read referencepickup_method Whether the item supports in-store pickup (click-and-collect, BOPIS) and which model. Pairs with pickup_sla for the speed promise.
Read referencepickup_sla How long until the item is ready for pickup. Channels surface this as 'pickup today' or 'pickup tomorrow' tags in Local Inventory placements.
Read referenceshipping_length Package length for shipping calculation. Used alongside shipping_width and shipping_height for dimensional weight pricing — carriers charge by whichever is greater (actual weight or dimensional weight).
Read referenceshipping_width Package width for shipping calculation. Pairs with shipping_length and shipping_height for dimensional weight.
Read referenceshipping_height Package height for shipping calculation. Third dimension in the L×W×H calculation.
Read referencetransit_time_label A label that maps the item to account-level transit-time rules. Lets you define 'next-day' or 'two-day' transit times once at account level and tag items accordingly.
Read referenceTax
tax Tax information per region. Primarily required for US Merchant Center feeds where sales tax varies by state. Most other regions handle tax via Merchant Center account settings or destination VAT rules.
Read referencetax_category An alternative tax classification when the standard tax field doesn't capture nuance. Used for products with non-standard tax treatment (reduced VAT, exempt, zero-rated).
Read reference