As of 2019, 34.4% (of India’s total Population) internet users are there which means more than 46.78 Crore (or 467 Million), Internet Users. If We compare this to the US where 87.3% (of the American Population) internet users are there which means more than 28.65 Crore (or 286 Million), Internet users. So population is one major factor.
Secondly, Services, although the Internet is cheap services are not that good, somewhere you get very high speed, somewhere you can’t even connect to the internet, speed of internet is not constant, reason, not enough towers. More the company places Towers more they have to spend on maintenance, which means more internet cost.
So a number of people depending on a single tower are more, which in turn reduces the quality of the internet and also cost. According to a BBC report, the cost of 1Gb mobile data in India is $0.26 (18.85 Indian Rupees), whereas in the US it $6.66 (486.92 Indian Rupees).
But of course their quality of service is better than what we get in India. In India Mobile Data is cheaper because here telecom Companies focus moreover quality than quantity.
Fun fact: The majority of the Internet is not used by humans, but malware and Internet Bots, which account for two-thirds of internet activity.