REMA 1000 Denmark Scraper — Groceries & EAN avatar

REMA 1000 Denmark Scraper — Groceries & EAN

Pricing

from $2.00 / 1,000 result scrapeds

Go to Apify Store
REMA 1000 Denmark Scraper — Groceries & EAN

REMA 1000 Denmark Scraper — Groceries & EAN

Scrape the REMA 1000 Denmark discount-grocery chain by keyword: product names, prices in DKK, unit prices, categories, images and EAN barcodes. No login or cookies.

Pricing

from $2.00 / 1,000 result scrapeds

Rating

0.0

(0)

Developer

Studio Amba

Studio Amba

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

5 days ago

Last modified

Categories

Share

REMA 1000 Denmark Scraper

Scrape REMA 1000 (rema1000.dk), Denmark's largest discount-grocery chain, by keyword and get clean, structured product data: names, prices in DKK, unit prices, categories, images and EAN barcodes.

REMA 1000 runs its own public product-search API. This actor calls it directly, so you get fast, reliable grocery data without a login, cookies or a browser — and every result already carries its EAN barcode, no extra product-page fetch required.

Why use this actor?

If you track Danish grocery prices, match products by barcode, build a price-comparison tool, or feed a market-research dataset, you need structured product data you can rely on. This actor turns any REMA 1000 search into a table of products with current prices in DKK, unit prices and EAN barcodes.

Typical users:

  • Price-intelligence and price-comparison platforms tracking Danish retail.
  • Brands and suppliers matching their catalogue by EAN barcode.
  • Market researchers and analysts building Nordic grocery datasets.
  • Developers who need a clean product feed instead of scraping HTML themselves.

How to scrape REMA 1000 data

  1. Open the actor in the Apify Console.
  2. Enter a search query in Danish — for example mælk, kylling, øl or brød. Leave it empty to browse the full catalogue.
  3. Set maxResults to how many products you want.
  4. Leave the proxy on the default Apify setting and click Start.
  5. When the run finishes, download the results as JSON, CSV, Excel or feed them to an API.

The actor calls REMA 1000's own search API directly, walks the pagination for your query at 200 products per request, and writes one clean record per product — including the EAN barcode, which comes back in the same response as the price, so there's no separate detail-page fetch.

Input

FieldTypeRequiredDescription
searchQueryStringNoKeyword to search in Danish (default: mælk)
maxResultsIntegerNoMaximum products to return (default: 100)
proxyConfigurationObjectNoApify proxy settings (default Apify proxy works)

Example input

{
"searchQuery": "mælk",
"maxResults": 20,
"proxyConfiguration": { "useApifyProxy": true }
}

Output

Each result contains:

FieldTypeExample
nameString"Sødmælk 3,5%"
brandString"Arla"
priceNumber7.95
currencyString"DKK"
pricePerUnitString"15.9 kr/ltr"
sizeString"0.5 LTR. / ARLA"
discountString"campaign"
campaignEndsAtString"2026-07-18T00:00:00+00:00"
eanString"5700426101026"
skuString"20302"
productIdString"20302"
categoryString"Mejeri > Mælk m.v."
imageUrlStringPrimary product image URL
urlStringFull product page URL
scrapedAtStringISO 8601 timestamp

discount and campaignEndsAt are present only when a product is on a running weekly offer ("kampagne"). brand is a best-effort read of REMA 1000's free-text size/description field and is not always available — some products only carry an origin tag (e.g. "DANSK") instead of a brand name, in which case brand is omitted.

Example output

{
"name": "Sødmælk 3,5%",
"brand": "Arla",
"price": 7.95,
"currency": "DKK",
"pricePerUnit": "15.9 kr/ltr",
"size": "0.5 LTR. / ARLA",
"ean": "5700426101026",
"sku": "20302",
"productId": "20302",
"category": "Mejeri > Mælk m.v.",
"imageUrl": "https://rema-product-images.digital.rema1000.dk/20302/1-large-kAonyAjPx8.webp",
"url": "https://shop.rema1000.dk/varer/20302",
"scrapedAt": "2026-07-14T19:00:00.000Z"
}

Notes and limitations

  • Prices are the current online prices in DKK, matched to today's date against REMA 1000's own price-validity windows (so you always get the price that's actually active, campaign or not).
  • The shop.rema1000.dk website itself is geo-blocked outside Denmark, but the underlying product API this actor calls is not — no residential proxy needed.
  • REMA 1000's full catalogue is around 3,900 SKUs. A broad or empty search query walks the whole catalogue at 200 products per request.
  • brand is best-effort only — REMA 1000's API does not expose a clean, dedicated brand field.
  • Some products carry more than one barcode (multi-pack variants); this actor returns the first one as ean.

Cost

Pricing is pay-per-result. Because the actor calls a JSON API directly (no browser, no per-product detail fetch), a run of a few hundred products typically finishes in well under a minute.

Build a complete view of European grocery retail with these sibling scrapers from Studio AMBA: