Il Tour de France 2004, novantunesima edizione della corsa, prese il via il 3 luglio da Liegi, in Belgio, e si concluse il 25 luglio con la classica passerella sugli Champs-Élysées a Parigi. Vennero percorse 20 tappe più un prologo iniziale, intervallate da due giornate di riposo, il 12 luglio e il 19 luglio, per un totale di .

Si tratta della sesta di sette edizioni consecutive del Tour senza vincitore, a causa della squalifica, sancita successivamente nel tempo una volta emerso lo scandalo doping che lo coinvolse, dello statunitense Lance Armstrong. Il 23 agosto 2005, una inchiesta del giornale sportivo L'Équipe, accompagnata dall'analisi di un campione di urina, ha dimostrato che Lance Armstrong risultò positivo all'eritropoietina (EPO) durante il Tour del 1999.

Il 22 ottobre 2012 l'UCI riconobbe la sanzione imposta dall'USADA a Lance Armstrong, accusato di aver utilizzato sostanze dopanti durante la sua permanenza alla US Postal Service, e confermò di fatto la cancellazione delle sue sette vittorie al Tour de France. Il 26 ottobre la stessa UCI ufficializzò la decisione di non attribuire ad altri corridori le vittorie ottenute dallo statunitense e di non modificare i piazzamenti degli altri ciclisti. Tale decisione, seppure tardiva, simboleggiò una sorta di ripudio da parte del Tour a quel difficile periodo. Un altro ciclista coinvolto nell'inchiesta della USADA fu il passista-cronoman statunitense Levi Leipheimer, il quale confessò di aver fatto uso di sostanze dopanti nel corso del Tour 2004. Al ciclista statunitense venne quindi revocato il nono posto in classifica generale.

Lance Armstrong aveva a lungo negato il sistematico utilizzo di pratiche dopanti nei suoi team; ma poi, messo con le spalle al muro anche dalle confessioni (spontanee presso la Usada, in interviste agli organi di stampa o in autobiografie) di alcuni dei suoi vecchi compagni di squadra, soltanto il 17 gennaio 2013, durante un'intervista con Oprah Winfrey, egli ammise per la prima volta di aver alterato illegalmente le proprie prestazioni sportive, sia durante il periodo in cui vinse i suoi sette Tour de France, sia durante il periodo precedente al cancro.

Al secondo posto della graduatoria generale del Tour de France 2004 si classificò il passista-cronoman tedesco Andreas Klöden (per la prima volta sul podio ai Campi Elisi). Terzo della classifica generale si piazzò il passista-scalatore italiano Ivan Basso (anch'egli al primo podio conseguito al termine della Grande Boucle). Alla sua settima partecipazione al Tour de France, e dopo un trionfo nel 1997 e ben cinque secondi posti, il passista-cronoman tedesco Jan Ullrich, nell'occasione compagno di team di Andreas Kloden, fallì per la prima volta l'obiettivo del podio, in ogni caso sfiorandolo (concluse, infatti, al quarto posto della classifica generale).

Il francese Richard Virenque conquistò per la settima volta la maglia a pois di miglior scalatore, record. La maglia verde della classifica a punti fu appannaggio dell'australiano Robbie McEwen, mentre quella bianca di miglior giovane andò al russo Vladimir Karpec, tredicesimo nella generale.

Tappe TappaDataPercorsokmVincitore di tappaLeader cl. generaleprol.3 luglioLiegi (BEL) (cron. individuale)6 Fabian Cancellara Fabian Cancellara1ª4 luglioLiegi (BEL) > Charleroi (BEL)195 Jaan Kirsipuu Fabian Cancellara2ª5 luglioCharleroi (BEL) > Namur (BEL)195 Robbie McEwen Thor Hushovd3ª6 luglioWaterloo (BEL) > Wasquehal195 Jean-Patrick Nazon Robbie McEwen4ª7 luglioCambrai > Arras (cron. a squadre)65 US Postal Service p/b Berry Floor Lance Armstrong5ª8 luglioAmiens > Chartres195 Stuart O'Grady Thomas Voeckler6ª9 luglioBonneval > Angers190 Tom Boonen Thomas Voeckler7ª10 luglioChâteaubriant > Saint-Brieuc208 Filippo Pozzato Thomas Voeckler8ª11 luglioLamballe > Quimper172 Thor Hushovd Thomas Voeckler12 lugliogiorno di riposo9ª13 luglioSaint-Léonard-de-Noblat > Guéret160 Robbie McEwen Thomas Voeckler10ª14 luglioLimoges > Saint-Flour237 Richard Virenque Thomas Voeckler11ª15 luglioSaint-Flour > Figeac164 David Moncoutié Thomas Voeckler12ª16 luglioCastelsarrasin > La Mongie199 Ivan Basso Thomas Voeckler13ª17 luglioLannemezan > Plateau de Beille217 Lance Armstrong Thomas Voeckler14ª18 luglioCarcassonne > Nîmes200 Aitor González Thomas Voeckler19 lugliogiorno di riposo15ª20 luglioValréas > Villard-de-Lans179 Lance Armstrong Lance Armstrong16ª21 luglioLe Bourg-d'Oisans > Alpe d'Huez (cron. individuale)15 Lance Armstrong Lance Armstrong17ª22 luglioLe Bourg-d'Oisans > Le Grand-Bornand212 Lance Armstrong Lance Armstrong18ª23 luglioAnnemasse > Lons-le-Saunier166 Juan Miguel Mercado Lance Armstrong19ª24 luglioBesançon > Besançon (cron. individuale)60 Lance Armstrong Lance Armstrong20ª25 luglioMontereau-Fault-Yonne > Parigi165 Tom Boonen Lance ArmstrongTotale3 429

Squadre e corridori partecipanti

N.Cod.Squadra1-9USP US Postal Service p/b Berry Floor11-19TMO T-Mobile Team21-29PHO Phonak Hearing Systems31-39EUS Euskaltel-Euskadi41-49FAS Fassa Bortolo51-59C.A Crédit Agricole61-69CSC Team CSC71-79IBB Illes Balears-Banesto81-89GST Gerolsteiner91-99COF Cofidis, le Crédit par Téléphone101-109QSD Quick Step-DavitamonN.Cod.Squadra111-119LST Liberty Seguros-Würth121-129BLB Brioches La Boulangère131-139ALB Alessio-Bianchi141-149A2R AG2R Prévoyance151-159RAB Rabobank161-169FDJ fdjeux.com171-179SAE Saeco181-189LOT Lotto-Domo191-199DVE Domina Vacanze201-209RAG RAGT Semences-MG Rover Al Tour de France 2004 parteciparono 189 corridori. Di questi 147 arrivarono al traguardo finale di Parigi; dopo le esclusioni di Lance Armstrong e di Levi Leipheimer i corridori effettivamente classificati sono diventati 145. Le squadre partecipanti erano 6 francesi, 4 italiane, 3 spagnole, 2 belghe, 2 tedesche, 1 olandese, 1 danese, 1 svizzera, 1 statunitense. I corridori partecipanti erano 40 francesi, 32 spagnoli, 30 italiani, 15 tedeschi, 9 australiani, 8 olandesi, 8 belgi, 7 statunitensi, 6 russi, 5 austriaci, 5 svizzeri, 4 danesi, 3 svedesi, 2 estoni, 2 norvegesi, 2 cechi 1 lituano, 1 neozelandese, 1 kazako, 1 irlandese, 1 ucraino, 1 lussemburghese, 1 sloveno, 1 venezuelano, 1 polacco, 1 colombiano, 1 portoghese.

Resoconto degli eventi

Dopodiché, dal 2005 al 2012, si succedettero nella maniera sopra citata le decisioni che corressero la classifica di questa edizione del Tour de France.

Dettagli tappa per tappa Prologo 3 luglio: Liegi (Belgio) – Cronometro individuale –

Risultati + Classifica di tappaCorridoreSquadraTempo1 Fabian CancellaraFassa6'50"SQIl 26 ottobre 2012 l'UCI, preso atto dei risultati dell'inchiesta della USADA relativa all'uso di sostanze dopanti da parte di Armstrong e di diversi altri ciclisti, stabilì la non alterabilità di tutte le classifiche generali, così come delle vittorie di tappa, relative a tutti gli eventi sportivi inerenti al periodo 1998-2005. La stessa UCI dispose quindi la non riassegnazione di tutte le vittorie o dei piazzamenti conseguiti dagli atleti squalificati per doping nel periodo sopra menzionato. Cfr. Lance ArmstrongUS Postala 2"3 José Iván GutiérrezBanestoa 8"+ Classifica generaleCorridoreSquadraTempo1 Fabian CancellaraFassa6'50"SQ Lance ArmstrongUS Postala 2"3 José Iván GutiérrezBanestoa 8"

1ª tappa 4 luglio: Liegi (Belgio) > Charleroi (Belgio) –

Risultati + Classifica di tappaCorridoreSquadraTempo1 Jaan KirsipuuAG2R4h40'29"2 Robbie McEwenLottos.t.3 Thor HushovdCrédit Agr.s.t.+ Classifica generaleCorridoreSquadraTempo1 Fabian CancellaraFassa4h47'11"2 Thor HushovdCrédit Agr.a 4"SQ Lance ArmstrongUS Postala 10"

2ª tappa 5 luglio: Charleroi (Belgio) > Namur (Belgio) –

Risultati + Classifica di tappaCorridoreSquadraTempo1 Robbie McEwenLotto4h18'39"2 Thor HushovdCrédit Agr.s.t.3 Jean-Patrick NazonAG2Rs.t.+ Classifica generaleCorridoreSquadraTempo1 Thor HushovdCrédit Agr.9h05'42"2 Fabian CancellaraFassaa 8"3 Robbie McEwenLottoa 17"

3ª tappa 6 luglio: Waterloo (Belgio) > Wasquehal –

Risultati + Classifica di tappaCorridoreSquadraTempo1 Jean-Patrick NazonAG2R4h36'46"2 Erik ZabelT-Mobiles.t.3 Robbie McEwenLottos.t.+ Classifica generaleCorridoreSquadraTempo1 Robbie McEwenLotto13h42'34"2 Fabian CancellaraFassaa 1"3 Jens VoigtCSCa 9"

4ª tappa 7 luglio: Cambrai > Arras – Cronometro a squadre –

Risultati + Classifica di tappaSquadraTempo1 US Postal Service1h12'03"2 Phonak Hearing Systemsa 1'07"3 Illes Balears-Banestoa 1'15"+ Classifica generaleCorridoreSquadraTempoSQ Lance ArmstrongUS Postal14h54'53"2 George HincapieUS Postala 10"3 Floyd LandisUS Postala 16"

5ª tappa 8 luglio: Amiens > Chartres –

Risultati + Classifica di tappaCorridoreSquadraTempo1 Stuart O'GradyCofidis5h05'58"2 Jakob PiilCSCs.t.3 Sandy CasarFdjeuxs.t.+ Classifica generaleCorridoreSquadraTempo1 Thomas VoecklerBoulangère20h03'49"2 Stuart O'GradyCofidisa 3'13"3 Sandy CasarFdjeuxa 4'06"

6ª tappa 9 luglio: Bonneval > Angers –

Risultati + Classifica di tappaCorridoreSquadraTempo1 Tom BoonenQuick Step4h33'41"2 Stuart O'GradyCofidiss.t.3 Erik ZabelT-Mobiles.t.+ Classifica generaleCorridoreSquadraTempo1 Thomas VoecklerBoulangère24h37'30"2 Stuart O'GradyCofidisa 3'01"3 Sandy CasarFdjeuxa 4'06"

7ª tappa 10 luglio: Châteaubriant > Saint-Brieuc –

Risultati + Classifica di tappaCorridoreSquadraTempo1 Filippo PozzatoFassa4h31'34"2 Iker FloresEuskaltels.t.3 Francisco ManceboBanestos.t.+ Classifica generaleCorridoreSquadraTempo1 Thomas VoecklerBoulangère29h09'14"2 Stuart O'GradyCofidisa 3'01"3 Sandy CasarFdjeuxa 4'06"

8ª tappa 11 luglio: Lamballe > Quimper –

Risultati + Classifica di tappaCorridoreSquadraTempo1 Thor HushovdCrédit Agr.3h54'22"2 Kim KirchenFassas.t.3 Erik ZabelT-Mobiles.t.+ Classifica generaleCorridoreSquadraTempo1 Thomas VoecklerBoulangère33h03'36"2 Stuart O'GradyCofidisa 3'01"3 Sandy CasarFdjeuxa 4'06"

9ª tappa 13 luglio: Saint-Léonard-de-Noblat > Guéret –

Risultati + Classifica di tappaCorridoreSquadraTempo1 Robbie McEwenLotto3h32'55"2 Thor HushovdCrédit Agr.s.t.3 Stuart O'GradyCofidiss.t.+ Classifica generaleCorridoreSquadraTempo1 Thomas VoecklerBoulangère36h36'31"2 Stuart O'GradyCofidisa 2'53"3 Sandy CasarFdjeuxa 4'06"

10ª tappa 14 luglio: Limoges > Saint-Flour –

Risultati + Classifica di tappaCorridoreSquadraTempo1 Richard VirenqueQuick Step6h00'24"2 Andreas KlödenT-Mobilea 5'19"3 Erik ZabelT-Mobiles.t.+ Classifica generaleCorridoreSquadraTempo1 Thomas VoecklerBoulangère42h42'14"2 Stuart O'GradyCofidisa 3'00"3 Sandy CasarFdjeuxa 4'13"

11ª tappa 15 luglio: Saint-Flour > Figeac –

Risultati + Classifica di tappaCorridoreSquadraTempo1 David MoncoutiéCofidis3h54'58"2 Juan Antonio FlechaFassaa 2'15"3 Egoi MartínezEuskaltela 2'17"+ Classifica generaleCorridoreSquadraTempo1 Thomas VoecklerBoulangère46h43'10"2 Stuart O'GradyCofidisa 3'00"3 Sandy CasarFdjeuxa 4'13"

12ª tappa 16 luglio: Castelsarrasin > La Mongie –

Risultati + Classifica di tappaCorridoreSquadraTempo1 Ivan BassoCSC5h03'58"SQ Lance ArmstrongUS Postals.t.3 Andreas KlödenT-Mobilea 20"+ Classifica generaleCorridoreSquadraTempo1 Thomas VoecklerBoulangère51h51'07"SQ Lance ArmstrongUS Postala 5'24"3 Sandy CasarFdjeuxa 5'50"

13ª tappa 17 luglio: Lannemezan > Plateau de Beille –

Risultati + Classifica di tappaCorridoreSquadraTempoSQ Lance ArmstrongUS Postal6h04'38"2 Ivan BassoCSCs.t.3 Georg TotschnigGerolsteinera 1'05"+ Classifica generaleCorridoreSquadraTempo1 Thomas VoecklerBoulangère58h00'27"SQ Lance ArmstrongUS Postala 22"3 Ivan BassoCSCa 1'39"

14ª tappa 18 luglio: Carcassonne > Nîmes –

Risultati + Classifica di tappaCorridoreSquadraTempo1 Aitor GonzálezFassa4h18'32"2 Nicolas JalabertPhonaka 25"3 Christophe MenginFdjeuxs.t.+ Classifica generaleCorridoreSquadraTempo1 Thomas VoecklerBoulangère62h33'11"SQ Lance ArmstrongUS Postala 22"3 Ivan BassoCSCa 1'39"

15ª tappa 20 luglio: Valréas > Villard-de-Lans –

Risultati