India will need to spend $2.2 trillion (Rs 97.35 lakh crore) on its cities by 2030 to meet the urban infrastructure demands, a report released by the McKinsey Global Institute said today.