Cummings carried a 26 second advantage over Rohan Dennis (BMC) into the final stage, but that looked unlikely to be challenged with only 25 seconds worth of time bonuses available at the intermediate sprints along a predominantly flat 100km course around central London.
The 16 laps of the circuit were characterised by the early four-man break of Jasper Bovenhuis (AnPost Chain Reaction), Taylor Phinney (BMC), Tom Stewart (Madison Genesis) and Gabriel Cullaigh (GB), that got away and established a maximum gap of around 45 seconds.
The break allowed Bovenhuis to hoover up the intermediate points he needed to secure the win in the sprint classification, and the Dimension Data led peloton seemed content to let the four men dangle out in front.
The break survived until around 12km to go, though both Phinney and Steward made lone attacks to try and hold out against the bunch, as did Alex Dowsett (Movistar). But none of those were able to stick and eventually the sprinters’ teams began to set their fast men up for a bunch sprint.
Lotto-Soudal looked to be lining up stage one winner André Greipel to contest the finish, but former Belgian champion Jens Debusschere was the allowed to attack off the front by his teammate in the closing kilometre.
And it looked like he might be able to hold out until Boy van Poppel (Trek-Segafredo) made a huge effort to bridge over, and the sprint then opened up behind.
Ewan launched his attack on the right hand side of the road away from the main bunch, and got well ahead of the likes of Dylan Groenewegen (LottoNL-Jumbo) before they could respond, and crossed the line to take the victory.
Cummings came in just behind, and confirmed his overall victory, becoming the second British winner of the race after Bradley Wiggins in 2013.
Tour of Britain 2016, stage 8, London (100km)
1. Caleb Ewan (Aus) Orica-BikeExchange, in 2-09-24
2. Dylan Groenewegen (Ned) LottoNL-Jumbo
3. Jens Debusschere (Bel) Lotto-Soudal
4. Boy van Poppel (Ned) Trek-Segafredo
5. Elia Viviani (Ita) Team Sky
6. André Greipel (Ger) Lotto-Soudal
7. Daniel McLay (GBr) Great Britain
8. Steele Von Hoff (Aus) One Pro Cycling
9. Nicola Ruffoni (Ita) Bardiani-CSF
10. Paolo Simion (Ita) Bardiani-CSF, all same time
Final overall classification
1. Steve Cummings (GBr) Dimension Data at 31-30-45
2. Rohan Dennis (Aus) BMC Racing at 26 secs
3. Tom Dumoulin (Ned) Giant-Alpecin at 38 secs
4. Tony Gallopin (Fra) Lotto-Soudal at 1-02
5. Dylan van Baarle (Ned) Cannondale-Drapac at 1-21
6. Nicolas Roche (Irl) Team Sky at 1-26
7. Xandro Meurisse (Bel) Wanty-Groupe Gobert at 1-48
8. Ben Swift (GBr) Team Sky at 1-52
9. Julien Vermote (Bel) Etixx-QuickStep at 2-12
10. Jacopo Mosca (Ita) Trek-Segafredo at 2-32