It's often a tough task to tell at a glance which teams are doing well at the Tour de France, there are 22 of them going around France, each with their own objectives and strengths.
So borrowing a tool from other sports, Cycling Central will run a Power Rankings during this Tour de France. It's a quick guide from stage to stage of which teams are excelling and which are unlucky or faring poorly.
Stage 19 of the 2018 Tour de France and Thomas controlled the race, as Primož Roglič won the stage, Christophe Mallet and Dave McKenzie debrief the stage, as well as the Froome performance today.
1. Team Sky (no change)
With the result, Thomas has effectively locked up the yellow jersey. He's too good against the clock to lose over two minutes, even to a time-triallist like Tom Dumoulin. It would have to be a really bad day, probably involving a crash, for the Welshman to be unseated.
Arguably one of the weaker performances by the squad, which goes to show just how good they have been. Egan Bernal in particular has seemed to get better and better as the Tour has progressed.
Chris Froome was lucky that team tactics worked out so that so much of the final climb was a battle between Primoz Roglic and Dumoulin, it enabled him to keep getting back in touch when dropped and then he was in the front group towed to the finish by Dumoulin. He'll have to put in a top-notch effort to overcome Roglic in the TT.
Best Results: 2nd - Team Time Trial, 1st (Stages 11,12), 2nd (Stage 18), 3rd (Stage 17), Yellow Jersey - Geraint Thomas, 3rd (Stage 11), 4th GC - Chris Froome
2. Quick-Step Floors (no change)
Julian Alaphilippe confirmed his polka dots jersey win with yet another excursion in the breakaway. The big news for the squad was unquestionably Bob Jungels, who keeps on churning his way up the leaderboard, he's now in 11th overall.
Best Results: 1st (Stages 1,4), 2nd (Stage 7), 1 day in Yellow - Fernando Gaviria, 1st (Stage 10, 16), 2nd (Stage 14), KOM jersey - Julian Alaphilippe, 3rd (Stage 5) - Philippe Gilbert , 3rd (Stage 9) - Yves Lampaert, 11th GC - Bob Jungels, 3rd Team Time Trial.
3. LottoNL-Jumbo (up one position)
Well-ridden by the team, Robert Gesink absolutely buried himself on the Col de Borderes to protect the GC of Steven Kruijswijk and Primoz Roglic. It also served to thin down the field for Kruijswijk's attack, which was eventually joined by Roglic.
It was hard to keep count of the number of times the Slovenian put in efforts to get away, but unfortunately fo rhim, it was always the grinding pace of Dumoulin that brought him back. He did some handsome work on the descent (perhaps moto-assisted) to take a famous win, and he'll have to dig deep again to hold off Froome for his podium spot.
Best Results: 1st (Stages 7+8) - Dylan Groenewegen, 1st (Stage 19), 3rd GC - Primoz Roglic, 6th GC - Steven Kruijswijk
4. BORA-hansgrohe (down one position)
Rafal Majka again put in an eye-catching performance in the mountains, but again didn't have the ability to hold his advantage on the descent. He needs make sure he goes for mountain-top finishes!
Peter Sagan was in the unfamiliar territory of struggling to finish a race, normally he just cruises around the peloton making jokes on stages where he's not going for the win, but today it was all pain. He's virtually assured of his green jersey now.
Best Results: 1st (Stages 2,5,13), 2nd (Stages 1,4,8), 3rd (Stage 7), 1 day in Yellow, Green Jersey - Peter Sagan.
5. Team Sunweb (no change)
Tom Dumoulin was keen to try his own attacks on the stage, but it quickly became apparent that keeping track of Roglic was going to be more important in the grand scheme of things. Dumoulin successfully protected his second position on GC and will likely be able to hold it in the TT.
Best Results: 2nd (Stages 11,12), 2nd GC - Tom Dumoulin
6. Movistar (no change)
Some very adventurous tactics from Movistar nearly paid off, it was largely the efforts of Gesink in the end that thwarted the Spanish team. Landa used the climb of the Col du Tourmalet to launch off the front and join up with a super-strong Andrey Amador - even at one stage going within a minute of the virtual yellow jersey - but they were caught again on the final climb.
While it was good news for Landa, Nairo Quintana had a very poor day, losing seven minutes - dropping to ninth - Alejandro Valverde was even worse, 11 minutes behind and slipping down to 14th overall.
Best Results: 1st (Stage 17), 9th GC - Nairo Quintana, 3rd (Stage 6), 14th GC - Alejandro Valverde, 6th GC - Mikel Landa, 1st team standings.
7. Astana (no change)
Another good effort from Tanel Kangert in the break, he looked just as strong as some of the protected riders in the move.
Jakob Fuglsang had a poor day on the road, losing over seven minutes. He did try to get away early in the race, but paid for his efforts and has now dropped down to 12th overall. It's the most adventurous that we've seen Fuglsang get in this race he's been pretty adept at hiding from the cameras throughout the race.
Best Result: 1st (Stage 14) - Omar Fraile, 1st (Stage 15) Magnus Cort Nielsen, 12th GC - Jakob Fuglsang
8. UAE Team Emirates (no change)
Another day where Dan Martin was up amongst the best climbers, going for the stage victory. He's been a real animator of the race and has looked consistently one of the best on the climbs.
When asked if he thought he was 'happy' with his Tour, Martin was typically forthright. "I'd have been happy with my Tour no matter the results. As a team we've had a great atmosphere and been laughing and joking in the bus."
It says a lot about how the Irishman approaches his racing, with the process and enjoyment of the event being the top considerations.
Best Results: 1st (Stage 6), 2nd (Stage 17), 8th GC - Dan Martin, 2nd (Stage 13), 3rd (Stage 18) - Alexander Kristoff
9. Bahrain Merida (no change)
A fighting performance from the Bahrainian squad, getting Gorka Izagirre in the breakaway and then fighting all day to try and push Movistar off the top step in the team standings. It will be too hard for them to topple the Spanish team now, but it would be nice if they got to win something before the end of the race.
Best Results: 2nd (Stages 2+5) - Sonny Colbrelli, 2nd (Stages 10+15) - Ion Izagirre, 2nd (Stage 16) - Gorka Izagirre
10. BMC (no change)
There have been quite a few difficult stages for BMC in the final few weeks. Believe it or not, but it looks like Greg van Avermaet might end up in the top 30 on GC, not many 'Classics' men manage that sort of feat.
Best Results: 1st - Team Time Trial, 2nd (Stage 9), 8 days in Yellow Jersey - Greg van Avermaet
11. Trek-Segafredo (no change)
Mollema was part of the break of the day, but he must have exploded at some point, because he ended 32 minutes back on the day.
Still the possibility of another win on the Champs Elysees.
Best Results: 1st (Stage 9) - John Degenkolb, 3rd (Stage 14) - Jasper Stuyven, 3rd (Stage 15) Bauke Mollema, 5 days in KOM jersey - Tom Skuijns
12. AG2R-La Mondiale (no change)
Romain Bardet fought back with a combative performance, going in the early break and fighting all the way to the finish when he was swept up by the yellow jersey group. He certainly hasn't given up at any point during the race, but it looks like he didn't quite have the legs of the other climbers, even if you bring into account his bad luck at the start of the race.
Pierre Latour looks set to win the white jersey for best young rider unless he has an apocalyptically bad time trial, he's actually pretty good against the clock.
Best Results: 2nd (Stage 6), 14th GC, White Jersey - Pierre Latour, 7th GC - Romain Bardet
13. Groupama- FDJ (no change)
Arthur Vichot was present in the break, but was one of the first dropped when the race heated up.
Demare will be getting ready for Paris.
Best Result: 3rd (Stages 2,13) - Arnaud Demare
14. Katusha-Alpecin (up three positions)
Katusha-Alpecin spent a fair chunk of the stage sitting on the front of the peloton driving the pace, to the confusement of many. It turns out the plan was to launch Ilnur Zakarin up the road on a long-range foray and he ended up having one of his better days in the race.
The Russian was caught by the yellow jersey group but managed to hang on and finished only slightly off the back of the top riders at the finish. He also moved up to tenth overall as Valverde and Fuglsang plummeted.
Best Results: 3rd - Marcel Kittel - Stage 1, 10th GC Ilnur Zakarin
15. Mitchelton-Scott (down one position)
Adam Yates and Mikel Nieve had one last go at getting something out of the Tour, but the break's day was spoiled by the presence of GC riders and Yates didn't have enough to go with the top climbers on the final ascent in any case.
Nieve did a bit better, he's been very impressive for the Australian outfit at both the Giro and the Tour this season, a very good offseason signing for the squad. He finished 24th on the stage.
Best Results: 5th - Team Time Trial, 3rd (Stage 16) Adam Yates
16. Cofidis (down one position)
Nothing doing for Cofidis here. Can they break a 10 year stage-win drought in Paris?
Best Results: 2nd (Stage 18), 5th (Stages 1+7) Christophe Laporte
17. Direct Energie (down one position)
Damien Gaudin made an interesting decision to go for the mountain break here, he's a lot more suited to hard races like the northern classics, and he was dropped quite earlier in the piece. Sylvain Chavanel lasted only a bit longer, but at least they had a go.
Best Result: 3rd (Stage 10) - Rein Taaramae
18. Lotto Soudal (up one position)
Jelle Vanendert abandoned, the team would have been hoping from more from the climber in the mountains as he didn't make much of an impact on any of the stages.
Best Result: 3rd - Andre Greipel - Stage 4
19. Wanty-Groupe Gobert (down one position)
Not a good stage for the Belgian team as Guillame Martin fell further behind Latour in the white jersey battle and further down on GC.
They made a good show of things in the first week, but they maybe shouldn't have focused quite so much on Martin's GC result in the final two weeks.
Best Results: 3 days in KOM jersey - Dion Smith, 20th GC - Guillame Martin
20. Dimension Data (no change)
Nothing to report.
Best Result: 4th (Stage 18) - Edvald Boasson Hagen
21. Fortuneo-Samsic (down one position)
The underdog French squad gave it their all in the breakaway, but unfortunately Warren Barguil hasn't displayed the same form and panache he rode with last year.
Best Result: 1 day in KOM jersey - Kevan Ledanois
22. EF Education First-Drapac (no change)
Taylor Phinney was the latest rider to join the cycling hospital of EF Education First-Drapac, this time it's a visibly broken nose that's the result of a crash to another of the American team's riders. At this stage just reaching Paris will be a victory and both Lawson Craddock and Phinney make it, maybe they can get bumped above Fortuneo-Samsic on the rankings, just for sheer perseverance.
Best Result: N/A
Coverage of Stage 20 will start from 8.30 pm (AEST) on SBS HD, also available on the SKODA Tour Tracker App and via live web streaming on SBS Cycling Central.