1. Common formats: CSV, tab separated and XML
Most shop systems export either a delimited text file or an XML file. In a CSV file every line is a product and the first line names the columns. Depending on the export, the separator is a comma, a semicolon or a tab. XML feeds wrap every product in its own element. The most widespread XML layout is the Google Shopping feed, an RSS 2.0 file with fields such as g:id, g:title and g:price.
According to Google Merchant Center help, product files can be delimited text (.txt or .tsv with tabs) or XML (RSS 2.0 or Atom 1.0), also compressed as .gz, .zip or .bz2. Google names encodings other than UTF-8 or UTF-16 and unclosed XML tags as common causes of errors.
2. The fields that matter
Google Merchant Center lists id, title, description, link, image_link, availability and price as required for all products, and brand for most new products. The id may have up to 50 characters, the title up to 150 and the description up to 5,000. Availability uses fixed values such as in_stock or out_of_stock, and prices use a full stop as decimal point with a currency code, for example 10.00 USD.
For a shop search, a few more fields make a big difference: the SKU or GTIN, so customers can search for article numbers, the category or product type for filters, and attributes such as colour, size or material. A field that is not in the feed cannot be searched or filtered.
- Open your feed and check that every product has an ID, name, link and price.
- Check that SKU or GTIN, brand and category are filled.
- Look for the attributes your customers filter by, such as colour or size.
3. Typical errors
Broken special characters (for example “ü” instead of “ü”) usually mean the file was saved in a different encoding than the one declared. In XML feeds a single unescaped ampersand in a product name can make the whole file unreadable. In CSV files a separator or line break inside a field shifts every following column.
Prices are another common trap: a comma as decimal separator, a currency symbol in the field or an empty price for variants. Also check that the feed is publicly reachable at a fixed address and is updated when prices or stock change.
4. Check your feed for free
The Grumeria feed check reads a feed from its public address and shows how many products it found, which standard fields are present and how well a sample of products fills them. It reads CSV with comma, semicolon or tab, XML including Google Shopping feeds and files compressed with gzip or zip. Nothing is stored or imported.
If the check finds ID, title, link and price, Grumeria can build a search from the feed. You then choose which fields are searchable or used as filters, and add the widget to your shop.