articles principaux: Administration de Johannesburg et Régions de Johannesburg
Avant 1994, la ville de Johannesburg se divisait administrativement entre 11 autorités locales (sept blanches et quatre noires ou de couleur). Les sept administrations blanches s'autogéraient financièrement à 90 % (et dépensaient pour USD $93 par personne) alors que les quatre administrations noires s'autofinançaient à seulement 10 % (et ne dépensaient que USD $15 par personne).
La démarcation municipale de la ville de Johannesburg a été redéfinie en 1995 pour englober des quartiers noirs. Le premier conseil municipal post-apartheid fut créé en 1995. Il adopta la devise "une ville, un contribuable" pour marquer son objectif de traiter la distribution inégale des revenus et des impôts. Les revenus de quartiers traditionnellement blancs et prospères devaient subvenir aux services des quartiers les plus pauvres. La ville fut divisée en quatre arrondissements, chacun avec une Autonomie territoriale et une autorité locale sous le contrôle d'un conseil central métropolitain. En plus, les circonscriptions furent modifiées pour inclure les quartiers riches comme Sandton et Randburg, et les townships voisins pauvres comme Soweto et Alexandra.
En 1999, Johannesburg nomma un manager pour la ville afin de réformer sa mauvaise situation financière. Le manager, conjointement avec le conseil municipal, élabora un plan de réforme stratégique appelé "Igoli 2002". La ville passa ainsi de la quasi-insolvabilité à un surplus de 153 million de rand (USD 23,6 million).
La ville de Johannesburg se confond aujourd'hui avec la municipalité créée en 2000.
La municipalité de Johannesburg se divise aujourd'hui en 11 régions administratives :
Région 1 : Diepsloot, Kya Sand
Région 2 : Midrand, Ivory Park
Région 3 : Bryanston, Douglasdale, Fourways, Randburg, Sandton, Strijdompark, Sunninghill, Woodmead
Région 4 : Northcliff, Rosebank, Parktown
Région 5 : Roodepoort, Constantia Kloof, Northgate
Région 6 : Doornkop, Soweto, Dobsonville, Protea Glen
Région 7 : Alexandra, Wynberg, Bruma
Région 8 : Inner City
Région 9 : Johannesburg South, City Deep, Aeroton, Southgate
Région 10 : Meadowlands, Diepkloof
Région 11 : Orange Farm, Ennerdale, Lenasia
Autrefois, la fonction de maire était surtout honorifique. Son mandat était d'une année et il était élu parmi les conseillers municipaux.
Depuis 2000, elle est devenue réellement une fonction exécutive soumise à l'élection des habitants de la ville. Depuis cette année-là, le maire de Johannesburg est Amos Masondo (ANC).
Lors des élections municipales du 1er mars 2006, l'ANC l'emporte de nouveau avec 62% des suffrages (136 sièges) contre plus d'un tiers des suffrages à l'Alliance démocratique (59 sièges).