Chrono24 Scraper – Incremental ⌚
Pricing
from $2.00 / 1,000 results
Chrono24 Scraper – Incremental ⌚
[⭐$2/1k] Scrape watch listings from Chrono24 with prices, images, shipping costs & seller details. 50+ Filters. Allows incremental scraping to save costs. Returns structured JSON/CSV for price tracking, market analysis & research.
Pricing
from $2.00 / 1,000 results
Rating
5.0
(2)
Developer
Epic Scrapers
Maintained by CommunityActor stats
2
Bookmarked
14
Total users
8
Monthly active users
2 days ago
Last modified
Categories
Share
Chrono24 Scraper — Track Every Luxury Watch Listing, Automatically ⭐

Chrono24 has over 500,000 luxury watch listings and no public API. This actor gives you one anyway. Chrono24 Scraper pulls prices, images, seller details, shipping costs, and full spec sheets straight from Chrono24.com — no login, no API key, no browser, no reverse-engineering required.
Point it at a brand, a reference number, or 50+ combined filters, and get clean structured data back in seconds. Then — and this is where it gets useful — set it to run itself, so the data keeps arriving whether or not you're at your desk.
Use tracking ID to only be charged for products you haven't scraped before. This will be useful for incremental scraping, scheduled runs, and alerts.
Why dealers, collectors, and analysts run this on a schedule
A single scrape tells you what the market looks like right now. A scheduled scrape tells you what the market is doing — which is the actual question if you're pricing inventory, sourcing deals, or watching a reference you want to buy.
- Dealers catch competitor price drops the morning they happen, not a week later.
- Sourcers get first look at underpriced private-seller listings before other buyers notice.
- Collectors get notified the moment their exact watchlist reference shows up with box and papers.
- Analysts build real price-history datasets instead of one-off snapshots.
None of that works with a manual run. All of it works with a schedule.
Setting up a scheduled run (takes about two minutes)
You don't need to write any code or manage a server. Apify's built-in Scheduler handles the timing; this actor handles the scraping.
- Run the actor once with the input you want (e.g.
searchQuery: "Rolex Submariner 116610LN",sortOrder: "1"). Apify requires one successful run before a schedule can be attached. - Save it as a Task — this freezes your input configuration (search terms, filters, currency,
trackingId) into a reusable, named job. - Open Schedules in the Apify Console → Create new schedule → add your Task as an action.
- Pick a frequency. Use the visual builder or a cron expression (
0 7 * * *= every day at 7am) — Apify shows you the next 5 run times live so you can sanity-check it before saving. - Activate. From here it runs itself: daily, hourly, weekly — whatever your monitoring needs.
Combine this with a trackingId (see Input below) and the actor will skip listings it's already seen on repeat runs, so you only pay for and receive new data each time — ideal for daily price-drop alerts without duplicate noise.
Want to see it end-to-end before setting one up yourself? Apify has an official walkthrough:
📺 Getting Started with Apify: Schedule your Actor — a short demo showing exactly how to turn any actor run into a recurring, hands-off job.
📖 Full reference: Apify Schedules documentation · Actor Tasks documentation
Once a schedule is live, you can pair it with a webhook so you (or a Slack channel, or your own backend) get pinged automatically every time a run finishes — no need to check the Console at all.
What makes this the actor to use
- 50+ search filters — brand, model, reference number, price range, case diameter, movement type, dial color, bracelet material, complications, condition grade, delivery contents, seller type, seller country, and more. Search by keyword, or skip the keyword entirely and filter your way to exactly the inventory you want.
- Enriched detail mode — flip one switch to pull reference numbers, production year, case diameter, full descriptions, high-res images, and seller name/rating/review count for every listing.
- Five sort modes — relevance, price ascending, price descending, newest, popularity, or biggest savings.
- 35 currencies — USD, EUR, GBP, JPY, CHF, and 30 more, so pricing shows up the way your market expects it.
- Incremental scraping — a
trackingIdon repeat runs means you only see what's new, which is exactly what a scheduled job needs. - Zero browser overhead — no Playwright, no Puppeteer, no headless Chrome. It talks directly to the data, which means it's fast and cheap to run — including on a schedule where speed and cost compound.
- Real-time data, every run — no cache, no stale snapshots. What the actor returns is what Chrono24 shows a live visitor at that exact moment.
- Up to 10,000 listings per run, with automatic pagination, retries, and rate-limit handling built in.
What you get back
Every listing comes back as clean JSON with the essentials: listing ID, title, price and currency, listing URL, thumbnail images, seller location and type, certification status, live availability, stock status, and shipping cost.
Turn on enriched details and each listing also brings back its reference number, manufacturer, model and sub-model, condition grade, production year, case diameter, full delivery contents, a description, high-resolution images, and the seller's name, rating, and review count — everything you'd need to evaluate a listing without opening the page yourself.
Export straight from Apify as JSON, CSV, Excel, XML, or RSS, or push it directly to Google Sheets, S3, Dropbox, or your own webhook — no code required.
Real ways people use this
Daily price monitoring. Schedule the actor every morning for a specific reference with sortOrder: "1" (price ascending), pipe results into Google Sheets, and set conditional formatting to flag anything under your target price. Add a webhook and get pinged the second a deal appears.
Sourcing underpriced inventory. Run a broad search with enrichDetails: true, filter for sellerType: "PrivateSeller", and scan descriptions for phrases like "service due" — private sellers routinely underprice relative to dealers, and those watches can be flipped after a quick service.
Market and arbitrage research. Schedule weekly runs across a basket of references (Daytona, Nautilus, Royal Oak) and build a real price-history dataset. Compare location.countryCode against price to spot regional arbitrage — a Daytona can run 20% cheaper in one market than another.
Grey-market monitoring for brands. Track how far above retail your models are trading, which regions have the heaviest resale volume, and which models have inventory piling up — all from public listing data, refreshed on autopilot.
Personal watchlists. Serious collectors track 10–20 references. Instead of manually checking Chrono24 every day, schedule a daily run per reference with certified: true and get notified the moment one shows up with full box and papers.
Feeding a data pipeline. Run it across every major brand daily, forward output to your backend via webhook, and deduplicate on listingId to keep a live, always-current watch database powering your own app or dashboard.
Getting started
You don't need a Chrono24 account, an API key, or any technical setup. Give it a search term or a set of filters, hit run, and you'll have structured data in seconds — then follow the steps above to make it run itself.
{"searchQuery": "Rolex Daytona 116500LN","maxResults": 100,"enrichDetails": true,"currency": "USD","sortOrder": "1","certified": true,"countryIds": "US,CH,JP,UK","trackingId": "daytona-monitoring"}
Free users are limited to a maxResults of 10.
Full input parameters — search query, brand/model IDs, price range, condition, case diameter, materials, complications, water resistance, seller country, and more — are documented on the actor's Input tab in Apify Console, with inline descriptions for every field.
Output Examples
Non-enriched Result
{"trackingId": "","listingId": 47184331,"title": "Rolex","subtitle": "Ref. 126503G","price": 32030,"currency": "USD","listingUrl": "https://www.chrono24.com/rolex/ref-126503g--id47184331.htm","imageUrls": ["https://img.chrono24.com/images/uhren/47184331-5pya0e997z2kz5gh4kblwggr-Square210.jpg","https://img.chrono24.com/images/uhren/47184331-c8lxpocmvl8a7ejpyu02tzt6-Square210.jpg","https://img.chrono24.com/images/uhren/47184331-x89ts78rkbjayckd4q4qe6dz-Square210.jpg","https://img.chrono24.com/images/uhren/47184331-d01npnaucuakoxihmk9yfaqr-Square210.jpg","https://img.chrono24.com/images/uhren/47184331-aocgxiskp11kwmysqhqabtud-Square210.jpg"],"mainImage": "https://img.chrono24.com/images/uhren/47184331-5pya0e997z2kz5gh4kblwggr-Square210.jpg","location": {"city": "Tokyo","countryCode": "JP","countryName": "Japan"},"sellerType": "Dealer","certifiedStatus": false,"listingStatus": "Available","watchStockInfo": "OnOrder","badge": null,"shippingCost": {"amount": 189,"currency": "USD"}}
Enriched Result
{"trackingId": "","listingId": 47189364,"title": "Rolex Daytona","subtitle": "Ref. 6263 - BIG RED - Year 1978","price": 99314,"currency": "USD","listingUrl": "https://www.chrono24.com/rolex/rolex-daytona--id47189364.htm","imageUrls": ["https://img.chrono24.com/images/uhren/47189364-tcwqrcwtx3gt02an3npndvqe-Square210.jpg","https://img.chrono24.com/images/uhren/47189364-d1ktnudxbjiltp9ydjzlzqy2-Square210.jpg","https://img.chrono24.com/images/uhren/47189364-a2fveb5onjwz309d0tr05ahd-Square210.jpg","https://img.chrono24.com/images/uhren/47189364-1m8vrnn5p4ar9llrmk3ovise-Square210.jpg","https://img.chrono24.com/images/uhren/47189364-rpgkuu1j0gv5m9vtqppitcx1-Square210.jpg"],"mainImage": "https://img.chrono24.com/images/uhren/47189364-tcwqrcwtx3gt02an3npndvqe-Square210.jpg","location": {"city": "ROMA","countryCode": "IT","countryName": "Italy"},"sellerType": "Dealer","certifiedStatus": false,"listingStatus": "Available","watchStockInfo": "InStock","badge": null,"shippingCost": {"amount": 234,"currency": "USD"},"detail": {"referenceNumber": "6263","manufacturer": "Rolex","manufacturerId": 221,"model": "Daytona","subModel": null,"productId": 265,"productType": "Watch_Wristwatch","conditionNew": false,"condition": "Used (good)","yearOfProduction": "1978","caseDiameter": "37 mm","scopeOfDelivery": "No original box, no original papers","description": "Rolex\r<br>\nRolex Oyster Cosmograph Daytona\r<br>\nRef. 6263\r<br>\nSilvered Dial - Big Red\r<br>\nSteel Case\r<br>\nSteel Bracelet \r<br>\nManual Winding\r<br>\nCal. 727\r<br>\nDiameter: 37mm\r<br>\nSerial Number: 5.5XX.XXX\r<br>\nYear: 1978 Circa\r<br>\n\r<br>\nOverall, the Rolex Daytona Ref. 6263 is in excellent condition. Case, dial and bracelet are well preserved, showing its signs of use due to the age.\r<br>\n\r<br>\nPhotos are part of description.\r<br>\n\r<br>\nThe Rolex Ref. 6263 was just serviced by our watchmaker and covered by 12 month mechanical warranty.\r<br>\n\r<br>\nThe watch can be viewed, by appointment, at our headquarters in Rome (city center)","availability": "green","sold": false,"reserved": false,"price": {"amount": 99314,"currency": "USD"},"fullImageUrls": ["https://img.chrono24.com/images/uhren/47189364-tcwqrcwtx3gt02an3npndvqe-Square420.jpg","https://img.chrono24.com/images/uhren/47189364-d1ktnudxbjiltp9ydjzlzqy2-Square420.jpg","https://img.chrono24.com/images/uhren/47189364-a2fveb5onjwz309d0tr05ahd-Square420.jpg","https://img.chrono24.com/images/uhren/47189364-1m8vrnn5p4ar9llrmk3ovise-Square420.jpg","https://img.chrono24.com/images/uhren/47189364-rpgkuu1j0gv5m9vtqppitcx1-Square420.jpg","https://img.chrono24.com/images/uhren/47189364-baajrio7ekituhjtnafx1fnp-Square420.jpg","https://img.chrono24.com/images/uhren/47189364-bpkbhojjv2020nfipb65p4zp-Square420.jpg","https://img.chrono24.com/images/uhren/47189364-dhtwk0ijn55yjgalosnqxomz-Square420.jpg"],"mainImage": "https://img.chrono24.com/images/uhren/47189364-tcwqrcwtx3gt02an3npndvqe-Square420.jpg","seller": {"id": 24171,"name": "Blu Time","rating": null,"reviewCount": null,"merchantLogin": "blutimewatches"},"detailUrl": "https://www.chrono24.com/rolex/rolex-daytona--id47189364.htm?SETLANG=en_US&SETCURR=USD"}}
Frequently Asked Questions
Do I need a Chrono24 account or API key? No. The actor reads publicly available listing data — no login, password, or API key needed on your end.
How many listings can I pull per run? Up to 10,000 on paid plans. Free-tier accounts get 10 listings per run, enough to check the output before committing to a larger job.
How fresh is the data? Completely live — every run queries Chrono24 in real time, with no caching or delay.
Can I really automate this without writing code? Yes. Apify's Scheduler is a point-and-click feature in the Console — no scripts, no server, no cron knowledge required (though cron syntax is supported if you prefer it). See the setup steps and video above.
What's the difference between basic and enriched mode? Basic mode is fast and cheap — pricing, images, seller location, shipping, and status. Enriched mode adds one extra request per listing to pull reference numbers, condition, full descriptions, and seller ratings. Use enriched when you need the full picture; use basic for high-volume monitoring.
Is this better than building against Chrono24's own API? Chrono24 doesn't offer a public API. Its mobile app uses an undocumented, HMAC-signed private API that requires reverse-engineering an APK to access. This actor already did that work — you get documented, structured data with no maintenance burden.
What alternatives exist if Chrono24 isn't the right fit? WatchBox/The 1916 Company, Bob's Watches, Jomashop, Watchfinder, and Hodinkee all sell pre-owned or grey-market watches, but none come close to Chrono24's 500,000+ listing inventory across dealers and private sellers worldwide — which is why this actor targets Chrono24 specifically.
⚠️ Disclaimer
This actor is an independent tool and is not affiliated with, endorsed by, or sponsored by Chrono24 GmbH, its parent company, or any of its subsidiaries. All trademarks are the property of their respective owners.
This actor accesses only publicly available watch listing data on chrono24.com. You are solely responsible for ensuring your use complies with the site's Terms of Service and applicable laws.
🫶 Support
If you need any help at all, or has any feedback/feature request, feel free to email me at jwlben11@gmail.com. I love talking to users!
If you found the scraper useful, leave a nice review! It helps the actor rank and bring more users. Cheers 👋