← All guides

The idealo product feed: get your shop onto Germany's price comparison site

17 September 2026 · 8 min read

idealo is where German shoppers go to compare a price before they buy, and it says it sees 120 million sessions a month across Europe. For a shop selling into Germany or Austria it is the comparison site, and getting in is a matter of one file — but not the file you already have. idealo does not read Google's XML. It reads its own CSV, with column names of its own, and three rules in it behave unlike every other channel a catalogue gets sent to.

This guide is the whole route: what idealo asks of the shop before it will look at a feed, the attributes the file must carry, the three traps that decide whether your offers appear at all, and what a click costs.

Before the feed: what idealo asks of the shop

idealo reviews the shop before the products. Its merchant requirements are short and every one of them is checkable from outside: a working order system, a legally valid imprint, that you handle shipping and returns yourself, gross prices including VAT (B2C listings only), and compliance with idealo's listing criteria.

The one that surprises people is payment. idealo asks for a minimum of two payment options, including PayPal or credit card, and without surcharges. A shop that only takes bank transfer, or that adds a fee for paying by card, does not qualify — and that is a checkout change, not a feed change, so it is worth settling before you start.

Registration itself is three steps (the signup form): submit your shop URL and email, wait for idealo's team to review and approve the shop, then do the technical onboarding in the idealo Business Center — where you paste the feed link.

The file: CSV, and the formatting rules that come with it

idealo accepts CSV, TXT or XML and recommends CSV, which is the format its documentation is written for. The rules are plain (their CSV spec):

A minimal row, with the columns idealo treats as required:

sku,brand,title,url,price,delivery,deliveryCosts_dhl,paymentCosts_paypal
BF-ALP-42,Bergfuchs,Bergfuchs Trailrunner Alpin 42,https://shop.de/p/alpin?variant=42,119.95,2 working days,3.95,0.00

Trap 1: the shipping column is named after your carrier

Every other channel has one shipping field. idealo has one per carrier, and the carrier's name is part of the column: deliveryCosts_dhl, deliveryCosts_hermes, deliveryCosts_dpd. At least one is required, the name has to come from idealo's own list (deutsche_post, dhl, dhl_go_green, download, dpd, fedex, german_express_logistics, gls, gls_think_green, hermes, pick_point, spedition, tnt, trans_o_flex, ups), and the value is the cost of the cheapest method in euros. Free delivery is 0.00 — a number, not a blank.

Payment methods work the same way: paymentCosts_paypal, paymentCosts_credit_card, one column each, at least one of them. Since idealo already forbids surcharges on the payment methods that qualify you, these are normally 0.00 too.

A column named after something that is not on idealo's list is ignored — and it takes your shipping cost with it, silently.

Trap 2: there is no availability field, so out-of-stock must not be in the file

Read the attribute list and something is missing: idealo has no availability. Google has one, Meta has one, the CEE comparators have a delivery field that doubles as one. idealo assumes that an offer in the file is an offer a shopper can buy today.

So a sold-out product does not get marked — it gets left out, and comes back when stock does. Leaving it in with an invented delivery time is the one mistake here that costs real money: the shopper clicks (you pay for that click), lands on a product they cannot buy, and idealo hears about it.

Trap 3: prices have no currency, and the domain decides what they mean

idealo wants the price as a bare number — 119.95, no symbol, VAT included. Which currency that is read in comes from the country domain you registered with. Six of the eight are euros; the other two are not. From idealo's costs and conditions: idealo.de, idealo.at, idealo.fr, idealo.it, idealo.es and idealo.ie in euros, idealo.ch in Swiss francs and idealo.co.uk in pounds.

A price in the wrong currency is not rejected. It is believed. The shopper sees one number on idealo, a different one in your shop, and that gap is a price mismatch counted against the shop — the same failure that gets catalogues suspended on Google, which we cover in the price mismatch guide.

Delivery time: say it in working days, and say it precisely

delivery is required and idealo is unusually strict about the wording, because German law makes the shop tell the customer when the goods arrive. Its spec rules out “ready for shipment”, “presumably” and anything of that shape. Use working days: 1-3 working days, 2 working days. If you dispatch same-day, that is still a working day at the customer's end — say one, not zero.

The attributes that decide where your offer lands

Everything above gets the file accepted. These decide whether the offer appears next to your competitors on the product page — which is the only place idealo's traffic actually is:

Regulated categories carry more: basePrice where §2 PAngV requires a price per unit, packagingUnit for multi-packs, the energy-label block (EEC_efficiencyClass, eec_labelUrl, eec_dataSheetUrl) for appliances, pzns for pharmacy products, and tyre attributes under EU 2020/740. Used and refurbished goods have their own pair, condition and conditionType, and idealo requires differential taxation, EU goods and B-stock to be identified in the offer title itself.

What listing costs

idealo is pay-per-click, not commission on sales: you pay when a shopper clicks through to your shop. The rate depends on the country and the product category (the published CPC list) — the standard rate is €0.51 in Germany, €0.38 in Austria, €0.35 in Spain, €0.25 in Italy, £0.35 in the UK — and all of them rise by €0.02 a year automatically. On idealo.de there is also a minimum fee of €20 net for a calendar month, payable even in a month where the clicks came to less — their terms word it “per calendar month and per Offer”, so it is worth having idealo confirm how that applies to your listing before you budget for it.

The practical consequence for the feed: every click is paid for, so an offer that is out of stock, mispriced or pointing at a dead URL costs money rather than just failing quietly.

The feed or the API

idealo also has a Partner Web Service (PWS 2.0) for programmatic updates. For almost every shop, the CSV is the right answer: idealo fetches it every half hour on its own, so the API buys you very little freshness for a great deal of work. The API is worth it when prices change faster than that, which for most catalogues they do not.

How FeedRobin handles it

idealo is a channel in FeedRobin, built from the same product data as your Google and Meta feeds, and we render the CSV their spec asks for rather than handing them a Google file. You tell us three things once — the idealo domain you registered with, your carrier and its shipping cost, and the payment methods you accept — and the columns get their proper names from idealo's own lists, so there is no way to invent a carrier they do not recognise.

The rest follows the rules above without you watching them: out-of-stock products are held back and return when stock does, prices in a currency that domain does not read are left out rather than shown wrong, descriptions are stripped of HTML and cut to 1000 characters, the title leads with the manufacturer, and your own category path goes across for idealo to map. The feed page tells you exactly how many products each of those rules held back, so the number on your dashboard and the number of offers on idealo never quietly disagree.

If you want to see what any comparison site would make of your catalogue first, the free feed check reads the feed you already have — missing barcodes, thin descriptions and images below the minimum size are the same problems everywhere, and the comparator formats guide covers how Heureka and Compari differ from this one. New to feeds altogether? Start here.

Sources

idealo's own documentation and merchant pages: the CSV feed import specification (attribute list, formatting rules, carrier and payment column names, crawler IPs), idealo Listing (merchant requirements, the three registration steps, reach), costs and conditions (CPC rates per country, the minimum fee, the country domains and their currencies), Partner Web Service 2, shop registration and the merchant FAQs. Checked on 17 September 2026; idealo revises the CSV spec regularly and dates every change in its own changelog.

Read next

Product feeds for price comparators: the XML formats explainedHeureka and Compari/Árukereső side by side, element by element — what they share underneath, why a shared owner doesn't mean a shared file, and the six mistakes that make a portal list zero products.
7 min
Get your products on Compari, Árukereső and Heureka: the product feed guideHow the CEE price comparators work, the feed format they expect (it's not Google's), delivery-time fields, category mapping, and how to submit your catalog step by step.
7 min
Fix “Limited performance due to missing identifiers [gtin]” in Google Merchant CenterWhat Google's missing-GTIN warning means, where to find barcodes for your products, and what to do when a product genuinely has none.
6 min
Not sure what's wrong with your feed?Paste your feed URL and FeedRobin checks every product for missing barcodes, images, descriptions and more — free, no account needed.
Check my feed — it's free