It's actually a pretty complicated topic. CityNerd did a pretty good video on the topic here:
https://www.youtube.com/watch?v=za56H2BGamQ
Better yet, it's literally a complex system!