| Dates: 1 July – 23 July |
| Coverage: Live text commentary on each stage on the BBC Sport website and app |
The 110th edition of the Tour de France got under way in Bilbao, Spain on Saturday, 1 July and the three-week race will finish in Paris on Sunday, 23 July.
The riders will tackle eight mountain stages and an individual time trial on trips to the Pyrenees and Alps during the 3,404km (2,115-mile) race.
BBC Sport looks at each stage of the gruelling three-week event, analysing where it could be won and lost.
This page will be updated throughout the Tour with the winner and a brief report following each stage.
Saturday, 1 July – stage one: Bilbao – Bilbao, 182km

Winner: Adam Yates
Report: Britain’s Adam Yates beats identical twin Simon to win stage one
Britain’s Adam Yates beat identical twin brother Simon to win stage one of the Tour de France in Bilbao, Spain and take the leader’s yellow jersey. UAE Team Emirates’ Adam, 30, pulled away from Jayco AlUla rider Simon in the final stages of the uphill finish to win his first Tour stage.
Sunday, 2 July – stage two: Vitoria-Gasteiz to San Sebastian, 208.9km

Winner: Victor Lafay
Report: Lafay wins stage two as Yates retains yellow jersey
Frenchman Victor Lafay produced a brilliantly timed attack to win the second stage of the Tour de France. Belgium’s Wout van Aert had appeared perfectly placed to take the 208.9km stage, which ended in San Sebastian, but Lafay burst clear with 900m to go and Van Aert was left banging his handlebars in frustration after being unable to reel him in.
Monday, 3 July – stage three: Amorebieta-Etxano – Bayonne, 193.5km

Winner: Jasper Philipsen
Report: Philipsen sprints to victory on stage three
Belgium’s Jasper Philipsen sprinted to victory on stage three of the Tour de France as Britain’s Adam Yates retained the leader’s yellow jersey. Philipsen, 25, edged out Germany’s Phil Bauhaus with Australia’s Caleb Ewan in third in the first bunch-sprint finish of this year’s Tour.
Tuesday, 4 July – stage four: Dax – Nogaro, 181.8km

Winner: Jasper Philipsen
Report: Philipsen claims second straight stage win
Jasper Philipsen won for the second day in a row amid a chaotic finish to stage four of the Tour de France in Nogaro. The Belgian was again led out perfectly by his team-mate Mathieu van der Poel and edged out Australia’s Caleb Ewan with Germany’s Phil Bauhaus third. Britain’s Mark Cavendish, chasing a record-breaking 35th stage win, was further back in fifth.
Wednesday, 5 July – stage five: Pau – Laruns, 162.7km

Winner: Jai Hindley
Report: Hindley wins stage five to take yellow jersey
Jai Hindley claimed stage five to take the yellow jersey as Jonas Vingegaard dented Tadej Pogacar’s hopes of a third Tour triumph. Australia’s Hindley was part of an early breakaway and soloed to victory after attacking with 20km left. Meanwhile, Denmark’s defending champion Vingegaard rode clear of two-time winner Pogacar, pulling out more than a minute on the man regarded as his main rival in the general classification.
Thursday, 6 July – stage six: Tarbes – Cauterets, 144.9km

Winner: Tadej Pogacar
Report:Pogacar beats Vingegaard in epic mountain battle
Tadej Pogacar delivered a stunning attack on the final climb to Cauterets-Cambasque as he soloed clear of defending champion Jonas Vingegaard to win stage six. The two-time winner moved second overall, 25 seconds behind Vingegaard, who took the leaders yellow jersey after Australia’s Jai Hindley was dropped on the penultimate climb up the iconic Col du Tourmalet.
Friday, 7 July – stage seven: Mont-de-Marsan – Bordeaux, 169.9km

Winner: Jasper Philipsen
Report: Cavendish denied new Tour wins record by Philipsen
Mark Cavendish suffered a gear issue as Jasper Philipsen pipped him to victory in a sprint finish of stage seven. Cavendish had looked to be closing in on a record-breaking 35th stage win at the Tour until the Belgian powered past him in sight of the line. Denmark’s defending champion Jonas Vingegaard retained the overall leader’s yellow jersey.
Saturday, 8 July – stage eight: Libourne – Limoges, 200.7km

Winner: Mads Pedersen
Report: Cavendish denied record as crash puts him out of final Tour
Mark Cavendish was denied the opportunity to set a new record for stage wins after crashing out on his final Tour de France, as Denmark’s Mads Pedersen won an uphill sprint finish in Limoges.
Sunday, 9 July – stage nine: Saint-Leonard-de-Noblat – Puy de Dome, 182.4km

Winner: Michael Woods
Report: Woods wins first Tour stage on Puy de Dome
Michael Woods claimed a breakaway victory on stage nine of the Tour de France as Tadej Pogacar took more time out of race leader Jonas Vingegaard. Canada’s Woods made up about two minutes on American Matteo Jorgenson on the steep final section of the dormant volcano, the Puy de Dome. Pogacar’s late attack saw him reduce Vingegaard’s overall lead to 17 seconds.
Tuesday, 11 July – stage 10: Vulcania – Issoire, 162.7km

Winner: Pello Bilbao
Report: Bilbao claims first Tour stage win
Spain’s Pello Bilbao timed his sprint finish to perfection as he claimed his first stage victory in the Tour de France. Krists Neilands attacked his breakaway companions over the top of the final climb on stage 10 but was caught with 3km to go and Bilbao was fastest in the final 200m.
Wednesday, 12 July – stage 11: Clermont-Ferrand – Moulins, 179.8km

Winner: Jasper Philipsen
Report: Philipsen sprints to fourth stage victory of Tour
Jasper Philipsen timed his sprint to perfection to claim a fourth stage win of this year’s edition. The Belgian worked his way up through the bunch and then kicked off the wheel of Dylan Groenewegen, who came second in Moulins.
Thursday, 13 July – stage 12: Roanne – Belleville-en-Beaujolais, 168.8km

Winner: Ion Izagirre
Report: Izagirre cruises to victory as Vingegaard retains overall lead
Ion Izagirre soloed to victory on stage 12 after launching a superb attack 31km from the finish in Belleville-en-Beaujolais. The Spanish rider was 58 seconds clear of Mathieu Burgaudeau and Matteo Jorgenson, who were second and third. Jonas Vingegaard retained the overall leader’s yellow jersey.
Friday, 14 July – stage 13: Chatillon-Sur-Chalaronne – Grand Colombier, 137.8km

Winner: Michal Kwiatkowski
Report: Kwiatkowski wins stage 13 as Pogacar gains ground
Michal Kwiatkowski took a superb solo win on stage 13 as Tadej Pogacar gained more time on race leader Jonas Vingegaard. Poland’s Kwiatkowski rode clear on the summit finish on Grand Colombier on the race’s first day in the Alps. An explosive attack by two-time race winner Pogacar in the final 400 metres cut Vingegaard’s overall lead to nine seconds.
Saturday, 15 July – stage 14: Annemasse – Morzine Les Portes du Soleil, 137.8km

Winner: Carlos Rodriguez
Report: Vingegaard keeps yellow as Rodriguez wins epic stage
Denmark’s Jonas Vingegaard retained the leader’s yellow jersey after an intense stage 14. Spain’s Carlos Rodriguez, been dropped on the final climb, won the stage after he mugged Vingegaard and Tadej Pogacar on the final descent.
Sunday, 16 July – stage 15: Les Gets les Portes du Soleil – Saint-Gervais Mont-Blanc, 179km

Winner: Wout Poels
Report: Poels wins as fan taking selfie causes huge crash
Dutchman Wout Poels won his first stage at a Grand Tour as Jonas Vingegaard and Tadej Pogacar crossed the finish line together. Stage 15 saw an early crash involving about 20 riders caused by a spectator trying to take a selfie with their phone.
Tuesday, 18 July – stage 16: Passy – Combloux, 22.4km

Winner: Jonas Vingegaard
Report: Vingegaard closes in on title after time trial win
Jonas Vingegaard tightened his grip on the yellow jersey after he blew away Tadej Pogacar in the individual time trial on stage 16. The Dane won the 22.4km route from Passy to Combloux in 32 minutes 36 seconds on a decisive day of the Tour.
Wednesday, 19 July – stage 17: Saint-Gervais Mont-Blanc – Courchevel,165.7km

Winner: Felix Gall
Report: Jonas Vingegaard on brink of retaining title after stretching lead
Jonas Vingegaard is on the brink of retaining his Tour de France title after opening up a lead of more than seven minutes on a gruelling stage 17. The Dane powered up the final climb of the queen stage of the Tour but saw his main rival, Tadej Pogacar, crumble.
Thursday, 20 July – stage 18: Moutiers – Bourg-en-Bresse,184.9km

Winner: Kasper Asgreen
Report: Kasper Asgreen holds on to win stage 18 from epic breakaway
Kasper Asgreen claimed his first Tour de France stage victory as he held on to win stage 18 from an epic four-man breakaway to deny the sprinters in the dramatic closing stages in Bourg-en-Bresse. Fellow Dane Jonas Vingegaard maintained his comfortable overall lead with just three stages left.
Friday, 21 July – stage 19: Moirans-en-Montagne – Poligny, 172.8km

The peloton sweeps across the Jura Mountains without tackling any major climbs.
And with the final straight measuring more than eight kilometres in length, the fast men will be given a hefty lead out unless a breakaway has taken advantage of some tired legs in the peloton.
Riders to watch: Matej Mohoric, Kasper Asgreen, Stefan Kung, Fabio Jakobsen, Dylan Groenewegen
Saturday, 22 July – stage 20: Belfort – Le Markstein Fellering 133.5km

A short but demanding mountain stage which crams six categorised climbs into about 100km as the race dashes across the Vosges to the Le Markstein ski station.
This represents a last opportunity for those with yellow jersey ambitions and while none of the climbs would be classified as the most challenging in the race, the quick succession of ascents and descents could make for an intriguing finale.
Riders to watch: Egan Bernal, Richard Carapaz, Thibaut Pinot, Wout van Aert
Sunday, 23 July – stage 21: Saint-Quentin-en-Yvelines – Paris Champs-Elysees, 115.1km

The Tour ends with its traditional processional final stage.
Expect to see the overall winner and his team-mates sip champagne and ride in leisurely fashion towards Paris, before eight frenetic laps on the Champs-Elysees circuit and a sprint finish on the cobbles.
Riders to watch: Fabio Jakobsen, Dylan Groenewegen, Jasper Philipsen, Wout van Aert



















