Otto.de Listings Scraper
Pricing
from $2.50 / 1,000 results
Otto.de Listings Scraper
Extract product listings from Otto.de category and search pages: IDs, names, brands, prices, sale and comparative prices, delivery dates, color variants, availability and ratings, with automatic pagination. Built for German e-commerce price monitoring and assortment tracking.
Pricing
from $2.50 / 1,000 results
Rating
0.0
(0)
Developer
FalconScrape
Maintained by CommunityActor stats
1
Bookmarked
16
Total users
5
Monthly active users
3 hours ago
Last modified
Categories
Share
π Otto.de Listings Scraper
Easily extract product listings from Otto.de, one of Germany's largest e-commerce marketplaces. The Otto.de Listings Scraper gathers structured product data from any category or search results page β perfect for price monitoring, assortment tracking, and competitive analysis on the German market.
β¨ Features
- π·οΈ Structured Product Data: Retrieve product IDs, names, brands, prices, images, ratings, availability, and direct URLs.
- π Delivery & Pricing Context: Delivery promise text and date, sale flag, "ab" (starting-price) flag, and comparative / suggested retail prices.
- π¨ Color Variants & Sizes: Every color option on the card (name, hex code, variation ID, selected state) plus a flag for products sold in several sizes.
- π Category & Search Support: Point the scraper at any Otto.de category URL (e.g.
/mode/jeans/) or search results page (e.g./suche/levis-jeans/), or pass search queries directly. - π Automatic Pagination: The scraper walks through paginated listings automatically until your
maxItemscap is reached. - β‘ Fast & Lightweight: Pure HTTP + Cheerio β no headless browser, no anti-bot bypass needed for listings. ~120 tiles per request.
- π©πͺ German Marketplace Specialist: Tuned for Otto.de's server-rendered HTML and JSON-LD product schema.
π οΈ How It Works
- Provide Start URLs or Search Queries β Add Otto.de category URLs, search result URLs, or plain search terms in the Input tab.
- Set your limits β Pick how many items to scrape with
maxItems(default50). - Run the Scraper β Start the run and receive structured JSON output in the dataset, ready to download as JSON, CSV, Excel, or HTML.
βοΈ Input
Configure the scraper with the following input fields:
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
startUrls | array | No* | [] | List of Otto.de category or search URLs, e.g. https://www.otto.de/mode/jeans/ or https://www.otto.de/suche/levis-jeans/. |
searchQueries | array | No* | [] | List of plain search terms. Each one is converted to https://www.otto.de/suche/{slug}/ automatically. |
maxItems | integer | No | 50 | Maximum number of unique products to push to the dataset across all start URLs. Set to 0 for unlimited (capped by Otto's catalog). |
proxyConfiguration | object | No | no proxy | Optional Apify Proxy configuration. Listings work fine without a proxy at moderate volume; enable proxy if you scale to high throughput. |
* At least one of startUrls or searchQueries must be provided.
Example input
{"startUrls": [{ "url": "https://www.otto.de/mode/jeans/" },{ "url": "https://www.otto.de/suche/levis-jeans/" }],"searchQueries": [{ "query": "iphone 15" }],"maxItems": 240}
π Sample Output Data
The scraper produces structured JSON output with key product details per listing. Example:
[{"productId": "481146846","articleNumber": "31633336","variationId": "1122197659","listPosition": 1,"origin": "sponsored","name": "Arizona Bootcut-Jeans Baby-Boot Bootcut-Stil, figurbetonte Passform, mit Used-Effekten","url": "https://www.otto.de/p/arizona-bootcut-jeans-baby-boot-bootcut-stil-figurbetonte-passform-mit-used-effekten-481146846/?variationId=1122197659","image": "https://i.otto.de/i/otto/a4767196-5aaa-517e-b921-5623944d4f6f?$responsive_ft2$","brand": "Arizona","price": 35.99,"currency": "EUR","availability": "AVAILABLE","ratingValue": 4,"ratingCount": 896,"dataCompleteness": "full","deliveryText": "lieferbar - in 3-4 Werktagen bei dir","deliveryDate": "bis Sa., 26. Sept. bei dir","isStartingPrice": true,"onSale": true,"comparativePrice": 59.9,"suggestedRetailPrice": 59.9,"colors": [{ "variationId": "1122197659", "name": "blue", "baseColor": "blau", "hexCode": "516D89", "selected": true },{ "variationId": "1122197660", "name": "black", "baseColor": "schwarz", "hexCode": "202020", "selected": false }],"multipleSizes": true,"source": "listing","scrapedAt": "2026-05-21T15:20:54.597Z"},{"productId": "S0HAG0V7","articleNumber": "S0HAG0V7SQ2","variationId": "S0HAG0V701HK","listPosition": 52,"origin": "organic","name": "Amaci&Sons Weite Jeans BOX HILL 90s Baggy Jeans Herren 90s Denim Jeans Hose Straight Baggy","url": "https://www.otto.de/p/amaci-sons-weite-jeans-box-hill-90s-baggy-jeans-herren-90s-denim-jeans-hose-straight-baggy-S0HAG0V7/","image": null,"brand": null,"price": null,"currency": null,"availability": null,"ratingValue": null,"ratingCount": null,"dataCompleteness": "identityOnly","deliveryText": null,"deliveryDate": null,"isStartingPrice": null,"onSale": null,"comparativePrice": null,"suggestedRetailPrice": null,"colors": null,"multipleSizes": null,"source": "listing","scrapedAt": "2026-05-21T15:20:54.597Z"}]
Note: Otto.de fully hydrates only the first ~18 tiles of each listing page. Those records have dataCompleteness: "full". The remaining tiles have dataCompleteness: "identityOnly": product ID, name, and URL only, with price, delivery, colors, and the other detail fields set to null (unknown, not missing from Otto).
A color's variationId is the variant Otto shows for that color. It is not guaranteed to be the same size as the selected variant.
Track Otto.de prices, monitor stock, and benchmark brands with Otto.de Listings Scraper today! π