VOOZH about

URL: https://apify.com/sian.agency/chrono24-watch-scraper?fpr=sian

⇱ Chrono24 Luxury Watch Scraper Β· Apify


Pricing

from $2.50 / 1,000 overview listings

Go to Apify Store

Chrono24 Luxury Watch Scraper

Scrape luxury watches from Chrono24 β€” Rolex, Omega, Patek Philippe & more. Fast price/spec overview or full detail: reference, movement, case, dial, bracelet, year, condition, box & papers, seller. Dual-currency EUR/USD, clean JSON/CSV, no code.

Pricing

from $2.50 / 1,000 overview listings

Rating

0.0

(0)

Developer

πŸ‘ SIÁN OÜ

SIÁN OÜ

Maintained by Community

Actor stats

1

Bookmarked

3

Total users

1

Monthly active users

4 days ago

Last modified

Share

Chrono24 Scraper & API β€” Luxury Watch Data (Rolex, Omega, Patek) ⌚

πŸ‘ SIÁN Agency Store
πŸ‘ Taobao Tmall Product Scraper
πŸ‘ 1688 Wholesale Scraper
πŸ‘ Amazon ASIN Lookup

πŸŽ‰ The fastest way to pull Chrono24 data β€” a Chrono24 API in everything but name. Clean, analytics-ready luxury watch data in EUR and USD, with box & papers as true/false fields.

Built for watch dealers, flippers, market analysts and investors who need normalized watch data they can drop straight into a spreadsheet or model β€” not raw scraped text.

πŸ“‹ Overview

Turn Chrono24 into structured data. This Chrono24 scraper pulls luxury watch listings from the world's largest pre-owned and new watch marketplace β€” Rolex, Omega, Patek Philippe, Audemars Piguet, Cartier, Tudor, Breitling and every other brand β€” and hands you clean JSON or CSV. Pick the depth that fits the job: a fast, cheap price + spec sweep, or the full per-watch spec sheet.

Why dealers and analysts choose us:

  • 🧼 Normalized, analytics-ready data: condition, availability and seller type come back as clean values β€” not buried in localized free text
  • πŸ“¦ Box & papers as true/false: has_box and has_papers are discrete booleans you can filter and pivot on instantly
  • πŸ’± Dual currency built in: every watch carries its price in EUR and USD from one live FX rate per run
  • πŸ“ Real numbers, not strings: case diameter as a numeric value in mm, separate bracelet_material and bracelet_color, thumbnail split out from the full image gallery
  • ⚑ Two depths, one actor: a fast market-wide Overview scan, or deep per-watch Detail spec sheets
  • 🎯 Three ways to search: by brand, by free-text query, or by pasting any filtered Chrono24 URL β€” all your filters preserved
  • πŸ†“ Free to try: up to 25 watches per run, no credit card

✨ Features

  • 🧭 Overview mode: fast price + spec scan straight from search cards (~60–120 listings per fetch) β€” ideal for sizing a market cheaply
  • πŸ” Detail mode: the full per-watch spec sheet β€” reference number, movement, case material & diameter, dial, bracelet, water resistance, year, condition, scope of delivery, gender, seller and more
  • 🏷️ By brand / by query / by search URL: pick brand slugs (rolex, omega, tudor…), free-text search any model (submariner, daytona), or paste a refined Chrono24 search/brand link
  • 🎚️ Filters: price range in EUR on brand/query searches, plus every filter you bake into a pasted search URL (case material, condition, dial color, year, seller type, sort order…)
  • πŸ’± Dual-currency pricing: EUR + USD on every row from one live FX rate per run
  • πŸ“¦ Box & papers booleans: discrete has_box / has_papers flags, ready to filter on
  • πŸ–ΌοΈ Full image gallery + thumbnail: every listing photo, with a separate thumbnail field for quick previews
  • 🧾 Self-documenting datasets: every row carries a metadata object recording the exact search settings that produced it
  • πŸ“‘ HTML run report: a clean summary of every run alongside your data
  • πŸ“€ Clean exports: JSON, CSV, Excel, or the full REST API

🎬 Quick Start

Choose a scrape depth + a search mode, set your filters, and run.

curl-X POST https://api.apify.com/v2/acts/sian.agency~chrono24-watch-scraper/runs?token=[YOUR_TOKEN]\
-H'Content-Type: application/json'\
-d'{
"scrapeMode": "overview",
"searchMode": "byBrand",
"brands": ["rolex", "omega"],
"maxResults": 50
}'

πŸš€ Getting Started (3 Simple Steps)

Step 1: Pick your scrape depth

  • Overview β€” fast price + spec scan straight from search cards (~60–120 listings/fetch).
  • Detail β€” the full per-watch spec sheet (reference, movement, case, dial, bracelet, condition, box & papers, seller…).

Step 2: Choose how to search

  • By brand β€” pick brand slugs like rolex, omega, tudor, breitling, cartier.
  • By query β€” free-text search any model or keyword, e.g. submariner, daytona, speedmaster.
  • By search URL β€” paste one or more Chrono24 search/brand URLs; every filter in the URL is kept and pagination is automatic.

Step 3: Filter, set Max results & run

Narrow a brand or query search by price (EUR), or carry any filter you like inside a pasted search URL, then download as JSON / CSV / Excel.

That's it! In seconds you'll have:

  • Clean watch data (price in EUR and USD, brand, year, condition, availability)
  • Box & papers as true/false flags, ready to filter
  • Numeric case diameter in mm, separate bracelet material & color
  • Full spec sheet in Detail (reference, movement, dial, scope of delivery, seller, gallery)

πŸ“₯ Input Configuration

FieldTypeRequiredDescription
scrapeModestringNooverview (fast scan) or detail (full spec sheet). Default overview
searchModestringNobyBrand, byQuery, or bySearchUrl. Default byBrand
maxResultsintegerNoMax watches to return (FREE tier caps at 25). Default 100
brandsarrayBy brandBrand slugs, e.g. ["rolex","omega","tudor"]
querystringBy queryFree-text search, e.g. submariner
searchUrlsarrayBy search URLOne or more Chrono24 search/brand URLs (paged & merged)
priceFromintegerNoMinimum price in EUR (by brand / by query)
priceTointegerNoMaximum price in EUR (by brand / by query)

ℹ️ A few brand slugs differ from the obvious form and may not resolve directly (e.g. patek-philippe, audemars-piguet). For those, use By query (search patek philippe) or By search URL (paste the brand page link). By search URL ignores priceFrom/priceTo β€” the URL's own filters win.

Example (Detail, by brand):

{
"scrapeMode":"detail",
"searchMode":"byBrand",
"brands":["rolex"],
"priceFrom":5000,
"priceTo":25000,
"maxResults":100
}

Example (by search URL):

{
"scrapeMode":"detail",
"searchMode":"bySearchUrl",
"searchUrls":["https://www.chrono24.de/omega/index.htm"],
"maxResults":50
}

πŸ“Š Overview vs Detail β€” what you get

Field⚑ OverviewπŸ” Detail
Brand, titleβœ…βœ…
Price (EUR & USD), currencyβœ…βœ…
Availabilityβœ…βœ…
Image gallery + thumbnailβœ…βœ…
Live FX rate (fx_eur_usd, fx_source)βœ…βœ…
Self-documenting metadataβœ…βœ…
Modelβ€”βœ…
Reference number, listing codeβ€”βœ…
Movementβ€”βœ…
Case material, case diameter (mm)β€”βœ…
Dialβ€”βœ…
Bracelet material & colorβ€”βœ…
Water resistanceβ€”βœ…
Year, conditionβ€”βœ…
Scope of delivery + box & papers booleansβ€”βœ…
Genderβ€”βœ…
Seller type, location, shipping costβ€”βœ…
Full descriptionβ€”βœ…

Detail is the deep mode β€” everything in the per-watch spec sheet is read straight from the listing page, so you get the reference number, movement, case, dial, bracelet and box/papers that the fast Overview scan can't see.

πŸ“€ Output

Results are saved to the Apify dataset. Detail rows carry the full spec sheet including:

FieldTypeDescription
idstringChrono24 listing ID
urlstringCanonical listing URL
brandstringWatch brand (e.g. Rolex, Omega)
modelstringModel name (Detail)
reference_numberstringManufacturer reference number (Detail)
listing_codestringChrono24 listing code (Detail)
titlestringListing title
descriptionstringFull listing description (Detail)
priceintegerListed price in EUR
price_usdintegerPrice converted to USD
currencystringListed currency (EUR)
price_on_requestbooleantrue when the seller lists "price on request"
price_negotiablebooleantrue when the seller is open to offers (Detail)
movementstringMovement type, e.g. Automatic (Detail)
case_materialstringCase material, e.g. Steel, Gold (Detail)
case_diameter_mmnumberCase diameter in millimetres (Detail)
dialstringDial color / description (Detail)
bracelet_materialstringBracelet/strap material (Detail)
bracelet_colorstringBracelet/strap color (Detail)
water_resistancestringWater resistance rating (Detail)
yearintegerYear of production (Detail)
conditionstringCondition value, e.g. New, Used (Detail)
scope_of_deliverystringWhat's included with the watch (Detail)
has_boxbooleanOriginal box included β€” true/false (Detail)
has_papersbooleanPapers/certificate included β€” true/false (Detail)
genderstringMen's / Women's / Unisex (Detail)
availabilitystringListing availability status
locationstringSeller location (Detail)
seller_typestringdealer or private seller (Detail)
shipping_costnumberShipping cost in EUR (Detail)
imagesarrayFull gallery of listing image URLs
thumbnailstringFirst gallery image, for quick previews
fx_eur_usdnumberEUR→USD rate used this run
fx_sourcestringSource of the FX rate
metadataobjectThe exact search settings that produced the row

Example (Detail):

{
"id":"12345678",
"url":"https://www.chrono24.de/rolex/...--id12345678.htm",
"brand":"Rolex",
"model":"Submariner Date",
"reference_number":"126610LN",
"listing_code":"ABCDEF",
"title":"Rolex Submariner Date 126610LN",
"price":13500,
"price_usd":14580,
"currency":"EUR",
"movement":"Automatic",
"case_material":"Steel",
"case_diameter_mm":41,
"dial":"Black",
"bracelet_material":"Steel",
"bracelet_color":"Steel",
"water_resistance":"30 ATM",
"year":2021,
"condition":"Used",
"scope_of_delivery":"Original box, original papers",
"has_box":true,
"has_papers":true,
"gender":"Men's watch/Unisex",
"availability":"InStock",
"location":"Germany",
"seller_type":"dealer",
"shipping_cost":0,
"thumbnail":"https://img.chrono24.com/.../0.jpg",
"images":["https://img.chrono24.com/.../0.jpg"],
"fx_eur_usd":1.08,
"fx_source":"ecb"
}

πŸ’Ό Use Cases & Examples

Watch Dealer Pricing & Comps

Pull every live listing for a reference and price your own stock against the market.

Input: By brand or by search URL + price filters Output: Clean rows with price (EUR & USD), condition, box & papers, year Use: Set asking prices, build comp sets, spot under-priced inventory

Arbitrage & Flipping Signals

Sweep a model across the market and surface the cheapest clean examples.

Input: By query (e.g. daytona) + price range Output: Price, condition, box/papers booleans, seller type Use: Find buy-low / sell-high opportunities without opening each listing

Market Analysis & Trend Research

Track asking prices, condition mix and supply across brands over time.

Input: By brand + Max results, run on a schedule Output: Normalized price, condition, availability per listing Use: Market reports, price-trend dashboards, supply tracking

Building a Watch Price Database

Feed a clean, normalized watch dataset into your own tools.

Input: Any mode + Max results Output: Structured JSON/CSV with numeric diameter, dual currency, booleans Use: Internal price databases, CRMs, valuation models

Investment Sourcing

Screen blue-chip references by year, condition and full-set status.

Input: Detail mode + by brand/query + price filters Output: Full spec sheets with year, condition, box & papers Use: Shortlist investment-grade pieces with box & papers

πŸ”— Integration Examples

JavaScript/Node.js

import{ ApifyClient }from'apify-client';
const client =newApifyClient({token:'YOUR_TOKEN'});
const run =await client.actor('sian.agency/chrono24-watch-scraper').call({
scrapeMode:'detail',
searchMode:'byBrand',
brands:['rolex'],
priceFrom:5000,
maxResults:50,
});
const{ items }=await client.dataset(run.defaultDatasetId).listItems();
console.log(`Found ${items.length} watches`);

Python

from apify_client import ApifyClient
client = ApifyClient('YOUR_TOKEN')
run = client.actor('sian.agency/chrono24-watch-scraper').call(
run_input={
'scrapeMode':'overview',
'searchMode':'byQuery',
'query':'submariner',
'maxResults':100,
}
)
items = client.dataset(run['defaultDatasetId']).list_items().items
print(f"Found {len(items)} watches")

cURL

curl-X POST 'https://api.apify.com/v2/acts/sian.agency~chrono24-watch-scraper/runs?token=YOUR_TOKEN'\
-H'Content-Type: application/json'\
-d'{
"scrapeMode": "detail",
"searchMode": "bySearchUrl",
"searchUrls": ["https://www.chrono24.de/rolex/index.htm"],
"maxResults": 30
}'

Automation Tool Workflows (n8n, Zapier, Make, etc.)

  1. Trigger: Manual / schedule / webhook
  2. HTTP Request: Call this actor's API
  3. Process: Filter and analyze watch listings
  4. Action: Save to a database, send price alerts, or build reports

πŸ“Š Performance & Pricing

View current pricing in the Apify Console.

  • Pay-per-result: you're charged per watch returned β€” Overview rows (fast scan) are priced for high-volume market sweeps; Detail rows carry the full spec sheet.
  • FREE tier: up to 25 watches per run β€” full feature access, no credit card.
  • PAID tier: unlimited watches per run.

πŸ’‘ Tip: Start with Overview to size a market cheaply, then re-run the interesting references in Detail for the full spec sheet, box & papers, and seller info.

❓ Frequently Asked Questions

Q: Is this a Chrono24 API? A: It's the practical equivalent β€” a hosted Chrono24 scraper with a REST API. Call it from any language or no-code tool and get back clean, structured luxury watch data as JSON or CSV, no API key from Chrono24 required.

Q: What's the difference between Overview and Detail? A: Overview is a fast scan of search cards (~60–120 listings/fetch) with brand, title, price (EUR & USD), availability and images. Detail visits each listing page for the full spec sheet β€” reference number, movement, case material & diameter, dial, bracelet, year, condition, box & papers, gender and seller.

Q: Which brands are covered? A: Every brand on Chrono24 β€” Rolex, Omega, Patek Philippe, Audemars Piguet, Cartier, Tudor, Breitling, TAG Heuer and more. A few brand slugs differ (e.g. Patek Philippe, Audemars Piguet) β€” for those, use By query or paste the brand page URL under By search URL.

Q: What currency are prices in? A: Listings are priced in EUR; every row also includes a USD conversion from one live FX rate per run, so you can compare prices internationally.

Q: Are box & papers really separate fields? A: Yes β€” has_box and has_papers are discrete true/false flags, so you can filter for full-set watches instantly instead of parsing free text.

Q: Can I reuse a search I built on the site? A: Yes β€” paste the Chrono24 search or brand URL under By search URL and every filter in it (condition, case material, dial color, year, seller type, sort order…) is preserved.

Q: Can I export to Excel? A: Yes β€” download as CSV/Excel, or pull JSON via the REST API.

Q: How many watches can I get? A: FREE tier: up to 25 per run. PAID tier: unlimited.

πŸ› Troubleshooting

No results returned

  • Check your brand slug β€” a few differ from the obvious form (e.g. patek-philippe, audemars-piguet). Use By query or By search URL for those.
  • Broaden your price filter (priceFrom / priceTo)
  • Confirm the pasted search URL actually returns listings on the site

Fewer fields than expected on a listing

  • Most spec fields (reference, movement, case, dial, bracelet, box & papers, seller) are Detail-only β€” switch scrapeMode to detail
  • Some spec rows (e.g. water resistance) only appear on watches that publish them

Price filter seems ignored

  • priceFrom / priceTo apply to By brand and By query only. By search URL carries its own filters β€” bake the price range into the URL instead.

Price on request

  • Some listings hide their price; those rows come back with price_on_request: true and no price.

βš–οΈ Is it legal to scrape data?

Our actors are ethical and do not extract any private user data. They only extract what has been published publicly. We therefore believe that our actors, when used for ethical purposes by Apify users, are safe.

However, you should be aware that your results could contain personal data. Personal data is protected by the GDPR in the European Union and by other regulations around the world. You should not scrape personal data unless you have a legitimate reason to do so. If you're unsure whether your reason is legitimate, consult your lawyers. You can also read Apify's blog post on the legality of web scraping.

πŸ’¬ Support

πŸ‘ Telegram Support

  • πŸ› Found a bug? File an issue in the Apify Console Issues tab
  • ⭐ Loving the tool? Leave a 5-star review β€” it helps us build more
  • πŸ“§ apify@sian-agency.online
  • Check the SIÁN Agency Store for more marketplace & product price data

πŸ›οΈ You might also like

More marketplace & product price data from SIÁN Agency:


Built by SIÁN Agency | More Tools

🎯 Not sure which tier you need? Start with FREE β€” no credit card required. Upgrade when you're ready to scale!

Chrono24β„’ is a trademark of its respective owner. This actor is an independent tool and is not affiliated with, endorsed by, or sponsored by Chrono24. Brand names (Rolex, Omega, Patek Philippe, Audemars Piguet and others) are trademarks of their respective owners and are referenced for identification only. Use this actor responsibly and in line with applicable terms and laws.

You might also like

Chrono24 Product Scraper

xtracto/chrono24-product-scraper

Scrape full Chrono24 watch detail: brand, model, reference, year, price, movement, case, condition, scope of delivery, seller, images, and description.

πŸ‘ User avatar

Farhan Febrian Nauval

2

Chrono24 Scraper - Watch Price Tracker & Market Research Tool

epicscrapers/chrono24-scraper

Scrape watch listings from Chrono24 with prices, images, shipping costs & seller details. Extract data on Rolex, Omega, Patek Philippe, Tudor & 10k+ brands. Filter by model, case diameter, condition & certified status. Returns structured JSON for price tracking, market analysis & research.

9

5.0

Chrono24 Listings Scraper

piotrv1001/chrono24-listings-scraper

The Chrono24 Listings Scraper extracts luxury-watch listings and enriched detail records from Chrono24.com, capturing brand, model, reference number, price, condition, year, specs, seller info, descriptions, and images β€” ideal for price tracking, market research, and watch valuation.

Chrono24 Search Scraper

xtracto/chrono24-search-scraper

Search Chrono24 for any luxury-watch keyword and get listing cards with title, model, price, currency, seller, and location β€” plus optional full detail enrichment.

πŸ‘ User avatar

Farhan Febrian Nauval

2

πŸ•°οΈ Chrono24 Listings Scraper

misterkhan/chrono24-search-scraper

Scrape watch listings from Chrono24 with price, brand, condition, year, and location. Ideal for dealers, analysts, and collectors tracking the global luxury watch market. Supports filters, pagination, and export to JSON, CSV, or Excel.

Chrono24 Watch Scraper CHEAP

ahmed_jasarevic/chrono24-scraper

Scrape watch listings from Chrono24 by search query or brand. Extract prices, locations, images, and more.

πŸ‘ User avatar

Ahmed Jasarevic

21

Chrono24 Listing Scraper

alania/chrono24-watch-scraper

Extracting structured watch data from Chrono24. Provide a listing URL, and it returns clean JSON with images, brand, model, reference, price, condition, specs, seller ratings, reviews, delivery details, availability, and multi-currency support. Ready for instant integration.

Chrono24 Scraper & Opportunity Notification

ilborso/chrono24-scraper-opportunity-notification

Scrape watch listings from Chrono24 & Receive your personal opportunity notification! Scrape price, brand, location. It supports all chrono24 filters. Export to JSON, CSV, or Excel. Notification mail when the price is interesting for you!

πŸ‘ User avatar

Fabio Borsotti

26

4.1

Bobswatches Listing Scraper

misterkhan/bobswatches-listing-scraper

A high-performance scraper for BobsWatches.com. Extract comprehensive luxury watch data including reference numbers, real-time pricing, series, and technical specifications for Rolex, Omega, Patek Philippe, and more.

Chrono24 Scraper Β· All-in-One Watch Listings Β· $3/1k

memo23/chrono24-scraper

Chrono24 all-in-one scraper β€” auto-classifies detail, brand-index, model-index, and search URLs in one run. 35+ fields per listing: reference, year, movement, caliber, materials, dealer country, shipping policy, full image array. JSON-LD product data. Pure HTTP, no browser

πŸ‘ User avatar

Muhamed Didovic

25

5.0