Idealo Price API — Shop Offers by Product
Pricing
from $0.01 / 1,000 results
Idealo Price API — Shop Offers by Product
Every shop offer for a product on idealo, cheapest first, with price, delivery time and shop rating, plus lowest, median and highest price. One product id works on idealo Germany, Austria, France, Italy, Spain and the UK. HTTP API or batch.
Pricing
from $0.01 / 1,000 results
Rating
0.0
(0)
Developer
Unfenced Group
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
8 days ago
Last modified
Categories
Share

Get every shop offer for a product on idealo, Europe's largest price comparison site, in one call: shop, price, delivery time and shop rating, plus the lowest, median and highest price. Price the same product on idealo Germany, Austria, France, Italy, Spain and the UK at once. No API key required.
Why this API?
🛒 The whole offer list
Every shop idealo lists for the product, cheapest first, with price, delivery time, shop rating and the number of shop reviews.
🌍 Six countries, one product id
Idealo uses one product id across its country sites. Pass it once and get a result per country: compare the German, French and UK prices for the same product side by side.
📊 Price statistics included
Lowest, median and highest price and the number of offers, ready for repricing rules, MAP monitoring and price alerts.
🏷️ Product identity
Title, brand, EAN and image with every result, so you can join idealo prices to your own catalogue.
⚡ Built for apps and agents
One product in, one JSON answer back in seconds, or up to 50 products per run.
Call this actor over HTTP
Besides normal runs, this actor exposes a REST API that answers each request in seconds with JSON. There is no run to start and no dataset to fetch afterwards, which suits apps, automations and AI agents that need one answer at a time. The full interactive reference is on the Endpoints tab.
| Endpoint | Returns | Billed as |
|---|---|---|
GET /offers?product=…&countries=… | Shop offers and price statistics per country | Per country found |
Authenticate with your Apify API token in the Authorization header:
curl -H "Authorization: Bearer <YOUR_APIFY_TOKEN>" \"https://unfenced-group--idealo-price-api.apify.actor/offers?product=205015765&countries=de,fr"
Every response has the shape { "count": N, "items": [...] }, with the same fields as the dataset records below, billed at the same price as a normal run. Errors and products not listed in a country return no data for that country and are never billed. POST with a JSON body works the same as GET.
Input parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
productIds | array | (required) | Idealo product ids (205015765) or product URLs (https://www.idealo.de/preisvergleich/OffersOfProduct/205015765_…). Up to 50 per run. |
countries | array | ["de"] | Idealo country sites: de, at, fr, it, es, uk. |
maxOffers | integer | 20 | Offers to return per product and country, cheapest first (1 to 100). |
Over HTTP, pass one product, countries as a comma-separated list and optionally maxOffers.
Output schema
One record per product per country. Fields idealo does not publish are null, never omitted.
| Field | Type | Description |
|---|---|---|
productId | string | Idealo product id. |
country | string | Country of the idealo site (DE, AT, FR, IT, ES, GB). |
marketplace | string | Idealo site, e.g. www.idealo.de. |
url | string | Idealo offer page of the product. |
title | string | Product name on that site. |
brand | string | Brand. |
ean | string | EAN / GTIN of the product. |
mpn | string | Manufacturer part number (null if not shown). |
category | string | Idealo category (null if not shown). |
currency | string | EUR or GBP. |
priceMin | number | Lowest offer price. |
priceMedian | number | Median offer price. |
priceMax | number | Highest offer price. |
offerCount | integer | Number of offers on the product page. |
bestOffer | object | Cheapest offer: merchantName, totalPrice, currency, deliveryTime. |
offers[] | array | Offers, cheapest first: merchantName, price, shippingCost, totalPrice, currency, deliveryTime, condition, merchantRating, merchantRatingCount, isSponsored, offerUrl. |
imageUrl | string | Product image. |
rating | number | Average product rating on idealo (null if none). |
ratingCount | integer | Number of product ratings. |
source | string | Idealo site the data came from. |
scrapedAt | string | Time of the lookup (ISO 8601). |
shippingCost is filled when idealo shows shipping separately and is null otherwise. offerUrl is idealo's own redirect link to the shop.
Example record
{"productId": "201447343","country": "DE","marketplace": "www.idealo.de","url": "https://www.idealo.de/preisvergleich/OffersOfProduct/201447343","title": "Nintendo Switch (OLED-Modell)","brand": "Nintendo","ean": "0045496453435","mpn": null,"category": null,"currency": "EUR","priceMin": 307.99,"priceMax": 348.83,"priceMedian": 329,"offerCount": 20,"bestOffer": { "merchantName": "onbuy.com/de - Shop aus Dublin 1", "totalPrice": 307.99, "currency": "EUR", "deliveryTime": "bis Mi. 21.10." },"offers": [{ "merchantName": "onbuy.com/de - Shop aus Dublin 1", "price": 307.99, "shippingCost": null, "totalPrice": 307.99, "currency": "EUR", "deliveryTime": "bis Mi. 21.10.", "condition": null, "merchantRating": 2.2, "merchantRatingCount": 10, "isSponsored": false, "offerUrl": "https://www.idealo.de/relocator/relocate?categoryId=3189&offerKey=6d1bd83cd3b08d94b0cbf48b79bd9e77&pos=1&price=307.99&productid=201447343&sid=336628&type=offer" },{ "merchantName": "cosse.de - Shop aus Geeste-Dalum", "price": 319, "shippingCost": null, "totalPrice": 319, "currency": "EUR", "deliveryTime": "bis Sa. 17.10.", "condition": null, "merchantRating": 4.6, "merchantRatingCount": 708, "isSponsored": false, "offerUrl": "https://www.idealo.de/relocator/relocate?categoryId=3189&offerKey=cfc775f333be2bd213003d29ccaac3a1&pos=3&price=319.00&productid=201447343&sid=281901&type=offer" }],"imageUrl": "https://cdn.idealo.com/folder/Product/201447/3/201447343/s1_produktbild_gross/nintendo-switch-oled-modell-weiss.jpg","rating": 4.5,"ratingCount": 12,"source": "www.idealo.de","scrapedAt": "2026-10-14T07:30:50.433Z"}
Examples
One product in Germany:
{ "productIds": ["201447343"], "countries": ["de"] }
Compare one product across all six countries:
{ "productIds": ["205015765"], "countries": ["de", "at", "fr", "it", "es", "uk"], "maxOffers": 5 }
From idealo product URLs, cheapest three offers only:
{ "productIds": ["https://www.idealo.de/preisvergleich/OffersOfProduct/201447343_-switch-oled-modell-weiss-nintendo.html"], "maxOffers": 3 }
Daily price monitor for a product list (schedule this run every day):
{ "productIds": ["201447343", "205015765"], "countries": ["de", "at"], "maxOffers": 10 }
💰 Pricing
$0.005 per product per country — you only pay for product-country results returned. Errors and lookups that find nothing are never charged. Countries where idealo does not list the product are not charged.
| Usage | Cost |
|---|---|
| one product, one country | ~$0.01 |
| one product, six countries | ~$0.03 |
| 100 results | ~$0.50 |
| 1,000 results | ~$5.00 |
Subscription tiers lower the rate further, down to $0.004 per product per country at the highest tier. A run start costs $0.00005 and each dataset item $0.00001; HTTP requests are billed per product per country only.
Performance
| Request | Typical time |
|---|---|
| One product, one country over HTTP | 3–10 seconds |
| One product, six countries over HTTP | 5–20 seconds |
| 50 products, one country as a run | about 3–6 minutes |
Known limitations
- Products are looked up by idealo product id or URL. Lookup by EAN alone is not offered.
- A product that idealo does not list in a country returns nothing for that country and is not charged.
- The offer list is the one on idealo's product page. Very large offer lists can hold more shops than the page shows.
deliveryTimeis idealo's text in the site's own language.
Technical details
- Source: idealo.de, idealo.at, idealo.fr, idealo.it, idealo.es, idealo.co.uk product offer pages
- Coverage: every product with an idealo offer page
- Retry: automatic retry on network errors with exponential backoff
Rate this actor
If this scraper does its job, a short review on the Reviews tab helps other users find it. Something not working? Open an issue on the Issues tab instead — issues get fixed.
Need a custom scraper?
Unfenced Group builds Apify actors for any website — for free.
If the site you need isn't in our portfolio yet, just ask. We scope, build, and publish it at no cost to you. You only pay for results — we absorb the compute and proxy costs ourselves. Same pay-per-result pricing, same quality, same standards as every actor in this portfolio.
Get in touch: www.unfencedgroup.nl