AnyTool
Your files never leave your device. All processing happens locally in your browser.

How do I create a valid Google Merchant Center / Google Shopping product feed?

Add your products with their attributes (id, title, description, link, image_link, price + currency, availability, condition, brand and a GTIN or MPN), and AnyTool builds a valid RSS 2.0 XML feed (with the xmlns:g namespace) or a TSV feed, validates each product against the required-attribute spec, and lets you copy or download the file — all in your browser. You then upload that file to Merchant Center.

  • Required: id, title, description, link, image_link, availability, price (with currency, e.g. “19.99 USD”); plus condition + brand and a gtin OR mpn for most products
  • Outputs valid RSS 2.0 XML (xmlns:g=“http://base.google.com/ns/1.0”) or a tab-separated TSV feed — copy or download .xml / .txt
  • Validates every product: missing-required errors + warnings (long title, bad price/currency, invalid GTIN length, duplicate id) — identifier_exists=no is added when there’s no GTIN/MPN
  • Multiple products, key recommended attributes (google_product_category, product_type, sale_price, item_group_id, color/size) and a CSV/paste import
  • Generates a FILE to upload — it does not submit to your Merchant Center, host your images, and is not affiliated with Google; 100% in your browser

What is

Google product feed (Merchant Center data feed)

A structured file — an RSS 2.0 XML document using the Google namespace xmlns:g=“http://base.google.com/ns/1.0”, or a tab-separated (TSV) file — that lists each product and its attributes (id, title, description, link, image_link, price, availability, condition, brand, gtin/mpn and more) so it can be uploaded to Google Merchant Center for Shopping ads and free listings. AnyTool’s Google Merchant Feed Generator builds and validates this file entirely in the browser; it produces the feed for you to upload and is not affiliated with Google.

Generators

Related terms

Google Merchant CenterGoogle ShoppingRSS 2.0g: namespaceGTINidentifier_existsProduct data specificationScheduled fetch

Frequently Asked Questions

Every product needs id, title, description, link, image_link, availability and price (with a currency, like “19.99 USD”). Most products also need condition and brand plus a GTIN or MPN, or identifier_exists set to no.

Google’s product data specification requires id (a unique identifier, max 50 chars), title (max 150), description (max 5000), link (the product landing page URL), image_link (a publicly reachable image URL), availability (in_stock, out_of_stock, preorder or backorder), and price as a number plus an ISO-4217 currency code, e.g. “19.99 USD”. For most products you also need condition (new, refurbished or used) and brand, plus a unique product identifier — a gtin (8, 12, 13 or 14 digits) or an mpn; if the product genuinely has neither, you submit identifier_exists=no. AnyTool checks all of these per product and flags anything missing. Because the spec changes and varies by country and category, always confirm Merchant Center’s current requirements.

Both work. The XML feed is an RSS 2.0 document with the xmlns:g=“http://base.google.com/ns/1.0” namespace and one <item> per product; the spreadsheet option is a tab-separated (TSV) file with a header row of attribute names.

Google Merchant Center accepts an RSS 2.0 XML feed extended with the Google namespace xmlns:g=“http://base.google.com/ns/1.0” — a <channel> containing one <item> per product, where product attributes use the g: prefix (e.g. <g:price>19.99 USD</g:price>, <g:availability>in_stock</g:availability>) while title, link and description can be plain RSS elements. It also accepts a tab-separated values (TSV) text file whose first row lists the attribute names and each following row is one product. AnyTool generates both: a properly XML-escaped RSS 2.0 feed and a clean TSV (with stray tabs and newlines stripped from cells), and you pick which to download with one toggle.

No. It builds a feed file entirely in your browser — nothing is uploaded or submitted. You then upload that .xml or .txt file to Merchant Center yourself, via a hosted URL/scheduled fetch or a manual upload.

The generator is 100% client-side: your product data is turned into a feed in your browser, and nothing is sent to a server, logged or stored — the page even works offline once cached. It produces a FILE in Google’s product-data format for you to upload to Google Merchant Center, either by hosting the file at a URL that Merchant Center fetches on a schedule, or by uploading it manually. It does not connect to or sign in to your Merchant Center account, does not submit products on your behalf, and does not host your product images — you supply your own publicly reachable image URLs. It is also not affiliated with or endorsed by Google.

identifier_exists tells Google whether your product has a unique identifier. If a product has no GTIN and no MPN — like custom or handmade goods — you set identifier_exists to no. AnyTool adds it automatically when both are blank.

Unique product identifiers (GTIN, MPN and brand) help Google match your product to its catalog. When a product genuinely has none — one-of-a-kind, custom or handmade items, or pre-GTIN antiques and books — you declare identifier_exists with a value of no (you must not also send a GTIN, which would be a contradiction). AnyTool detects when a product has neither a GTIN nor an MPN and automatically emits identifier_exists=no in both the XML and TSV feed, and warns you so you can add a real identifier if the product actually has one. GTINs, when present, must be 8, 12, 13 or 14 digits (UPC-12, EAN-13, ISBN or ITF-14), which the validator also checks.

Detailed Explanation

How It Works

Required Attributes and the Verified Google Product Data Specification

AnyTool’s Google Merchant Feed Generator encodes the Google product data specification and validates each product against it in the browser. The required attributes are id (a unique identifier, max 50 characters), title (max 150), description (max 5000), link (the product landing-page URL), image_link (a publicly reachable image URL), availability (one of in_stock, out_of_stock, preorder or backorder), and price — a numeric value plus an ISO-4217 currency code rendered as “19.99 USD”. For most products the spec also requires condition (new, refurbished or used) and brand, plus a unique product identifier: a gtin (which must be 8, 12, 13 or 14 digits — UPC-12, EAN-13, ISBN or ITF-14) or an mpn. When a product genuinely has neither a GTIN nor an MPN — custom, handmade or one-of-a-kind goods — the feed declares identifier_exists=no, which the tool adds automatically and warns about. Because the specification changes and varies by country and category, the tool states plainly that the user should confirm Merchant Center’s current requirements and any category-specific attributes.

  • Required: id, title, description, link, image_link, availability, price (with ISO-4217 currency, e.g. “19.99 USD”)
  • Most products also need condition (new/refurbished/used) and brand, plus a gtin OR mpn
  • availability ∈ {in_stock, out_of_stock, preorder, backorder}; gtin must be 8, 12, 13 or 14 digits
  • No GTIN and no MPN → identifier_exists=no is emitted automatically (and you must not also send a GTIN)
  • Limits: id ≤ 50, title ≤ 150, description ≤ 5000 chars — the spec varies by country/category, so verify in Merchant Center
Methodology

How the XML (RSS 2.0) and TSV Feeds Are Built

The tool produces two interchangeable feed formats from the same products, toggled with one control. The XML feed is a well-formed RSS 2.0 document whose root declares the Google namespace xmlns:g=“http://base.google.com/ns/1.0”; it contains a <channel> with a store title, link and description, and one <item> per product. Inside each item, product attributes use the g: prefix (<g:id>, <g:image_link>, <g:price>19.99 USD</g:price>, <g:availability>in_stock</g:availability>, <g:condition>, <g:brand>…) while title, link and description are emitted as standard RSS elements; additional_image_link repeats once per URL, and empty optional fields are skipped entirely. All text is XML-escaped — ampersand, less-than, greater-than, double quote and apostrophe are converted to their entities — so titles and descriptions can contain any characters safely. The TSV feed is a tab-separated text file whose first row is the attribute-name header and each following row is one product, with tabs and newlines stripped from cell values so the row structure stays intact. A paste/CSV importer maps spreadsheet columns to attributes by name (tolerating aliases like sku, url and image) and splits a “19.99 USD” price into price + currency.

  • XML: RSS 2.0 with xmlns:g=“http://base.google.com/ns/1.0”, a <channel> and one <item> per product using g:-prefixed attributes
  • Title, link and description are standard RSS elements; price renders as “19.99 USD”; additional_image_link repeats
  • All five XML predefined entities (& < > " ') are escaped; empty optional fields are omitted
  • TSV: a header row of attribute names + one tab-separated row per product, with tabs/newlines cleaned from cells
  • CSV/paste import maps columns by name (alias-tolerant) and supports multiple products at once
Privacy & Security

Privacy and the Honest Limits

Every product is turned into a feed entirely in the browser — there is no server, no API and no account, and the page works offline once cached — so titles, descriptions, prices, links, image URLs, GTINs and every other attribute are processed on the device and never uploaded, logged or stored. This is the deliberate contrast with feed-management platforms that ingest your catalog into a cloud service. The tool is equally clear about what it is not: it GENERATES a valid feed FILE in Google’s product-data format (RSS 2.0 XML or TSV) that the user uploads to Google Merchant Center themselves — by hosting the file at a URL for a scheduled fetch, or uploading it manually — and it does NOT connect to, sign in to, or submit anything to a Merchant Center account, does NOT host product images (the user supplies their own publicly reachable image URLs), and is NOT affiliated with or endorsed by Google. Its validation covers the core required attributes and common formatting, but the product data specification changes and varies by country and category (apparel needs color/size/gender/age_group; some categories need extra attributes), so the user should always check Merchant Center’s current requirements, include any category-specific attributes, and run Merchant Center’s own diagnostics after uploading to catch account-level issues.

Building a Google product feed: AnyTool vs cloud feed tools
CapabilityAnyToolCloud feed platforms
Where it runsIn your browserServer / SaaS (uploads your catalog)
XML (RSS 2.0 + g: namespace)Yes — well-formed & escapedYes
TSV feedYes — header + tab-separated rowsUsually
Required-attribute validationPer-product errors + warningsVaries
identifier_exists handlingAuto-added when no GTIN/MPNSometimes
CSV / paste importYes — alias-tolerant column mappingYes
Submits to Merchant CenterNo — you upload the file yourselfOften integrates / pushes
PrivacyProduct data never uploadedCatalog sent to the service
HonestyStates it generates a file, not affiliated with GoogleMarketing may imply a Google integration

AnyTool builds the feed file locally and never uploads your product data; it generates a file for you to upload and is not affiliated with Google.