budni Scraper — German Drugstore Products & Prices avatar

budni Scraper — German Drugstore Products & Prices

Pricing

from $1.20 / 1,000 result scrapeds

Go to Apify Store
budni Scraper — German Drugstore Products & Prices

budni Scraper — German Drugstore Products & Prices

Scrape products, prices, brands, EAN codes and price-per-unit from budni.de — the Hamburg-area German drugstore chain. Search by keyword, full pagination. No login needed.

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

14 hours ago

Last modified

Categories

Share

Scrape products, prices, brands, EAN codes and price-per-unit from budni.de, a Hamburg-area German drugstore chain with roughly 200 stores. Search by keyword and get clean, structured JSON. No login required.

Built for price monitoring, catalog research, and competitive analysis in the German drugstore/retail space — the same category as our rossmann-scraper, mueller-de-scraper and dm-scraper actors.

What it does

budni.de is a Next.js storefront. Its search results page embeds the full product catalog match (name, brand, price, EAN, price-per-unit, discount) directly as structured data in the page response — no anti-bot protection was found on this endpoint, so the actor talks to it with plain HTTP requests, no browser needed.

  • Keyword search — pass any search term (shampoo, zahnpasta, deo, windeln) and get matching products.
  • Full pagination — most search terms match hundreds of products on budni.de (e.g. shampoo → 945 matches, deo → 546); the actor walks every page until it hits your maxResults or runs out of matches, not just the first page.
  • Deduplication — products are deduplicated by budni's internal article ID within a run.
  • Complete pricing on every item — unlike some storefronts that only show price on promotional items, budni's own data includes the full price, price-per-unit, and (when on offer) the discount and pre-discount price for every single product, not just the ones on sale.

Output

Each product is one record. Real examples from a live test run (query shampoo):

{
"name": "Super Strong Shampoo Bambus",
"brand": "SANTE",
"price": 3.99,
"currency": "EUR",
"url": "https://www.budni.de/sortiment/produkte/6170803007",
"scrapedAt": "2026-09-06T14:20:19.905Z",
"pricePerUnit": "15.96 €/L",
"ean": "4055297220446",
"productId": "6170803007",
"imageUrl": "https://api-gateway-prod.budni-service.app/image/public/epim/68df3e21d3890fa42e90a9cb660d464ee79dfccaacb5f886b6f6148699bd6a70/medium.webp",
"language": "de"
}

An item on a weekly offer, with the discount fields populated:

{
"name": "Shampoo Mango/Avocado",
"brand": "JEAN & LEN",
"price": 3.49,
"currency": "EUR",
"url": "https://www.budni.de/sortiment/produkte/6373461004",
"scrapedAt": "2026-09-06T14:20:19.906Z",
"originalPrice": 4.29,
"pricePerUnit": "11.63 €/L",
"discount": "-18%",
"ean": "4260602128694",
"productId": "6373461004",
"imageUrl": "https://api-gateway-prod.budni-service.app/image/public/epim/08534e681048f45f0fdb3398157a7e911565fbd730ca603b5ed29bd99844ad4d/medium.webp",
"language": "de"
}

Fields

FieldDescription
nameProduct name
brandBrand / manufacturer
priceCurrent selling price as a number (already reflects any active discount)
currencyCurrency code (EUR)
urlFull product page URL
originalPricePre-discount manufacturer recommended price, when the item is on offer
pricePerUnitPrice per standard unit, e.g. "15.96 €/L"
discountDiscount label (e.g. -18%), only present on offer items
eanEAN/GTIN barcode number
productIdbudni.de's internal article ID
imageUrlPrimary product image URL
languageContent language (de)
scrapedAtISO 8601 timestamp of the scrape

In a 30-item test run, name, brand, price, currency, url, ean, productId, imageUrl and pricePerUnit were populated on 100% of results — originalPrice and discount only appear on the subset of items currently on a weekly offer, which is correct (not a data-quality gap).

inStock is intentionally not included: budni.de only exposes real per-store availability once you pick a physical "Filiale" on the site, so there is no reliable national stock signal to scrape. We'd rather leave the field out entirely than guess.

How to scrape budni data

  1. Open the actor and set a Search Query (for example shampoo, deo, zahnpasta, duschgel). Leave it empty and it defaults to shampoo.
  2. Set Max Results to the number of products you want — budni.de returns 24 products per page and most keywords match hundreds, so this actor can pull deep result sets, not just a first page.
  3. Leave Proxy Configuration on its default (automatic Apify proxy) — budni.de has no anti-bot protection on product search, so residential proxies aren't needed here.
  4. Click Start. When the run finishes, download the dataset as JSON, CSV or Excel, or pull it from the API.

Input example

{
"searchQuery": "deo",
"maxResults": 200
}

Input example — quick test run

{
"searchQuery": "zahnpasta",
"maxResults": 5
}

Cost estimate

This actor runs on the STANDARD pay-per-result pricing tier. Each request is a single plain-HTTP call that returns up to 24 fully-populated products (no browser render, no per-product detail-page hop needed) — this is one of the cheapest-to-run actors in the drugstore category. A 200-result run typically completes in well under a minute.

A run's usage cost only settles after it reports SUCCEEDED — checking cost or dataset item counts while a run is still in progress will undercount both, so wait for the run to finish before relying on those numbers.

Common use cases

  • Price monitoring — track prices across drugstore categories (personal care, household, baby) over time.
  • Catalog research — pull structured data on budni's assortment for a category or brand.
  • Competitive analysis — compare budni's pricing against Rossmann, dm, and Müller.
  • Regional coverage — budni is a Hamburg-area chain not covered by the bigger national drugstore actors, useful when you need North German pricing specifically.

Limitations

  • Covers the German budni.de storefront (EUR pricing) only.
  • No per-store stock/availability data — budni only exposes that once a physical store is selected on the site itself, and it isn't reliable at a national level.
  • Search relevance and result order follow budni's own ranking; the actor doesn't re-rank results.
  • Product descriptions aren't included — budni only publishes the long-form description on the individual product page, not in the search results this actor reads. Name, brand, price, EAN and price-per-unit are all included.

FAQ

Does this need a login? No. The actor only reads publicly published product data. No account, password or cookies are required.

Does it use a headless browser? No. budni.de's search results carry the full product data (including price) in the page response itself, so this actor uses plain HTTP requests — faster and cheaper than a browser-based actor.

Why is originalPrice sometimes missing? Most products are listed at their normal price with no active promotion. originalPrice and discount only appear when budni currently has a markdown on that specific item.

How far does pagination go? As far as maxResults and the site's own match count allow. Common search terms like shampoo or deo match hundreds of products on budni.de, and the actor pages through all of them (24 at a time, matching the site's own page size) until either limit is hit.

Is this legal? The actor collects publicly available product and pricing information. You are responsible for using the data in line with budni.de's terms and applicable law.

Maintained by Studio Amba

We run 700+ scrapers for European websites, and the priority is keeping every one of them working. Automated runs test this actor against the live site and verify the output is complete. When the website changes, the scraper usually gets repaired the same day, without you having to report anything. Questions and issues go straight to the people who built it, and most get an answer the same day.

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.

Disclaimer

This actor is an independent tool and is not affiliated with, endorsed by, or connected to BUDNI Handels- und Service GmbH & Co. KG or budni.de. All product data belongs to its respective owners.