Buycycle.com โ Used Bike Finder
Pricing
from $0.01 / 1,000 results
Buycycle.com โ Used Bike Finder
Search Buycycle โ Europe's largest used bike marketplace. Filter by brand, size, price, year, and condition. Get curated highlights, deal scores, and new-listing alerts. Want more bike marketplaces rolled into the same Actor? Email hello@inovaflow.io and we'll add them.
Pricing
from $0.01 / 1,000 results
Rating
0.0
(0)
Developer
inovaflow
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Buycycle Used Bike Finder & Deal Tracker ๐ด
Search buycycle.com โ Europe's largest used bike marketplace โ and pull back clean, structured listings filtered by brand, size, price, year, condition, groupset, and more. Built for cyclists hunting deals, shops tracking inventory, and price-watchers monitoring specific models.
What this Actor does
Buycycle has tens of thousands of used road, gravel, MTB, and e-bikes for sale across 29 countries โ but their search UI gets clunky once you're combining filters, and there's no native way to be notified when a specific bike pops up. This Actor wraps their search in a clean, schedulable interface that returns:
- Structured JSON for every listing (brand, model, year, size, price, MSRP, discount %, wishlist count, "high demand" flag, image, link, and more)
- Curated highlights so you see only the listings that matter (biggest discounts, cheapest per model, best value, popular bikes, etc.)
- New-listing tracking that flags bikes added since your last run โ perfect for daily monitoring with email or Slack notifications
Why use it
- One place, every filter. Search any combination of country, brand, frame size, price range, model year, condition, frame material, brake type, shifting type, e-bike vs analog, frameset vs complete bike, and seller type โ all in a single run.
- Spot real deals automatically. The "Best value" highlight strategy ranks bikes by a composite score combining discount %, model freshness, and condition. The "Skip overpriced" strategy filters out anything more than 1.5ร the median price for your search.
- Get notified when new bikes show up. The "New listings only" mode remembers what it saw last run and only returns bikes that weren't there before. Pair it with Apify's integrations to fire a Slack or email notification only when something genuinely new appears.
- 29 countries, 3 currencies. Buycycle ships internationally โ search the German marketplace from the US, or the Swiss marketplace from Spain. Currency (EUR, USD, CHF) is preserved in the output. Proxy region is automatically matched to the marketplace you pick, which keeps Cloudflare happy and reduces blocks.
Features
| ๐ Free-text + filters | Combine keyword search with any of 14 filter categories |
| ๐ 29 marketplaces | All Buycycle countries (DE, FR, IT, ES, US, CH, โฆ) |
| ๐ฐ Deal scoring | Composite score combines discount %, year, condition |
| ๐ New-listing detection | Per-search dedup memory, perfect for daily monitoring |
| ๐ก๏ธ Cloudflare-aware | Geo-matched residential proxies + browser fingerprinting |
| ๐ Two datasets | Curated Output for notifications, full full-results for analysis |
| ๐ Markdown summary | Human-readable summary stored in the run's key-value store |
Input
All inputs are optional. The minimal valid run is no input at all (it'll search the German marketplace with default settings).
The most common inputs you'll set:
- Search keyword โ free-text like
"canyon aeroad","tarmac sl7","pinarello". Leave blank to browse using filters only. - Country โ pick the marketplace. Defaults to Germany (largest pool). The Actor automatically routes its requests through a residential proxy in the same country โ this looks like a real local shopper to Cloudflare and significantly reduces blocks.
- Brands / Frame size / Price range / Year range / Conditions โ narrow down what you want.
- Highlights filter โ choose how the main
Outputdataset is curated. Defaults toNone โ return full list. Switch toNew listings onlyfor monitoring use cases. - Max pages to crawl โ safety cap. Each page is roughly 50 bikes. Default is 2 (~100 bikes), max is 50 (~2500 bikes).
See the Input tab for the full list of fields with descriptions.
Output
Two datasets are produced on every run:
Output (default dataset)
The curated set, filtered by the Highlights filter you chose. This is what notifications fire on. With the default None โ return full list strategy, this contains every bike found.
full-results (storage dataset)
The complete, unfiltered crawl โ always available regardless of highlight strategy. Use this for analysis, archival, or if you want to query results yourself.
Per-bike fields
{"itemId": "182734","brand": "Canyon","name": "Aeroad CFR Disc Di2","priceBase": 4200,"priceTotal": 4452,"buyerProtectionFee": 252,"currency": "EUR","msrp": 7999,"isDiscounted": true,"discountPct": 44,"size": "M","year": 2022,"groupset": "Shimano Dura-Ace Di2","wishlistCount": 87,"isHighDemand": true,"imageUrl": "https://...","productUrl": "https://buycycle.com/en-de/bike/...","pageNum": 1,"scrapedAt": "2026-04-13T10:22:31.123Z","searchKeyword": "canyon aeroad"}
Additional fields appear depending on the highlight strategy:
isNewโ only present when using theNew listings onlystrategy.trueif the listing wasn't seen on the previous run with the same filters.dealScoreโ only present when using theBest valuestrategy. Composite score combining discount %, model freshness, and condition.
Run summary
A human-readable Markdown summary is also stored at summary-markdown in the key-value store, and a structured OUTPUT record holds the cheapest bike, biggest discount, most popular bike, and total counts.
Highlight strategies
The Highlights filter is the most powerful feature. It controls which bikes land in the main Output dataset (and therefore which bikes trigger notifications if you've wired any up). Pick one strategy per run:
- None โ return full list. Every bike found goes into Output. Default.
- New listings only (vs last run). Tracks itemIDs from the previous run with the same filters and only returns bikes that weren't there before. First run returns the full result set as the baseline. This is the strategy to use for daily monitoring.
- Discounted bikes. Only bikes with at least N% off MSRP. Set the threshold via the
Minimum discount %field. - Cheapest per model variant. Groups bikes by normalized name + year and returns only the cheapest of each โ great for catching multiple sellers offering the same bike.
- Best value (composite deal score). Ranks all bikes by a weighted score combining discount %, model freshness, and condition, then returns the top 20.
- Skip overpriced (above 1.5ร median). Drops outliers โ useful when one mistitled or rare-spec listing is skewing the price range.
- Popular. Only bikes wishlisted by at least N users. Set the threshold via the
Minimum wishlist countfield.
Use cases
1. Daily deal alerts for a specific bike. Set the keyword to "canyon aeroad", country to your local marketplace, highlights filter to New listings only, schedule the actor for daily runs, and connect a Slack integration. You'll get a ping the moment a new Aeroad shows up.
2. Inventory tracking for shops. Search by brand and condition (Brand new with guarantee), set Sold by to Shop / dealer, and run weekly to track what your competitors have in stock.
3. Market analysis. Run with no keyword, max pages set to 50, and None โ return full list to pull a 2500-bike sample of the entire marketplace. Export to CSV and analyze price distributions, popular brands, average discounts.
4. Frame hunting. Set Frameset only, pick a brand, and monitor for rare framesets in your size.
How proxies work
Buycycle is protected by Cloudflare, so this Actor uses Apify residential proxies and automatically matches the proxy country to the marketplace country you pick. You don't need to configure anything โ it just works.
Actor permissions
When running this Actor, select Full permissions in the run options. The "New listings only" highlight strategy uses a named key-value store to remember which bikes it saw on previous runs โ this requires Full permissions to create and access across runs. Limited permissions will cause dedup memory to reset every run, breaking the monitoring feature.
If you're not using the "New listings only" strategy, Limited permissions should work fine โ but Full permissions is the safer default.
Run time
Buycycle uses advanced bot protection. This Actor works through it using residential proxies and browser fingerprinting, which means each page load takes 15โ60 seconds including retries. A typical 2-page run finishes in 1โ3 minutes. This is normal โ the Actor is designed to be patient rather than fast.
Limitations
- Detail pages aren't scraped. Only the search-results cards. If you need full bike specs, contact info, or seller history, this Actor doesn't currently fetch those โ let us know if it'd be useful.
- The dedup memory is per-search. If you change any filter (other than
Max pagesor the highlights strategy), you'll start a fresh baseline. - Only English locales. Buycycle has localized versions, but the URL builder uses the
en-*slug for every country to keep parsing consistent. - Cloudflare can still occasionally block runs. If you see 0 results, retry โ the Actor uses a fresh browser fingerprint each time and usually succeeds within 1โ2 retries.
Want more bike marketplaces?
Reach out to hello@inovaflow.io if you'd like to see other used-bike marketplaces (chainreactioncycles, bikeexchange, marktplaats, etc.) rolled into the same Actor โ or built as separate Actors that share the same output schema. We're actively expanding this.
Feedback & support
Built and maintained by Inovaflow, a Prague-based integration engineering team. Have an idea, request, or bug report? Open an issue on the Actor page or reach out directly โ feedback shapes the roadmap.
License
ISC