CYCLINGdata api2 races live

Cycling Data API

Every race, every stage,
every rider.

The whole race, as data: results, times and gaps for every stage and classification, jersey standings after each stage, stage towns with altitude and distances, rider careers back to 1869 and the calendar ahead. Road, track, mountain bike, cyclocross, BMX and gravel.

9.9Mresults
1869first season
151countries
46kraces listed
Stage 17 · Valley town to SummitRace simulation
Power0W
W / kg0
Speed0km/h
Cadence0rpm
Gradient0%
VAM0m/h
Altitude0m
Heart rate0bpm
To go0km
Gap to leader0:00
ClassificationMountains
Jersey
Power, last 2 minutes
Time in power zone
Recovery0%
Endurance0%
Tempo0%
Threshold0%
VO2 max0%

Coverage

158 seasons. One archive.

1869Season
0Editions so far
0Result rows so far
Milano-Torino1876Liège-Bastogne-Liège1892Paris-Roubaix1896Tour de France1903Milano-Sanremo1907Giro d'Italia1909Ronde van Vlaanderen1913Tour de Suisse1933
Road8,420,353Track434,041Cyclocross312,845Mountain bike623,864BMX95,159Gravel1,782

Who rides with it

Built for the people who follow every stage.

  1. 01Fantasy and gamesPrice riders from form and score every stage.
  2. 02Media and broadcastResult tables and jersey holders the moment a stage ends.
  3. 03Models and predictionsA century of finishes and gaps, one id per rider.
  4. 04Coaches and teamsScout by terrain, follow juniors into the pro ranks.
  5. 05AI assistantsThe archive as tools an assistant can call.
fantasy.sh38 ms

JSONTimes in secondsOne id per riderUTC
0:00+1:00+2:00+3:00+4:0012345678910 STAGE 17 · FINISHexample gaps, first ten

Precision

Measured to the second.

A stage is decided in seconds. Every result carries the time, the gap and the place exactly as the race recorded them, checked against every record we hold.

  1. 01Time and gapTo the second, empty when no time was recorded
  2. 02PlaceThe rank, with tied and doubtful places flagged
  3. 03Jerseys after each stageYellow, green, polka dot and white, as they stood that evening
  4. 04PointsClassification points and ranking points per result
  5. 05Rider, team, nationOne id per rider across every season and source
  6. 06Agreement countHow many independent records agree on each podium

The fortnight

Racing, right now.

The calendar as the riders see it: what finished, what is on the road today and what starts next, across every discipline. Read every 15 minutes.

2On the road today
44This fortnight
7 minSince last read
Race
Mon 2Tue 3Wed 4Thu 5Fri 6Sat 7Sun 8Mon 9Tue 10Wed 11Thu 12Fri 13Sat 14Sun 15
Status
Tour du FasoBUR · Ouagadougou
On the road
78th Senior and 55th Junior Natio…IND · Ranchi, Jharkhand
On the road
CAMPEONATO ARGENTINO DE CICLISMO …ARG · RAFAELA - SANTA FE
Upcoming
FNB Wines2Whales - XCMSRSA · Somerset West, Western Cape
Upcoming
Telenet Superprestige - De Noordz…BEL · Gistel
Upcoming
Campeonato Nacional de Pista Juve…PER · San Luis, Lima, Perú
Upcoming
Pan American Cyclo-cross Champion…USA · Washington, D.C.
Upcoming
UEC Cyclo-Cross European Champion…NED · Montferland-Zeddam
Upcoming
Croatian National Championships -…CRO · Bilice
Upcoming
Muskizko Udala Ziklo-KrossaESP · Muskiz
Upcoming
DCCXUSA · Washington Dc
Upcoming
Jeux Olympiques de la Jeunesse / …SEN · Road
Upcoming
RoadTrackMountain bikeCyclocrossGET /v1/calendar?from=2026-11-02&to=2026-11-15

Plans

Pick your window.

Each plan is a stretch of the archive. The gold bar shows what it reads: 1869 on the left, this season and today to the right, the races ahead at the end.

PlanPrice18692000SeasonTodayLimits
Free keyToday and yesterday, your usage and our coverage
Free
10 / min50 a day
Get a free key
LiveThe current season, with results as they land
$29/ month
60 / min20,000 a month
Start Live
ArchiveEvery season we hold, up to yesterday
$79/ month
60 / min50,000 a month
Start Archive
CompleteEvery season, live results and everything else
$149/ month
120 / min200,000 a month
Start Complete

Every plan: JSON over HTTPS, one id per rider, usage and coverage lookups, and support by email. Card charges appear as DEVELOPERDATA.NET.

You

Who won the stage to Alpe d'Huez in 1952?

Tool callrace_results( race: "rc_7qk3m2xa", year: 1952, stage: "10" )200 · 41 rows · 38 ms
Assistant

For AI assistants

Ask it anything.

The whole archive as tools an assistant can call. Your key, your plan, the same rows as the API: every answer comes with the result it was read from.

Serverhttps://cyclingapi.com/mcp
find_racesrace_editionrace_resultsyesterdays_resultsfind_riderrider_profilerider_resultsrace_calendarjersey_leaders

How it is kept

Checked before it reaches you.

  1. 01Collected

    Every race read from several independent records, old and new, then read again as results are corrected.

  2. 02Matched

    One id per rider across every season and spelling, so a career is one call, not a guessing game.

  3. 03Voted

    Where records disagree, the places are voted; each podium says how many records agree on it.

  4. 04Served

    Times to the second, countries as three-letter codes, every date in UTC. Live feeds read every 15 minutes.

Start now

Your first call is free.

A free key reads yesterday, today and the races ahead, 50 calls a day. No card.

curl https://api.cyclingapi.com/v1/results/yesterday \
  -H "Authorization: Bearer cya_your_key"