Pepper.pl Scraper - Polish Deals & Coupons avatar

Pepper.pl Scraper - Polish Deals & Coupons

Pricing

from $1.20 / 1,000 result scrapeds

Go to Apify Store
Pepper.pl Scraper - Polish Deals & Coupons

Pepper.pl Scraper - Polish Deals & Coupons

Extract live deals, discount codes and prices from pepper.pl, Poland's largest deals community (Pepper Global network). Get titles, prices, discount %, merchant, comment/heat score, coupon codes and expiry by category. No login required.

Pricing

from $1.20 / 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

4 days ago

Last modified

Categories

Share

Pepper.pl Scraper

Extract live deals and coupon codes from pepper.pl, Poland's largest deals community (part of the Pepper Global network, alongside mydealz.de, dealabs.com and hotukdeals.com).

Why use this actor?

pepper.pl has no public API and its own keyword-search backend is off-limits to crawlers (disallowed in robots.txt, along with every sort/filter query parameter). This actor reads the site the way a real category browser does — pulling the same structured deal data pepper.pl's own frontend uses to render each card — so you get clean, structured deals, discount codes, prices and community heat scores without scraping raw HTML by CSS selector. Useful for price-monitoring tools, deal-alert bots, market research on Polish ecommerce discounting, or feeding a broader European deals aggregator.

How to scrape Pepper.pl data

  1. Pick a category or product-keyword slug from the pepper.pl URL bar — visit pepper.pl/grupa/{slug} in a browser and copy the slug (e.g. elektronika, moda, dom, gry, or a specific product/brand like iphone or samsung).
  2. Set category to that slug, or leave it empty to pull the site-wide "hot deals" feed instead.
  3. Set maxResults (results load 30 at a time).
  4. Run the actor. Each pepper.pl deal thread becomes one row in the output dataset: title, price, original price, discount %, merchant, shop domain, image, heat score, comment count, category, voucher code, and expiry when the poster set one.
  5. Export the dataset as JSON, CSV, or connect it via API to your own pipeline.

There is no login, no cookie banner to dismiss, and no CAPTCHA in the way — pepper.pl's category pages are plain server-rendered HTML.

A note on pepper.pl's own data

pepper.pl is a community-posted deals board, not a retailer's own product feed. Two things follow directly from that and aren't scraper bugs:

  • price is what the poster typed in, and on a meaningful share of threads it doesn't exactly match the price mentioned in the title text itself. Always treat the title as the human-readable source of truth and price/originalPrice as the structured (but occasionally imprecise) numeric fields.
  • price is legitimately empty on some deals. Freebies, giveaways, and pure coupon-code posts often carry no numeric price at all. In a sample category run, price coverage was 90% — the missing 10% is real freebie/no-price content, not a missing DOM fallback.

Input

FieldTypeRequiredDescription
categoryStringNopepper.pl category/keyword slug from /grupa/{slug} (e.g. elektronika, moda, dom, gry, iphone). Empty = site-wide hot deals feed.
maxResultsIntegerNoMaximum deals to return (default: 50, loads in pages of 30).
proxyConfigurationObjectNoProxy settings. Defaults to residential, Poland.

Output

Each result contains:

FieldTypeExample
dealIdString"1321329"
titleString"[Premiera] Smartwatch Samsung Galaxy Watch 9 ... za 1399zł"
urlStringFull pepper.pl deal page URL
priceNumber | null1399
originalPriceNumber | null1949
discountPercentageNumber | null28
currencyString"PLN"
merchantNameString | null"Samsung"
shopDomainString | null"www.samsung.com"
imageUrlString | nullDeal image on pepper.pl's static CDN
temperatureNumber | null2394.9 (community heat score)
temperatureLevelString | null"Hot3"
commentCountNumber | null1538
categoryString | null"Elektronika"
categorySlugString | null"elektronika"
voucherCodeString | null"GALAXYSTUDIO"
isExpiredBooleanfalse
isHotBooleantrue
isNewBooleanfalse
freeShippingBoolean | nulltrue
publishedAtString | nullISO 8601 timestamp
expiresAtString | nullISO 8601 timestamp, only when the poster set one
searchCategoryString | nullInput echo
scrapedAtStringISO timestamp of the scrape

Example output

{
"dealId": "1321329",
"title": "[Premiera] Smartwatch Samsung Galaxy Watch 9 i Samsung Galaxy Watch Ultra2 I Zwrot do 400zł + odkup + Słuchawki Buds 3 GRATIS l Kombinacje",
"url": "https://www.pepper.pl/promocje/premiera-smartwatch-samsung-galaxy-watch-9-i-samsung-galaxy-watch-ultra2-i-zwrot-do-400zl-odkup-sluchawki-buds-3-gratis-l-kombinacje-1321329",
"price": 1399,
"originalPrice": 1949,
"discountPercentage": null,
"currency": "PLN",
"merchantName": "Samsung",
"shopDomain": "www.samsung.com",
"imageUrl": "https://static.pepper.pl/threads/raw/v0gB2/1321329_1.jpg",
"temperature": 2394.9,
"temperatureLevel": "Hot3",
"commentCount": 1538,
"category": "Elektronika",
"categorySlug": "elektronika",
"voucherCode": "GALAXYSTUDIO + kod premierowy \"QH\" + kod 100pln",
"isExpired": false,
"isHot": true,
"isNew": false,
"freeShipping": true,
"publishedAt": "2026-07-23T17:19:27.000Z",
"expiresAt": null,
"searchCategory": "elektronika",
"scrapedAt": "2026-08-06T09:08:31.552Z"
}

Cost estimate

This actor uses approximately 1 request per 30 results (one listing page = 30 deals), making it one of the cheapest scrapers in the fleet per item — well under $0.01 per 30 deals in Apify compute alone.

Limitations

  • No robots.txt-compliant keyword search exists on pepper.pl (its /search route, /rest-api/ and every sort/filter query parameter are disallowed for crawlers). This actor browses by category/keyword slug instead — the same path a visitor takes from the site's own category menu.
  • price and discountPercentage are community-entered fields and are sometimes absent, approximate, or (rarely) inconsistent with the deal title — see the note above.
  • Pagination past the last page of a category returns HTTP 410 (Gone), which this actor treats as the normal end-of-results signal.
  • A run's usage cost only settles after the run reports SUCCEEDED — checking cost mid-run under-reports actual spend.
  • Data is scraped from the public website and may change without notice.
  • Mydealz.de Scraper — the German sibling site on the same Pepper Global platform.
  • Other Studio AMBA scrapers cover major Polish ecommerce and retail sites for price monitoring and market research.

Need this data on a schedule, or a custom version?

We run this scraper as a managed service for businesses: scheduled runs, deduplication, delta detection, and delivery to your inbox, Google Sheets, or API — maintenance included. We can also build a custom version with your exact fields and filters, or combine multiple sources into one feed.

See studioamba.dev/services or email hello@studioamba.dev for a free data sample. We maintain 300+ European web scrapers and answer within one business day.