Idealo Price Scraper avatar

Idealo Price Scraper

Pricing

Pay per event

Go to Apify Store
Idealo Price Scraper

Idealo Price Scraper

Look up any product EAN on idealo and get every live merchant offer — seller name, price, shipping, total price, condition and availability — across the German (idealo.de) and Austrian (idealo.at) marketplaces.

Pricing

Pay per event

Rating

0.0

(0)

Developer

SR

SR

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

4 days ago

Last modified

Share

Idealo Price Scraper — Offers and Prices by EAN

Turn any product barcode into the full idealo price-comparison listing. This idealo scraper takes an EAN/GTIN and returns every live merchant offer from idealo — seller name, item price, shipping cost, total price, condition and availability — across the German (idealo.de) and Austrian (idealo.at) marketplaces. No login, no idealo API key, no HTML parsing on your side.

It is built for price monitoring, repricing, and competitive intelligence where you already know the products you care about and need their idealo offers as clean structured JSON. Give it one EAN or a list of thousands; each lookup comes back as one product row with all of its offers nested and the cheapest and most expensive total price pre-computed.

What you get

  • One dataset item per product EAN you submit, with the matching idealo product title, brand, canonical product url, thumbnail, and idealo_sku.
  • A nested offers array — one entry per merchant — with sellerName, price, shippingPrice, totalPrice, formerPrice, condition, availability, and shippingMethod.
  • offer_count, min_total_price and max_total_price computed for you, so you can sort or alert on the cheapest offer without touching the array.
  • Coverage of both live idealo marketplaces: Germany (idealo.de) and Austria (idealo.at), selectable per run.
  • An explicit found flag so a product idealo does not list is returned as a clear empty record, never a silent gap in your data.
  • EUR pricing with the currency stated on every item.
  • Batch input with adjustable concurrency — submit a long EAN list and the actor fans the lookups out in parallel.

Why scrape idealo price comparison data

idealo is the dominant price-comparison marketplace in the German-speaking market, aggregating offers from hundreds of merchants for the same product. For anyone selling, sourcing, or analysing consumer goods in Germany and Austria, the idealo product page is the single best snapshot of the live competitive price landscape for a given item.

The problem is access. idealo has no public offers API, the product pages are behind bot protection, and the listing for one product can carry dozens of merchant offers that change throughout the day. Scraping it reliably yourself means maintaining proxies, parsing a moving HTML target, and handling the German and Austrian sites separately. This actor does that work behind a stable API-backed pipeline so you receive normalized JSON keyed by the EAN you already have in your catalog.

Because the input is the EAN, the data joins directly back to your own product master — no fuzzy title matching, no manual mapping between your SKUs and idealo's.

Input

FieldTypeRequiredDescription
eansarray of stringsYesOne or more product barcodes (EAN-8/EAN-13/GTIN, 8–14 digits). Non-digit characters are stripped automatically. Duplicates are de-duplicated.
countrystring (de or at)NoWhich idealo marketplace to query. de = idealo.de (default), at = idealo.at.
concurrencyinteger (1–25)NoMaximum lookups run in parallel. Default 10.

Minimal input:

{
"eans": ["5702017416663"],
"country": "de"
}

Output

Each product is one dataset item. Example (trimmed to three offers):

{
"ean": "5702017416663",
"country": "de",
"site": "idealo.de",
"found": true,
"idealo_sku": 202283713,
"title": "LEGO Icons - Botanical Collection - Wildblumenstrauß (10313)",
"brand": null,
"url": "https://www.idealo.de/preisvergleich/OffersOfProduct/202283713.html",
"thumbnail": null,
"availability": "InStock",
"currency": "EUR",
"offer_count": 18,
"min_total_price": 38.99,
"max_total_price": 52.83,
"offers": [
{
"sellerName": "Amazon",
"price": 38.99,
"formerPrice": null,
"shippingPrice": 0.0,
"totalPrice": 38.99,
"condition": "New",
"availability": "InStock",
"shippingMethod": "standard"
},
{
"sellerName": "playox.de",
"price": 40.97,
"shippingPrice": 4.99,
"totalPrice": 45.96,
"condition": "New",
"availability": "InStock"
}
]
}

Only products idealo actually lists reach the dataset, so every dataset item is a real result. EANs idealo has no listing for are reported separately in the run's OUTPUT record under notFound (a list of EANs), free of charge, so you can reconcile your input against what was found.

Use cases

Repricing and Buy-Box strategy for German marketplaces. If you sell on idealo, Amazon.de or your own shop, you need to know where your price sits against every other merchant on the same product. Pull your catalog's EANs through this idealo scraper on a schedule, read min_total_price and the per-seller offers, and feed your repricing engine the live competitive floor for Germany and Austria.

Brand and MAP monitoring. Brands enforcing minimum advertised pricing across the DACH region can watch every merchant offer for their products on idealo in one pass. The sellerName, price and totalPrice fields make it straightforward to flag any seller listing below an agreed threshold, including shipping in the comparison via totalPrice.

Market and assortment research. Analysts sizing a category can submit a basket of EANs and capture the spread between cheapest and most expensive offers (min_total_price to max_total_price), the depth of competition (offer_count), and availability across both the German and Austrian markets — useful inputs for launch pricing and channel decisions.

Product data enrichment. Marketplaces and aggregators that already hold EANs can enrich their records with idealo's canonical product title, image and live price range, keyed cleanly on the barcode with no title-matching guesswork.

How it compares

Idealo Price Scraper (this actor)Typical free idealo scrapers
PricingPay-per-event — pay only for products actually foundFree actor, but you pay unpredictable Apify compute
InputEAN/GTIN — joins straight to your catalogOften URL- or keyword-based
Marketsidealo.de and idealo.atUsually idealo.de only
ReliabilityAPI-backed with six rotating upstream keysDirect HTML scraping, breaks when idealo blocks
OutputOffers nested per product, min/max total price computedRaw rows, post-processing left to you

Free idealo scrapers exist and work for one-off runs, but they bill Apify compute (so cost scales with run time, not results) and break when idealo changes its markup or blocks the crawler. This actor trades a small per-result fee for predictable, billable, API-backed output.

Pricing

This actor is pay-per-event with two events: a small per-run actor start fee, and a result charge of $0.004 per product idealo actually returns (one dataset item). EANs with no idealo listing are reported in OUTPUT.notFound and are not charged. Apify automatically applies subscription-plan discounts (for example, Business and higher plans receive a 75% discount on the result price). All pricing is pay-per-event, so you only pay for results you receive — no per-compute-unit charges.

Limits and gotchas

  • Only Germany and Austria are supported. idealo discontinued its UK, France, Spain and Italy marketplaces in 2020. The actor exposes only de and at because those are the only idealo sites that return live data.
  • Lookup is by EAN/GTIN, not by free-text search or product URL. If you do not have the barcode, resolve it first.
  • A product not listed on idealo is not an error. Its EAN is returned in OUTPUT.notFound rather than the dataset, and is not charged.
  • Prices are a point-in-time snapshot. idealo offers change throughout the day; schedule repeat runs if you need a price history.
  • Free Apify plans are capped at 10 results per run. Upgrade your Apify plan or split work across runs to go beyond that. Paying plans are uncapped.
  • Currency is EUR for both markets.
  • Brand is sometimes null — idealo does not expose a brand field on every product.

FAQ

Can I scrape idealo prices without an idealo API key? Yes. idealo has no public offers API; this actor handles access for you and returns structured JSON. You supply only EANs.

Does it cover idealo.at (Austria) as well as idealo.de? Yes — set country to at for the Austrian marketplace or de for Germany. Each market is priced independently by its merchants, so the same EAN can return different offers.

Why do idealo.fr, idealo.co.uk, idealo.es and idealo.it not work? idealo closed those international marketplaces in 2020 and operates only in Germany and Austria today, so there is no live data to return for them.

How do I get the cheapest idealo price for a product? Read min_total_price on each item — it is the lowest totalPrice (item price plus shipping) across all merchant offers, pre-computed for you.

Can I look up many products in one run? Yes. Pass a list of EANs in eans; the actor de-duplicates them and runs the lookups concurrently (tune with concurrency).