L'étape de mardi était plate, avec seulement quelques montées et une courte côte quatorze kilomètres avant l'arrivée. Un groupe de cinq coureurs s'est échappé très tôt et a pris quatre minutes d'avance, mais le peloton a contrôlé la situation. Après 100 km, le peloton a accéléré le rythme et l'avance de l'échappée était inférieure à une minute et demie. Peu à peu, seuls Mirco Maestri, Alessandro Iacchi et Roland Thalmann sont restés à l'avant et ont essayé de prolonger leur séjour à l'avant le plus longtemps possible.
Ils y sont finalement restés pendant 190 km, mais 20 km avant l'arrivée, ils ont été engloutis par le peloton, à l'avant duquel les équipes de sprinters gardaient déjà leurs positions. Dans le long sprint final, c'est QuickStep qui s'en sort le mieux et Fabio Jakobsen remporte la 40ème victoire de sa carrière. Sagan s'est maintenu en tête mais n'a pas obtenu la meilleure position à la fin, terminant 11ème.
Filippo Ganna des Ineos Grenadiers, vainqueur du premier contre-la-montre, a conservé la tête du classement général, avec 28 secondes d'avance sur l'Allemand Lennard Kämna de Bora-Hansgrohe.
Résultats de la 2e étape de Tirreno-Adriatico (Camaiore - Follonica, 210 km) :
1. Fabio Jakobsen (Hol./Soudal-QuickStep) 5:06:33 h, 2. Jasper Philipsen (Belg./Alpecin-Deceuninck), 3. Fernando Gaviria (Col./Movistar), 4. Biniam Girmay (Eri./Intermarché-Circus-Wanty), 5. Juan Sebastian Molano (Col./SAE Team Emirates), 6. Dylan Groenewegen (Hol./Jayco AlUla), ... tous à égalité de temps
classement général :
1. Filippo Ganna (Tal./Ineos Grenadiers) 5:19:01 h, 2. Lennard Kämna (Nem./Bora-Hansgrohe) +28 s, 3. Magnus Sheffield (USA/Ineos Grenadiers) +31, 4. Brandon McNulty (USA/SAE Team Emirates) +34, 5. Thymen Arensman (Hol./Ineos Grenadiers) +39, 6. Joao Almeida (Port./SAE Team Emirates) +41