Coolblue Scraper | BE/NL/DE Prices, Stock & Price Drops avatar

Coolblue Scraper | BE/NL/DE Prices, Stock & Price Drops

Pricing

from $0.40 / 1,000 category or search products

Go to Apify Store
Coolblue Scraper | BE/NL/DE Prices, Stock & Price Drops

Coolblue Scraper | BE/NL/DE Prices, Stock & Price Drops

Scrape Coolblue in Belgium, the Netherlands and Germany by search, category or product URL: prices, discounts, stock, delivery, ratings, specs and reviews. Tracks price drops and restocks between runs.

Pricing

from $0.40 / 1,000 category or search products

Rating

0.0

(0)

Developer

ratatoskr

ratatoskr

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

What does Coolblue Scraper do?

Coolblue Scraper reads products from coolblue.be, coolblue.nl and coolblue.de and returns them as clean rows: price, former price, discount, stock, delivery promise, rating, specifications, pros and cons, images and more. Give it a search term, a category link or a list of product links.

Switch on monitoring and every run also tells you what changed since the last one: 📉 price drops, 📈 price increases, ✅ back in stock, ❌ sold out and 🆕 new products.

Try it now: keep the example search on the Input tab ("usb c kabel" on coolblue.be) and click Start. You'll have 20 products in well under a minute.

What can you use it for?

  • 🏷️ Price monitoring: follow the prices of a category, a brand or your own list of products, every day.
  • 🔔 Price-drop and restock alerts: schedule it with "Only output changes" and get only the products that moved.
  • 🛒 Competitor pricing: if you sell the same products, see what Coolblue charges and what it discounts.
  • 📊 Market research: brands, ratings, review counts, promotions and energy classes across a category.
  • 🧾 Product data: full spec sheets, pros and cons, what's in the box, and every product image.

Why this scraper?

  • Three countries, six shop languages: Belgium (Dutch, French, English), the Netherlands (Dutch, English) and Germany.
  • 40+ fields per product. A field Coolblue doesn't show stays empty (null). It never turns into a misleading 0.
  • Change tracking built in. No spreadsheet gymnastics to find price drops.
  • You pay per product, never for a page that failed, and the run stops at the maximum cost you set.
  • Everything Apify gives you: schedules, the API, webhooks, integrations (Google Sheets, Make, Zapier, Slack and more), and exports to JSON, CSV or Excel.

How to scrape Coolblue

  1. Choose what to scrape. You can combine all three:
    • Search queries, plus the Shop for search queries (for example be-nl for coolblue.be in Dutch).
    • Category URLs, such as https://www.coolblue.be/nl/laptops. Filtered category pages work too.
    • Product URLs, for a fixed list of products.
  2. Set Max products per category or search.
  3. Decide on Open each product page (full details). Off gives you the fast listing fields. On also gets specifications, pros and cons, the description, all images and store stock.
  4. For monitoring, switch on Compare with the previous run. Give each list you track its own Monitor name. Add Only output changes if you only want what moved.
  5. Click Start, then download the results or fetch them through the API.
  6. For daily tracking, add a schedule in Apify Console (Schedules) for this Actor or a saved task.

How much does it cost to scrape Coolblue?

You pay per product in the results. There are no monthly fees.

What you getPrice
Product from a category or search page$0.50 per 1,000
Detailed product (its own page opened)$1.25 per 1,000
Run start$0.00005

Product URLs are always opened, so they count as detailed products.

Some examples:

  • 1,000 laptops from one category: $0.50.
  • 200 TVs with full specifications, pros and cons: $0.25.
  • A daily check of 500 products with "Only output changes": you pay only for the products that changed. If 40 change, that day costs $0.02.

You can set a maximum cost per run in the run options. The scraper respects it: it stops at the limit and doesn't fetch pages you won't pay for. You can try it on Apify's free plan.

Input example

{
"searchQueries": ["usb c kabel"],
"searchShop": "be-nl",
"categoryUrls": [{ "url": "https://www.coolblue.be/nl/laptops" }],
"maxItemsPerCategory": 100,
"includeDetails": false,
"compareWithPreviousRun": true,
"monitorName": "laptops-be",
"onlyChanges": false
}

Output examples

A product from a category page (from a real run; fields Coolblue didn't show are null and left out here):

{
"url": "https://www.coolblue.be/nl/product/976994/apple-macbook-neo-2026-a18-pro-512gb-met-touch-id-indigo-azerty.html",
"sku": "976994",
"name": "Apple MacBook Neo (2026) A18 Pro 512GB met Touch ID Indigo AZERTY",
"brand": "Apple",
"category": "laptop",
"price": 899,
"priceExclVat": 742.97521,
"currency": "EUR",
"availability": "InStock",
"availabilityState": "OnStock",
"deliveryPromise": "Morgen geleverd",
"rating": 9.3,
"ratingScale": 10,
"reviewCount": 52,
"promoLabel": "tot € 930,- inruilkorting",
"imageUrl": "https://image.coolblue.be/500x500/products/756762533",
"sponsored": false,
"position": 1,
"source": "listing",
"listingUrl": "https://www.coolblue.be/nl/laptops/filter",
"scrapedAt": "2026-10-27T23:32:40.894Z"
}

A detailed product (from a real run; lists and the description shortened here):

{
"url": "https://www.coolblue.be/nl/product/902666/elgato-stream-deck-pedal.html",
"sku": "902666",
"name": "Elgato Stream Deck Pedal",
"brand": "Elgato",
"price": 84,
"currency": "EUR",
"availability": "InStock",
"rating": 9.3,
"reviewCount": 4,
"ratingDistribution": { "1": 0, "2": 0, "3": 0, "4": 1, "5": 3 },
"highlights": ["Aanpasbare pedalen", "Programmeerbare pedalen", "Voetpedaal knoppen"],
"manufacturerCode": "10GBF9901",
"specifications": [
{ "group": "Product", "name": "Fabrikantcode", "value": "10GBF9901" },
{ "group": "Product", "name": "Merk", "value": "Elgato" }
],
"pros": ["Blijf gefocust tijdens het gamen door bepaalde acties te bedienen met je voeten."],
"cons": ["Deze Stream Deck Pedal beschikt over 3 pedalen, waardoor je maar 3 acties toewijst aan de pedaal knoppen."],
"description": "De Elgato Stream Deck Pedal geeft je handsfree controle over je apps en tools. ...",
"includedInBox": ["Handleiding", "Aanpassingssets voor veerspanning", "Usb C naar usb A kabel"],
"images": ["https://image.coolblue.nl/500x500/products/1709815", "https://image.coolblue.nl/500x500/products/1714144"],
"storesWithStock": 0,
"storesTotal": 14,
"source": "product-page",
"scrapedAt": "2026-10-27T23:39:34.574Z"
}

With monitoring on, each row also gets change (new, price-drop, price-increase, back-in-stock, out-of-stock or unchanged), previousPrice, priceChange, priceChangePercent, previousAvailability and previousSeenAt.

The dataset has three views: Overview (prices and stock), Changes (monitoring) and Details (specs, pros and cons). Every field has a title and a description in the Actor's dataset schema.

How monitoring works

The scraper keeps a snapshot of each monitor in a named key-value store, coolblue-monitor, in your own Apify account. The next run with the same Monitor name compares every product against it. The first run reports everything as new.

One tip: set Max products higher than the number of products in the category. Coolblue reorders its pages between visits, so a cap below the category size lets products slide in and out of view, and they show up as new.

For AI agents and LLM apps

What it does: returns Coolblue product data (prices, discounts, stock, delivery, ratings, specs, pros and cons) for Belgium, the Netherlands and Germany, from search terms, category URLs or product URLs. Coolblue has no public product API.

Minimal input:

{ "searchQueries": ["usb c kabel"], "searchShop": "be-nl", "maxItemsPerCategory": 20 }

Other inputs:

  • A category: { "categoryUrls": [{ "url": "https://www.coolblue.nl/laptops" }], "maxItemsPerCategory": 100 }
  • Fixed products, full detail: { "productUrls": [{ "url": "https://www.coolblue.be/nl/product/902666/elgato-stream-deck-pedal.html" }] }

Behaviour:

  • searchShop is one of be-nl, be-fr, be-en, nl-nl, nl-en, de-de. It applies to search queries only. Category and product URLs carry their own shop.
  • Without includeDetails, rows hold the listing fields. With it, every product page is opened for specifications, pros and cons, the description and images.
  • Product URLs always give detailed rows.
  • A broad search that Coolblue redirects to a category or brand page is followed.
  • maxItemsPerCategory caps each search query and each category separately.
  • Empty values are null, never 0 or an empty string.
  • The run stops at the caller's maximum total charge.

Billing events: product ($0.0005), product-detail ($0.00125), apify-actor-start ($0.00005).

FAQ

This Actor reads public product pages only: no login, no captcha solving, no private API. Prices and stock are facts, but Coolblue's texts and photos are its own work. You are responsible for how you use the data, including Coolblue's terms and the law where you work. This Actor is independent and not affiliated with or endorsed by Coolblue.

Does it return the EAN or GTIN?

No. Coolblue's pages don't include it, so no scraper can read it from them.

Why are some fields empty?

Because Coolblue doesn't show them for that product or on that page. Delivery promises only appear on category and search pages, for example, and specifications only on product pages. An empty field is null, so you can tell "not shown" apart from a real 0.

How fast is it?

Pages are spaced at least 2 seconds apart by default, plus a random extra, so the site keeps working for its own customers. A category page holds about 22 products, so 1,000 listing products take under 10 minutes. Detailed rows open one page per product, so 1,000 of them take well over half an hour. For large detailed runs, raise the timeout in the run options.

Do I need a proxy?

Normally not. Leave the proxy setting off unless you see pages fail. Residential proxy is not used: if you pick it, the run goes without a proxy, which is how Coolblue answers best.

Can I get the data into Google Sheets, Slack or my own system?

Yes. Use Apify's integrations or webhooks, or call the API from your own code. A common setup is a daily schedule with "Only output changes", plus a webhook that posts the changes to Slack.

Something broke, or you want another shop?

Open an issue on the Issues tab. I read every one.