KICKS Scraper - Nordic Beauty Prices and EAN
Pricing
from $1.20 / 1,000 result scrapeds
KICKS Scraper - Nordic Beauty Prices and EAN
Scrape product data from KICKS (kicks.se, kicks.no, kicks.fi), the Nordic beauty retailer. Get price, price before campaign, EAN, brand, size, category, rating, review count and stock status for every variant in SEK, NOK or EUR.
Pricing
from $1.20 / 1,000 result scrapeds
Rating
0.0
(0)
Developer
Studio Amba
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
20 hours ago
Last modified
Categories
Share
KICKS Scraper
Pull product data from KICKS, the Nordic beauty retailer, in Sweden (kicks.se), Norway (kicks.no) and Finland (kicks.fi). The actor returns one row per product variant with the EAN barcode, the selling price in SEK, NOK or EUR, the price before campaign, the discount, category, rating, review count and stock status.
KICKS sells make-up, skincare, fragrance, hair care and personal care from several thousand brands. If you track Nordic beauty prices or match Nordic products against shops in other countries by EAN, this actor gives you a repeatable feed.
How to scrape KICKS data
There are three ways to tell the actor which products to read. First choose the storefront in country: se, no or fi.
- Paste product pages into
productUrls, for examplehttps://www.kicks.se/givenchy-gentleman-reserve-privee-edp-100-ml. - Leave
productUrlsempty and fillurlKeywordswith brand names or words from the product address, for examplegivenchyorla-roche-posay. The actor reads the matching products from the public product sitemap. - Leave both empty. The actor reads the first products from the sitemap.
The actor stops at maxResults. If you leave everything empty, it reads the first 50 rows.
Every address on KICKS is one variant, which is one size or one shade. Each variant has its own EAN and price, so each address becomes one row.
Search result pages are not read. The actor requests product pages and sitemaps, and it stays away from the paths that robots.txt excludes. Requests are spaced out.
Input
| Field | Type | Description |
|---|---|---|
country | text | Storefront: se for Sweden, no for Norway, fi for Finland. Default se. |
productUrls | list of text | Product pages from the chosen storefront. Up to 100. |
urlKeywords | list of text | Brand names or address words. Used when productUrls is empty. |
maxResults | number | Maximum number of rows. Default 50. |
proxyConfiguration | object | Proxy for the requests. Default is Apify Proxy. |
Example input:
{"country": "no","urlKeywords": ["givenchy"],"maxResults": 100}
Output
Each row is one variant. Example:
{"productId": "774168","ean": "3474636976027","name": "L'Oréal Professionnel Série Expert Blondifier Masque 250 ml","size": "250 ml","brand": "L'Oréal Professionnel","category": "Hårinpackning","price": 332,"originalPrice": 415,"discountPercent": 20,"currency": "SEK","unitQuantity": "250 MLT","rating": null,"reviewCount": 0,"inStock": true,"availability": "InStock","imageUrl": "https://images.matas.dk/Assets_v3/700001-800000/709001-710000/709201-709300/709273/product_v1_x2.jpg","url": "https://www.kicks.se/loreal-professionnel-serie-expert-blondifier-masque-250-ml","scrapedAt": "2026-11-03T15:04:27.636Z","country": "se","language": "sv"}
| Field | Description |
|---|---|
productId | KICKS article number of the variant. |
ean | EAN or GTIN barcode as published by the shop. |
name, size, brand, category | Product name, size or shade, brand and product group in the language of the storefront. |
price | Selling price in the storefront currency, VAT included. When a campaign is running, this is the campaign price. |
originalPrice, discountPercent | Price without campaign and the percentage between the two. Empty when the selling price is not lower. |
currency | SEK for Sweden, NOK for Norway, EUR for Finland. |
unitQuantity | Quantity the shop uses for its unit price, for example 250 MLT. |
rating, reviewCount | Average rating out of 5 and number of reviews. Rating is empty when there are no reviews. |
inStock, availability | Stock status as published. |
imageUrl, url | Image of the variant and product page. |
country, language | Storefront country and language code. |
What the data does not contain
Seller names, delivery times, store stock per shop and unit prices per 100 ml are not in the output. Member prices from the KICKS club are not in the output.
Pricing
The actor is billed per result. You pay for each row that is returned, and a run that returns nothing costs only the Apify platform usage.
Tips
- Use
urlKeywordswith a brand name to read one brand. The brand is part of most product addresses. - Use the
eanfield to match products against other shops, in the Nordics or in other countries. Some EANs carry leading zeros, as the shop publishes them. - Run the same keywords for
se,noandfito compare the three markets. The address of the same product can differ per country, so match onean. - Schedule the actor daily or weekly to build a price history and to see when campaigns start and end through
originalPrice. - Pages that carry no structured product data are skipped without a row and counted in the run log.
- The cost of a run settles after the run SUCCEEDED, so the usage figure on a running job is not final.
- A keyword that matches no product ends the run with a message saying no products matched.
Is it legal to scrape KICKS?
The actor reads public product pages that anyone can open without logging in. It collects product information only, no personal data. Check your own use of the data against the site terms and the laws that apply to you.
FAQ
Does it need a login? No.
How many products does the site have? The product sitemap lists between 40,000 and 44,000 addresses per country. Each address is one variant.
Which currencies are used? Swedish krona on kicks.se, Norwegian krone on kicks.no and euro on kicks.fi.
Which fields are always filled? Name, price, currency, URL, product ID, brand, availability and EAN.
What is the difference between price and originalPrice? price is the selling price. originalPrice is the price without campaign, filled when it is higher.
Can I get a whole brand? Yes. Set urlKeywords to the brand and maxResults to a high number. The run reads one page per variant.
Does it work for kicks.dk? No. The Danish site is not part of this actor.
Support
Open an issue on the actor page if a field is missing or a variant is read wrong.