Chrono24 Watch Scraper
Pricing
Pay per event
Chrono24 Watch Scraper
Scrape Chrono24 luxury watch listings: brand, model, reference number, price, condition, year, and seller location. Residential-proxy powered — we handle the blocks.
Pricing
Pay per event
Rating
0.0
(0)
Developer
DevilScrapes
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Chrono24 Watch Scraper
$2.50 / 1 000 results — pay only for results, no credit card to try.
Scrape Chrono24 luxury watch listings by brand or specific model page: model name, reference number, price, condition, year of production, and seller location. Point it at a brand slug and it does the dirty work so your dataset stays clean.
🔎 What this scrapes
Chrono24 brand and model index pages, plus (optionally) each listing's detail page — one row per watch listing, with brand, model, reference number, price, condition, year, seller location, and a canonical listing URL.
🔥 Features
- Discover listings by brand slug (
rolex,omega,patek-philippe, …) or scope to a specific model taxonomy page. - Optional detail-page enrichment for reference number, condition, year of production, and seller country/city.
- 🌐 We rotate residential proxies through Apify Proxy on every block — fresh session, fresh exit IP, pinned to your chosen country.
- 🔁 We retry with exponential backoff and rotate browser fingerprints when the target pushes back.
- 🧊 Clean, Pydantic-validated rows with stable ids and ISO-8601 timestamps — dedup'd automatically within a run.
💡 Use cases
- Watch dealers and appraisers tracking active listing pools for a brand or reference.
- Insurers building resale/replacement-value comparables.
- Market researchers monitoring pricing trends across watch brands.
⚙️ How to use it
- Add one or more brand slugs (or specific model URLs) to the input.
- Choose whether to enrich each listing with its detail page.
- Run the Actor — results land in the default dataset.
📥 Input
| Field | Type | Default | Description |
|---|---|---|---|
brands | array of strings | [] | Chrono24 brand URL slugs, e.g. "rolex". At least one of brands / modelUrls is required. |
modelUrls | array of strings | — | Specific Chrono24 model taxonomy pages to scope discovery. |
maxResultsPerTarget | integer | 120 | Cap on rows collected per brand or model URL. |
enrichDetails | boolean | true | Fetch each listing's detail page for reference/condition/year/location. |
proxyCountryCode | string | "US" | ISO-3166 alpha-2 pinned to the proxy session. |
runTimeoutSeconds | integer | 1200 | Wall-clock budget for the run. |
proxyConfiguration | object | RESIDENTIAL | Apify Proxy configuration. |
{"brands": ["rolex"],"maxResultsPerTarget": 120,"enrichDetails": true,"proxyCountryCode": "US","runTimeoutSeconds": 1200,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"]}}
📤 Output
One dataset row per watch listing:
{"id": "47176512","brand": "rolex","model_name": "Rolex Datejust Datejust Factory Grey Tapestry Dial Steel 36mm Jubilee 16234","reference_number": "16234","price": 6999.0,"currency": "USD","condition": "Very good","year_of_production": 1990,"seller_country": "United States","seller_city": "New York","image_url": "https://cdn2.chrono24.com/images/uhren/47176512-abc123.jpg","listing_url": "https://www.chrono24.com/rolex/datejust--id47176512.htm","source_target": "rolex","scraped_at": "2026-08-10T14:32:07.512381+00:00"}
💰 Pricing
Pay-Per-Event — you're only charged for what lands in your dataset.
| Event | Price |
|---|---|
| Actor start | $0.01 per run |
| Result scraped | $0.00249 per listing row |
At 1,000 rows: $2.50 — no subscription, no per-page fees.
🚧 Limitations
- Free-text search on Chrono24 is not a usable data source (client-rendered); discovery is by brand slug or model taxonomy page only.
- Only the
.comEnglish/US storefront is covered in this version. - No price-history or sold-listing archives — active listings only.
- No seller-profile enrichment (ratings, response time, inventory count).
❓ FAQ
Can I scrape a specific model instead of a whole brand?
Yes — pass a Chrono24 model taxonomy URL (--mod<N>.htm) in modelUrls.
Why is a field null?
Enrichment fields (reference_number, condition, year_of_production,
seller_country, seller_city) are only populated when enrichDetails
is true, and are best-effort per listing — one unparseable detail page
never blocks the rest of your run.
Do I need my own proxy? No — Apify Proxy (residential) is wired in by default.
🗣️ Your feedback
Found a bug or have a feature request? Open an issue via apify.com/DevilScrapes — we read every message and ship fixes fast.