Google Merchant Center Feed Specification
Google Merchant Center requires structured product data to list items in Google Shopping, free listings, and Shopping ads. The feed uses specific attribute names with defined formats and accepted values. Products missing required attributes or using incorrect formats are disapproved.
Required Attributes
Every product in the feed must include all of the following attributes. Omitting any required attribute results in product disapproval.
| Attribute | Format | Description | Example |
|---|---|---|---|
| id | String, max 50 chars | Unique identifier for the product. Must be stable across feed updates. Use SKU or internal product ID. | SKU-12345 |
| title | String, max 150 chars | Product title. Include brand, product type, and key attributes (color, size). No promotional text. | Nike Air Max 90 Running Shoe - Black/White - Men's Size 10 |
| description | String, max 5000 chars | Accurate product description. No HTML tags, no promotional text, no links to other products. | Classic Nike Air Max 90 featuring visible Air cushioning... |
| link | URL, starts with http:// or https:// | Landing page URL for the product. Must match the verified domain. Page must be accessible and show matching product data. | https://example.com/shoes/air-max-90 |
| image_link | URL, min 100x100px, max 64MP | Primary product image URL. No watermarks, no promotional overlays, no placeholder images. White or transparent background preferred. | https://example.com/images/air-max-90.jpg |
| price | Number + ISO 4217 currency | Product price including currency code. Must match the price shown on the landing page. Use period as decimal separator. | 129.99 USD |
| availability | Enum: in_stock, out_of_stock, preorder, backorder | Current stock status. Must match availability on the landing page. Update feed when stock changes. | in_stock |
| brand | String, max 70 chars | Brand name of the product. Required unless the product is unbranded or a store brand (use the store name). | Nike |
| gtin | UPC (12), EAN (13), or ISBN (13) | Global Trade Item Number. Required for all products with a manufacturer-assigned GTIN. Omit only if the product has no GTIN (custom or handmade items). | 0884776536842 |
| condition | Enum: new, refurbished, used | Product condition. Required for all products. "new" for factory-sealed items that have never been used. | new |
Recommended and Optional Attributes
These attributes improve product quality, reduce disapprovals, and increase visibility in search results. Google uses them for filtering, ranking, and ad targeting.
| Attribute | Format | Notes | Example |
|---|---|---|---|
| sale_price | Number + currency code | Discounted price. Must be lower than price. Shown with strikethrough original price in Shopping ads. | 99.99 USD |
| google_product_category | Category ID (integer) or full path | From Google's product taxonomy. Use the most specific category available. Auto-assigned if omitted but manual assignment improves accuracy. | 187 (or Apparel & Accessories > Shoes) |
| product_type | String, max 750 chars | Your own product categorization. Useful for campaign organization in Google Ads. Separate levels with >. | Footwear > Running Shoes > Men's |
| shipping | Country:Service:Price (repeated) | Overrides account-level shipping settings. Required if shipping cost varies by product. | US::Ground:5.99 USD |
| tax | Country:Region:Rate:TaxShip | US-only. Overrides account-level tax settings. Rate is a percentage. TaxShip is yes/no. | US:CA:8.25:yes |
| additional_image_link | URL, up to 10 additional images | Additional product images showing different angles, lifestyle shots, or size reference. | https://example.com/images/air-max-90-side.jpg |
| color | String, max 100 chars | Required for apparel. Use standard color names. Combine with / for multi-color items (e.g., Black/White). | Black/White |
| size | String, max 100 chars | Required for apparel. Use standard sizing (S, M, L, XL or numeric). Include size system and size type if applicable. | 10 |
| mpn | String, max 70 chars | Manufacturer Part Number. Required if no GTIN. Helps Google match the product to its catalog. | CW7483-003 |
| custom_label_0 through custom_label_4 | String, max 100 chars each | Up to 5 custom labels for campaign segmentation. Common uses: margin tier, season, bestseller flag, clearance status. | high-margin |
Feed Submission Methods
Scheduled Fetch
Google fetches the feed file from a URL you provide on a set schedule (daily, weekly). Supports XML, TSV, or TXT files. Set the fetch schedule in Merchant Center under Products > Feeds.
Direct Upload
Upload feed files manually through Merchant Center or via SFTP. SFTP endpoint: sftp://partnerupload.google.com. Maximum file size: 4 GB uncompressed.
Content API
Programmatic product management via the Content API for Shopping. REST API for inserting, updating, and deleting individual products. Supports batch operations for up to 10,000 entries per request.