Some weeks before the election, I outlined the historic voting patterns in Gauteng's townships and stated that it would be critical to the outcome in the Gauteng provincial election. Now that the election is over, we can return to the same townships outlined in my previous article to see how the trends have shifted.It is clear from the numbers that the ANC held its 2016 support levels in the Gauteng townships and in some cases even outperformed them. This is the primary reason why the ANC was able to hold on to its majority (just barely) in the 2019 provincial election in Gauteng.If we look at the entire black electorate in Gauteng, the historic voting pattern, now updated for Gauteng is as follows: In other words, the ANC essentially held its 2016 support level and actually marginally increased it in the 2019 provincial election in Gauteng.This conforms exactly with the expectations from my pre-election modelling, which suggested that the 2016 support level for the ANC in the Gauteng black electorate was roughly the minimum level which it required to achieve a majority in Gauteng. Any performance under the 2016 level for the ANC in the Gauteng black electorate would have been fatal. The party however managed to slightly outperform the 2016 levels and as such was able to retain Gauteng. Specific townshipsAs I have previously written, the patterns vary across the largest townships in Gauteng. To recap, these are the largest townships in Gauteng (by registered voters): 1) Soweto: 675 551 registered voters 2) Vosloosrus-Katlehong-Thokoza*: 384 227 registered voters 3) Soshanguve-Mabopane*: 342 223 registered voters4) Tembisa: 231 764 registered voters 5) KwaThema-Tsakane*: 207 414 registered voters 6) Mamelodi: 175 785 registered voters 7) Daveyton-Mandela Park*: 159 668 registered voters 8) Orange Farm-Driezek-Lakeside*: 120 118 registered voters 9) Ivory Park-Rabie Ridge*: 109 902 registered voters 10) Alexandra: 104 160 registered voters This is one of the single biggest reasons the ANC held Gauteng: it was able to hold at the 2016 level in Soweto. And given Soweto’s relative size (10% of the overall Gauteng electorate lives in Soweto) this was an enormous success. It should be noted of course that this is still -6% from the 2014 national government election. This is historically one of the very strong ANC areas in Gauteng and the ANC will be concerned by dropping a little bit of support in this area despite actually improving in the black electorate across the province. The EFF inroads are impressive. This area will be absolutely critical to the outcome of the 2021 local government election in Ekurhuleni. Again, the ANC performed at roughly the 2016 level, allowing it to just hold on in Gauteng. But the notable point from Soshanguve is that the DA had an awful result here (and indeed in all of Tshwane’s northern townships) with most of the losses seemingly going to the EFF. This should be of serious concern to the DA as it gave up a very large portion of the historic gains it made in this area in the 2016 local government election. Much like the Vosloosrus-Katlehong-Thokoza area, the ANC is somewhat down here in a traditional bastion of ANC support in the southern part of Ekurhuleni, with the EFF being the primary beneficiary. This result, together with the Vosloosrus-Katlehong-Thokoza result suggests to me that the ANC has underperformed in the black electorate in Ekurhuleni in 2019, setting up Ekurhuleni as a battle royale in the 2021 local government election.My key take-away is that the ANC was able to hold at the 2016 level in the black electorate in Gauteng and, despite relatively low turnout in these areas, was therefore able to hold the province. It should be noted that there was no widespread recovery for the ANC compared to 2016. It appears the Gauteng electorate was willing to give the ANC another chance under President Cyril Ramaphosa, but it is certainly not a ringing endorsement. The 2021 local government election appears, as expected, to be set up as a very close election in Gauteng’s three metros.* These townships have been added together for this analysis. They are obviously distinct places, but because of geographic proximity, electoral homogeneity and overlapping wards and voting stations, I have aggregated them for this analysis.