The Frenchman joins from AG2R Citroën, where he spent the past four seasons.
"I’m super happy," Gallopin said on Wednesday.
"It’s really nice that Trek-Segafredo believe in me. I already know a lot of people, some sport directors, staff and riders. It’s not a new team for me because I was there already in 2012 and 2013."
Gallopin won the Clásica San Sebastián during his last stint with the team in 2013 before moving to Lotto Soudal for the next four seasons. He won a stage of the Tour de France and wore the yellow jersey in his time there.
His last victory came in his first season at AG2R, when he landed a stage of the 2018 Vuelta a España.
"I had a lot of bad luck in the last two years, so first I want to be back on my best level and find again the grinta to play for wins in the races," the 33-year-old said.
"The last two years were difficult so it feels good to have this team believing in me, because I’m sure I can be back fighting in the biggest races."
General manager Luca Guercilena said that Gallopin had been signed both for his abilities as a rider and as a possible mentor to the younger members of the squad.
"While we continue to place an emphasis on developing young riders it is very important that we have experienced riders who can help guide the developing riders, and who are happy to do this, like Tony," said Guercilena.
Trek-Segafredo recently announced contract renewals for Quinn Simmons, Edward Theuns, Alex Kirsch, Emils Liepins, and Alexander Kamp, while Giulio Ciccone, Jasper Stuyven and Bauke Mollema will also race with the team next year, although Vincenzo Nibali is set to leave the squad.
"My role will be something quite new for me," said Gallopin.
"I’m 33 now, I have a lot of experience, and next year will be my 15th year as a professional rider. I spoke with Luca and the team has a lot of young talent that I can help to improve and progress, so I will sometimes take the role of road captain."
Thank you for signing up to Cycling News. You will receive a verification email shortly.
There was a problem. Please refresh the page and try again.