Skip to content

Ricardo.ch Scraper

Try for free

Scrape ricardo.ch listings (auctions and buy-now offers): title, price, current bid, bids, condition, brand, seller, location, shipping, end date and images. Search by keyword, category, shop or URL.

🛒 Ricardo.ch Scraper

Get every listing from ricardo.ch, Switzerland's largest online marketplace: title, price, current bid, number of bids, buy-now price, condition, brand, location, shipping options, start and end dates and photos. Paste a search, category, brand or shop URL, or just type a keyword. 1,000 listings take about 12 seconds, no login or ricardo.ch account is needed, and you pay $0.80 per 1,000 listings.

Turn on Include listing details to also get the full description, all photos, item attributes, bid steps, delivery and payment options, views, watchers and the seller's nickname, rating and verification for each listing.

✨ Why use Ricardo.ch Scraper?

  • ⚡ Fast — reads the site's own search data, 60 listings per request: 100 listings in about 6 seconds, 10,000 in under 2 minutes.
  • 🔎 Every way in — keywords, search URLs with filters, categories, brand pages, seller shops and single listing URLs.
  • 🎛️ Real filters — offer type (auction or buy now), condition, price range, private or professional sellers, delivery, ZIP code and radius, CHF 1 auctions, ending within 24 hours, sort order.
  • 📋 Listing details on demand — description, all photos, attributes (model, storage, frame size...), next minimum bid, views, watchers and seller rating, for $0.50 per 1,000 extra.
  • 🔁 Monitoring mode — save only listings that earlier runs of the same search did not see, and schedule the run.
  • 💸 Cheap — $0.80 per 1,000 listings, no monthly fee.

🎯 Use cases

  • 💰 Price monitoring — follow prices and bids for a product (iPhone, Lego sets, e-bikes, watches) across Switzerland.
  • 📈 Market research — measure supply, price levels and auction activity per category or brand.
  • 🔔 Deal alerts — run a search every hour in monitoring mode and get only the new listings, e.g. CHF 1 auctions or items near your ZIP code.
  • 🏪 Competitor and reseller tracking — export every offer of a professional seller's shop.
  • 🧾 Second-hand valuation — collect sold-price signals (bids, buy-now prices, condition) to price your own items.

🚀 How to use

  1. Paste one or more ricardo.ch URLs (search, category, brand, shop or listing) into Ricardo.ch URLs, or type keywords into Search queries.
  2. Set Max results (0 = no limit) and, if you like, filters such as price range, condition or offer type.
  3. Turn on Include listing details if you need descriptions, all photos, attributes or seller ratings.
  4. Click Start and wait a few seconds.
  5. Download the results as JSON, CSV, Excel or HTML, or read them over the API.

📥 Input

FieldWhat it does
startUrlsricardo.ch searches (/de/s/bike%20fully/), categories (/de/c/velos-82249/), brand pages (/de/b/lego/), seller shops (/de/shop/<seller>/offers/) or listings (/de/a/<title>-<id>/). Filters in the URL are kept.
searchQueriesKeywords, each run as its own search with the filters below.
maxItemsMaximum listings in total (default 20, 0 = no limit).
maxItemsPerSearchOptional limit per search, category or shop.
offerType, condition, minPrice, maxPrice, sellerType, shipping, listingType, zipCode, radiusKm, excludeWords, sortByThe site's own filters.
includeDetailsAlso read each listing page (extra event per listing).
onlyNewListingsSave only listings not seen by earlier runs of the same search.
languagede, fr or it for keyword searches, links and listing details.
{
  "searchQueries": ["iphone 15"],
  "startUrls": ["https://www.ricardo.ch/de/c/velos-82249/"],
  "maxItems": 200,
  "offerType": "auction",
  "maxPrice": 800,
  "sortBy": "close_to_end",
  "includeDetails": false
}

📤 Output

One row per listing.

FieldDescription
id, title, urlListing id, title and link
priceBuy-now price, or the current bid / start price for auction-only listings (CHF)
bidPrice, bidsCountCurrent bid (or start price while there are no bids) and number of bids
buyNowPrice, offerTypeFixed price and auction, buy_now or auction_and_buy_now
conditionKey, brand, size, productTypeKey, categoryIdItem data
city, zipCodeWhere the item is
shipping, shippingCost, freeShipping, pickupPossibleDelivery options and costs
startDate, endDate, creationDateListing dates (UTC)
image, imageLargeMain photo
sellerId, isPromo, highlight, isMoneyGuard, co2SavingsSeller id, promotion and protection flags
searchQuery, sourceUrl, position, scrapedAtWhere and when the listing was found
With details: description, images, attributes, startPrice, nextMinimumBid, bidIncrement, currentBid, deliveryOptions, paymentMethods, views, watchers, categoryPath, sellerNickname, sellerUrl, sellerType, sellerRatingsCount, sellerPositivePercent, sellerIdVerified, ...Listing page data

Example (real listing from a test run, trimmed):

{
  "id": "1333065648",
  "title": "Mountainbike Trek Modell Fuel EX",
  "url": "https://www.ricardo.ch/de/a/mountainbike-trek-modell-fuel-ex-1333065648/",
  "price": 11,
  "currency": "CHF",
  "buyNowPrice": null,
  "bidPrice": 11,
  "bidsCount": 4,
  "offerType": "auction",
  "conditionKey": "acceptable",
  "brand": "Trek",
  "productTypeKey": "bicycle",
  "categoryId": 82249,
  "imageLarge": "https://img.ricardostatic.ch/images/d0fb616c-3bb7-4611-8bd8-e6c48cd9477e/t_1000x750/mountainbike-trek-modell-fuel-ex",
  "sellerId": "355337302",
  "city": "Appenzell Eggerst.",
  "zipCode": "9050",
  "shipping": [{"key": "get_by_buyer", "cost": 0, "zipCode": "9050", "city": "Appenzell Eggerst."}],
  "pickupPossible": true,
  "startDate": "2026-10-20T16:48:00Z",
  "endDate": "2026-10-27T16:45:00Z",
  "searchQuery": "bike fully",
  "position": 3
}

With Include listing details a row also has, for example:

{
  "description": "Apple iPhone 15. Farbe schwarz. Speicher 128 GB. Akkukapazität: 86%. ...",
  "imagesCount": 3,
  "startPrice": 297,
  "nextMinimumBid": 297,
  "bidIncrement": 5,
  "categoryPath": "Handy, Festnetz, Funk > Handys / Smartphones",
  "attributes": [{"key": "mobile_phone_model", "name": "Modell", "value": "iPhone 15"}, {"key": "mobile_phone_storage_capacity", "name": "Speicherkapazität", "value": "128 GB"}],
  "paymentMethods": ["bank_transfer"],
  "views": 94,
  "watchers": 6,
  "sellerNickname": "example_seller",
  "sellerType": "private",
  "sellerRatingsCount": 41,
  "sellerPositivePercent": 97.6,
  "sellerPhoneVerified": true
}

💰 Pricing

  • $0.80 per 1,000 listings ($0.0008 per listing).
  • Listing details: +$0.50 per 1,000 listings ($0.0005 per listing), only when Include listing details is on, and for listing URLs.
  • Platform usage (compute and proxy traffic) is paid on top. It is small: we measured about $0.002 for 1,000 listings and about $0.04 for 1,000 listings with details.

Example: 1,000 listings ≈ $0.80 + $0.002 usage ≈ $0.80. 1,000 listings with details ≈ $0.80 + $0.50 + $0.04 ≈ $1.34.

You can set a maximum cost per run; the run stops cleanly when it is reached and keeps everything it saved.

❓ FAQ

Is it legal to scrape ricardo.ch? The actor only reads public listing pages that anyone can open without an account. Check the site's terms and your local rules (for example on personal data such as seller nicknames) for your use case.

Do I need a ricardo.ch account, cookies or my own proxy? No. Swiss residential and datacenter proxies are included and chosen automatically per page type.

How many results can I get? As many as the site has. ricardo.ch shows at most 60,000 listings (1,000 pages) for one search; when you ask for more, the actor splits the search into price bands by itself.

Why is a field empty? Fields are filled only when the listing has them: buyNowPrice is empty for auction-only listings, bidPrice for fixed-price listings, brand or size when the seller did not set them, and every details field when Include listing details is off.

Can I schedule it or use the API? Yes. Schedule the actor (with Only new listings for alerts) or start it over the API and read the dataset as JSON, CSV or Excel. Moving from a similar actor on another platform? Your start URLs and maxItems work as they are.

⚠️ Limits

  • 60,000 listings per search and price band: this is the site's own page limit. Very large searches are split by price automatically; a single price (for example thousands of CHF 1 auctions) cannot be split further.
  • Listings that ended or were removed are reported in the status message and not saved.
  • Ended auctions (sold prices) and the bid history are not collected.
  • Seller details (nickname, rating, verification) come with Include listing details; search results only carry the seller id.
  • Category names and item attributes in the details follow the selected language; titles and descriptions are in the language the seller wrote them in.

Related actors

//From the blog\\

Latest articles

All articles
G2
4.7/5
Excellent
Trustpilot

The internet is full of data.
Start owning yours.

Scrape.ly gives you the infrastructure, the tooling, and the team to extract, process, and operationalize web data at any scale. Setup takes minutes. The advantage lasts forever.

No credit card. No setup calls.