Rimi.ee Scraper — Estonian Grocery Products & Prices avatar

Rimi.ee Scraper — Estonian Grocery Products & Prices

Pricing

from $2.00 / 1,000 result scrapeds

Go to Apify Store
Rimi.ee Scraper — Estonian Grocery Products & Prices

Rimi.ee Scraper — Estonian Grocery Products & Prices

Scrape products, prices, and per-unit prices from Rimi.ee, one of Estonia's largest online groceries. Search or browse categories. No login or cookies required.

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

2 days ago

Last modified

Categories

Share

Extract grocery product data, prices, and per-unit prices from Rimi.ee, one of Estonia's largest online groceries. Search by keyword or browse any category. No login, no cookies, no account required.

What is Rimi.ee Scraper?

Rimi.ee Scraper collects structured product data from Rimi Estonia's online grocery store (rimi.ee/epood). It reads Rimi's server-rendered product grid and its public category API to deliver clean, flat JSON: product name, price in EUR, per-unit price, category, image, product code, and stock status.

Rimi is part of Rimi Baltic, owned by the Swedish ICA Group, and is one of the largest grocery retailers in the Baltics. Its Estonian online store carries tens of thousands of products across fresh produce, dairy, meat, bakery, pantry, drinks, household, and more. That catalogue is one of the richest, most current grocery data sources in Estonia.

Popular use cases:

  • Grocery price monitoring — Track prices and per-unit prices across the Rimi catalogue. Detect promotions and price shifts over time.
  • Competitor intelligence — Compare Rimi's range and pricing against Maxima, Selver, Coop, and Rimi's own Baltic siblings.
  • Market research — Analyze product availability, assortment, and category structure in the Estonian grocery market.
  • Price comparison sites — Feed a shopping or price-comparison product with fresh, structured grocery data.
  • FMCG and supplier research — Study which products and pack sizes are listed, and at what shelf and per-unit prices.

How to scrape Rimi.ee data

There are two ways to run the actor. Pick one.

Option 1: Search by keyword

Set searchQuery to any product name or keyword in Estonian. The actor paginates through all search results up to maxResults.

Estonian examples: "piim" (milk), "leib" (bread), "juust" (cheese), "liha" (meat), "kohv" (coffee), "munad" (eggs), "õun" (apple).

Option 2: Browse a category

Set categoryUrl to any Rimi.ee category page URL. A top-level category URL includes every product in its subcategories, so one URL can return an entire department.

Example: https://www.rimi.ee/epood/ee/tooted/puu-ja-koogiviljad/c/SH-2 (Fruit & vegetables).

You can find category URLs by browsing rimi.ee/epood and copying the address of any category page. They always end in /c/SH-....

If both searchQuery and categoryUrl are empty, the actor defaults to searching for piim (milk) so a run with empty input still returns data.

Input

FieldTypeRequiredDescription
searchQueryStringNoProduct keyword in Estonian (e.g. "piim"). Ignored if categoryUrl is set.
categoryUrlStringNoA Rimi.ee category page URL to scrape (includes all subcategories).
maxResultsIntegerNoMaximum number of products to return (default: 100).
proxyConfigurationObjectNoProxy settings. Estonian residential proxies recommended.

Example input

{
"searchQuery": "piim",
"maxResults": 100,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"],
"apifyProxyCountry": "EE"
}
}

To scrape a whole department instead:

{
"categoryUrl": "https://www.rimi.ee/epood/ee/tooted/puu-ja-koogiviljad/c/SH-2",
"maxResults": 1000
}

Output

Each result is a flat JSON object:

FieldTypeExample
nameString"Piim Alma 2,5% 1,5l"
brandString"" (often empty for grocery/produce)
priceNumber1.39
currencyString"EUR"
originalPriceNumber1.59 (only on promotions)
pricePerUnitString"0.93 EUR/l"
inStockBooleantrue
productIdString"200280"
categoryCodeString"SH-11-8-37"
imageUrlStringPrimary product image URL
urlStringFull product page URL on rimi.ee
scrapedAtStringISO 8601 timestamp

Example output

{
"name": "Piim Alma 2,5% 1,5l",
"brand": "",
"price": 1.39,
"currency": "EUR",
"pricePerUnit": "0.93 EUR/l",
"inStock": true,
"productId": "200280",
"categoryCode": "SH-11-8-37",
"imageUrl": "https://rimibaltic-res.cloudinary.com/image/upload/.../MAT_200280_PCE_EE",
"url": "https://www.rimi.ee/epood/ee/tooted/piimatooted-munad-juust/piimad/piim/piim-alma-2-5-1-5l/p/200280",
"scrapedAt": "2026-07-07T09:20:58.776Z"
}

Notes on the data

  • Prices are numeric and in EUR. The per-unit price is a string like "0.93 EUR/l" or "1.19 EUR/kg".
  • Brand is frequently empty. Rimi does not expose a brand field in its product listing, and much of the grocery catalogue (fresh produce, bakery, in-house lines) has no brand at all. Name usually contains the brand where one applies.
  • originalPrice only appears on promotions. Most products are not discounted, so the field is absent for them.
  • inStock reflects listing availability. The Rimi grid only shows purchasable products.

Cost estimate

This actor uses lightweight HTTP requests (no headless browser). One request returns up to 100 products, so a full catalogue of ~15,000–20,000 products is only ~150–200 requests. Expect thousands of products per US$1 of Apify compute. Pricing is pay-per-result plus a small per-run start fee.

Proxy and reliability

Rimi.ee sits behind AWS CloudFront with Imperva/Incapsula fingerprinting. Single requests work from most IPs, but back-to-back requests from one datacenter IP can be throttled. The actor paces requests and, with a rotating Estonian residential proxy (the default prefill), runs smoothly through large category walks. Residential + country EE is recommended for the most reliable results.

Limitations / known issues

  • Brand and detailed nutrition/specs are not part of the listing payload and are not scraped (name carries most of the useful description).
  • Ratings and reviews are not available on Rimi.ee.
  • Very large full-catalogue runs are paced to stay under anti-bot thresholds, so they take longer than an unpaced scrape (still well under an hour end to end).

Building a Baltic or European grocery price dataset? These pair well with this actor:

  • Rimi.lv Scraper — Grocery products and prices from Rimi Latvia (same platform, sibling market).
  • Rohlik Scraper — Grocery products and prices from Rohlik.cz, Knuspr.de, and Gurkerl.at (Central Europe).
  • Tesco Scraper — UK grocery products and prices.
  • Albert Heijn Scraper — Dutch grocery products and prices.
  • Auchan Scraper — French grocery and hypermarket products.

Rimi Estonia runs the same platform as Rimi Latvia (rimi.lv) and Rimi Lithuania (rimi.lt) — sibling actors cover the other Baltic markets.