Ranks 261 Indian cities on two things that genuinely vary by city: today's air quality and how the local fuel price compares to the national average.
Each city starts at 100. Points come off for today's air quality (0 to 40, based on the CPCB AQI band) and for how far the local fuel price sits above the national average (0 to 30). Nothing else factors in - this isn't a full cost-of-living measure, only these two.
| Byrnihat Assam | 100 | #1 | 4 | ₹105.73 |
| Palwal Haryana | 100 | #2 | 10 | ₹103.16 |
| Sonipat Haryana | 100 | #3 | 49 | ₹103.28 |
| Fatehabad Haryana | 100 | #4 | 46 | ₹103.57 |
| Srinagar Jammu and Kashmir | 100 | #5 | 48 | — |
| Agartala Tripura | 100 | #6 | 47 | ₹104.96 |
| Firozabad Uttar Pradesh | 100 | #7 | 50 | ₹101.63 |
| Rishikesh Uttarakhand | 100 | #8 | 9 | ₹99.54 |
| Rohtak Haryana | 100 | #9 | 18 | ₹103.03 |
| Badlapur Maharashtra | 99 | #10 | 22 | ₹111.21 |
| Bhiwandi Maharashtra | 99 | #11 | 33 | ₹111.21 |
| Ramanagara Karnataka | 99 | #12 | 32 | ₹111.21 |
| Dharwad Karnataka | 99 | #13 | 27 | ₹110.71 |
| Kalyan Maharashtra | 99 | #14 | 48 | ₹111.21 |
| Mahad Maharashtra | 99 | #15 | 31 | ₹111.21 |
| Tensa Odisha | 99 | #16 | 48 | ₹108.97 |
| Boisar Maharashtra | 99 | #17 | 29 | ₹111.21 |
| Sasaram Bihar | 98 | #18 | 17 | ₹114.88 |
| Araria Bihar | 98 | #19 | 45 | ₹115.07 |
| Bihar Sharif Bihar | 98 | #20 | 2 | ₹113.97 |
| Beed Maharashtra | 98 | #21 | 37 | ₹113.03 |
| Amravati Maharashtra | 98 | #22 | 47 | ₹112.78 |
| Vijayapura Karnataka | 98 | #23 | 45 | ₹111.68 |
| Chikkaballapur Karnataka | 98 | #24 | 50 | ₹111.68 |
| Haldia West Bengal | 98 | #25 | 27 | ₹113.51 |
| Yadgir Karnataka | 98 | #26 | 39 | ₹111.77 |
| Dholpur Rajasthan | 98 | #27 | 38 | ₹113.33 |
| Jalgaon Maharashtra | 98 | #28 | 47 | ₹111.80 |
| Kadapa Andhra Pradesh | 97 | #29 | 29 | ₹116.62 |
| Ankleshwar Gujarat | 90 | #30 | 58 | ₹102.04 |
| Bhavnagar Gujarat | 90 | #31 | 55 | ₹103.41 |
| Ballabgarh Haryana | 90 | #32 | 85 | ₹103.28 |
| Dharuhera Haryana | 90 | #33 | 77 | ₹103.28 |
| Mehsana Gujarat | 90 | #34 | 92 | ₹101.91 |
| Vadodara Gujarat | 90 | #35 | 63 | ₹101.46 |
| Vapi Gujarat | 90 | #36 | 55 | ₹102.04 |
| Mandikhera Haryana | 90 | #37 | 87 | ₹103.28 |
| Panchkula Haryana | 90 | #38 | 70 | ₹103.61 |
| Pampore Jammu and Kashmir | 90 | #39 | 60 | — |
| Jorapokhar Jharkhand | 90 | #40 | 93 | ₹106.19 |
| Patiala Punjab | 90 | #41 | 76 | ₹105.33 |
| Hapur Uttar Pradesh | 90 | #42 | 67 | ₹101.86 |
| Surat Gujarat | 90 | #43 | 55 | ₹101.70 |
| Karnal Haryana | 90 | #44 | 70 | ₹102.50 |
| Belapur Maharashtra | 89 | #45 | 53 | ₹111.21 |
| Chamarajanagar Karnataka | 89 | #46 | 52 | ₹111.03 |
| Cuddalore Tamil Nadu | 89 | #47 | 74 | ₹109.75 |
| Thoothukudi Tamil Nadu | 89 | #48 | 65 | ₹108.44 |
| Samastipur Bihar | 88 | #49 | 100 | ₹113.35 |
| Rajkot Gujarat | 88 | #50 | 58 | ₹115.01 |
| Ratlam Madhya Pradesh | 88 | #51 | 55 | ₹114.65 |
| Sagar Madhya Pradesh | 88 | #52 | 58 | ₹114.20 |
| Karwar Karnataka | 88 | #53 | 97 | ₹112.05 |
| Hingoli Maharashtra | 88 | #54 | 55 | ₹113.17 |
| Hubballi Karnataka | 88 | #55 | 57 | ₹111.68 |
| Damoh Madhya Pradesh | 87 | #56 | 61 | ₹115.32 |
| Naharlagun Arunachal Pradesh | 80 | #57 | 188 | ₹97.95 |
| Ambala Haryana | 80 | #58 | 121 | ₹103.26 |
| Panchgaon Haryana | 80 | #59 | 147 | ₹103.28 |
| Dhanbad Jharkhand | 80 | #60 | 175 | ₹105.22 |
| Aizawl Mizoram | 80 | #61 | 113 | ₹106.55 |
| Kohima Nagaland | 80 | #62 | 138 | ₹104.87 |
| Mandi Gobindgarh Punjab | 80 | #63 | 107 | ₹105.56 |
| Gajraula Uttar Pradesh | 80 | #64 | 193 | ₹101.86 |
| Gorakhpur Uttar Pradesh | 80 | #65 | 150 | ₹102.13 |
| Dehradun Uttarakhand | 80 | #66 | 188 | ₹100.55 |
| Vatva Gujarat | 80 | #67 | 140 | ₹102.04 |
| Sirsa Haryana | 80 | #68 | 107 | ₹104.11 |
| Baddi Himachal Pradesh | 80 | #69 | 160 | ₹103.09 |
| Muzaffarnagar Uttar Pradesh | 80 | #70 | 115 | ₹102.09 |
| Ambernath Maharashtra | 79 | #71 | 150 | ₹111.21 |
| Gadag Karnataka | 79 | #72 | 117 | ₹111.22 |
| Dombivli Maharashtra | 79 | #73 | 163 | ₹111.21 |
| Ulhasnagar Maharashtra | 79 | #74 | 200 | ₹111.21 |
| Gangtok Sikkim | 79 | #75 | 113 | ₹110.60 |
| Malegaon Maharashtra | 79 | #76 | 163 | ₹111.21 |
| Mandideep Madhya Pradesh | 78 | #77 | 103 | ₹114.45 |
| Dhule Maharashtra | 78 | #78 | 163 | ₹112.14 |
| Nagaur Rajasthan | 78 | #79 | 200 | ₹113.69 |
| Jhalawar Rajasthan | 78 | #80 | 163 | ₹113.19 |
| Begusarai Bihar | 78 | #81 | 125 | ₹113.09 |
| Ahmednagar Maharashtra | 78 | #82 | 163 | ₹111.71 |
| Jhunjhunu Rajasthan | 78 | #83 | 200 | ₹114.15 |
| Visakhapatnam Andhra Pradesh | 77 | #84 | 110 | ₹117.41 |
| Sivasagar Assam | 70 | #85 | 243 | ₹105.73 |
| Charkhi Dadri Haryana | 70 | #86 | 286 | ₹103.28 |
| Manesar Haryana | 70 | #87 | 300 | ₹103.28 |
| Shillong Meghalaya | 70 | #88 | 300 | ₹102.60 |
| Baghpat Uttar Pradesh | 70 | #89 | 243 | ₹101.86 |
| Puducherry Puducherry | 70 | #90 | 300 | ₹103.58 |
| Gummidipoondi Tamil Nadu | 70 | #91 | 237 | ₹107.77 |
| Khurja Uttar Pradesh | 70 | #92 | 271 | ₹101.86 |
| Modinagar Uttar Pradesh | 70 | #93 | 243 | ₹101.86 |
| Prayagraj Uttar Pradesh | 70 | #94 | 300 | ₹101.86 |
| Vrindavan Uttar Pradesh | 70 | #95 | 214 | ₹101.86 |
| Jind Haryana | 70 | #96 | 210 | ₹102.78 |
| Narnaul Haryana | 70 | #97 | 257 | ₹103.28 |
| Hisar Haryana | 70 | #98 | 243 | ₹103.28 |
| Tumidih Chhattisgarh | 69 | #99 | 257 | ₹108.30 |
| Nayagarh Odisha | 69 | #100 | 271 | ₹109.15 |
| Baripada Odisha | 69 | #101 | 257 | ₹109.43 |
| Chhapra Bihar | 68 | #102 | 213 | ₹113.37 |
| Madikeri Karnataka | 68 | #103 | 229 | ₹111.68 |
| Latur Maharashtra | 68 | #104 | 243 | ₹113.09 |
| Parbhani Maharashtra | 68 | #105 | 257 | ₹113.17 |
| Sangli Maharashtra | 68 | #106 | 286 | ₹111.69 |
| Pratapgarh Rajasthan | 68 | #107 | 300 | ₹113.19 |
| Banswara Rajasthan | 68 | #108 | 300 | ₹114.16 |
| Bikaner Rajasthan | 68 | #109 | 271 | ₹114.15 |
| Bundi Rajasthan | 68 | #110 | 300 | ₹112.70 |
| Jaisalmer Rajasthan | 68 | #111 | 257 | ₹114.15 |
| Shivamogga Karnataka | 68 | #112 | 300 | ₹111.68 |
| Thrissur Kerala | 68 | #113 | 286 | ₹114.19 |
| Satara Maharashtra | 68 | #114 | 271 | ₹112.71 |
| Dungarpur Rajasthan | 68 | #115 | 300 | ₹114.15 |
| Motihari Bihar | 68 | #116 | 243 | ₹114.78 |
| Kurnool Andhra Pradesh | 67 | #117 | 286 | ₹117.95 |
| Tirumala Andhra Pradesh | 67 | #118 | 286 | ₹117.41 |
| Kakinada Andhra Pradesh | 67 | #119 | 257 | ₹118.10 |
| Korba Chhattisgarh | 60 | #120 | 406 | ₹107.74 |
| Raipur Chhattisgarh | 60 | #121 | 394 | ₹108.06 |
| Guwahati Assam | 60 | #122 | 388 | ₹105.73 |
| Nagaon Assam | 60 | #123 | 306 | ₹106.98 |
| Nalbari Assam | 60 | #124 | 324 | ₹106.02 |
| Silchar Assam | 60 | #125 | 400 | ₹106.43 |
| Ahmedabad Gujarat | 60 | #126 | 494 | ₹101.83 |
| Bahadurgarh Haryana | 60 | #127 | 394 | ₹103.28 |
| Bhiwani Haryana | 60 | #128 | 469 | ₹103.29 |
| Gandhinagar Gujarat | 60 | #129 | 371 | ₹101.93 |
| Kaithal Haryana | 60 | #130 | 306 | ₹102.83 |
| Kurukshetra Haryana | 60 | #131 | 341 | ₹102.78 |
| Panipat Haryana | 60 | #132 | 359 | ₹102.25 |
| Yamuna Nagar Haryana | 60 | #133 | 475 | ₹103.03 |
| Gurugram Haryana | 60 | #134 | 488 | ₹103.28 |
| Agra Uttar Pradesh | 60 | #135 | 406 | ₹101.54 |
| Baraut Uttar Pradesh | 60 | #136 | 373 | ₹101.86 |
| Bareilly Uttar Pradesh | 60 | #137 | 376 | ₹101.97 |
| Amritsar Punjab | 60 | #138 | 359 | ₹105.56 |
| Bathinda Punjab | 60 | #139 | 335 | ₹104.72 |
| Khanna Punjab | 60 | #140 | 475 | ₹105.56 |
| Rupnagar Punjab | 60 | #141 | 494 | ₹105.56 |
| Chennai Tamil Nadu | 60 | #142 | 494 | ₹107.74 |
| Bulandshahr Uttar Pradesh | 60 | #143 | 365 | ₹102.75 |
| Ghaziabad Uttar Pradesh | 60 | #144 | 494 | ₹101.88 |
| Greater Noida Uttar Pradesh | 60 | #145 | 481 | ₹102.06 |
| Kanpur Uttar Pradesh | 60 | #146 | 481 | ₹101.59 |
| Lucknow Uttar Pradesh | 60 | #147 | 438 | ₹101.86 |
| Mathura Uttar Pradesh | 60 | #148 | 306 | ₹101.32 |
| Meerut Uttar Pradesh | 60 | #149 | 488 | ₹101.51 |
| Moradabad Uttar Pradesh | 60 | #150 | 494 | ₹102.56 |
| Noida Uttar Pradesh | 60 | #151 | 365 | ₹102.12 |
| Raebareli Uttar Pradesh | 60 | #152 | 475 | ₹102.31 |
| Shamli Uttar Pradesh | 60 | #153 | 494 | ₹101.86 |
| Varanasi Uttar Pradesh | 60 | #154 | 329 | ₹102.51 |
| Chandigarh Chandigarh | 60 | #155 | 425 | ₹101.54 |
| Faridabad Haryana | 60 | #156 | 329 | ₹103.28 |
| Jalandhar Punjab | 60 | #157 | 456 | ₹104.82 |
| Fatehpur Sikri Uttar Pradesh | 60 | #158 | 312 | ₹101.86 |
| Khora Uttar Pradesh | 60 | #159 | 438 | ₹101.86 |
| Nandesari Gujarat | 60 | #160 | 463 | ₹102.04 |
| Kunjemura Chhattisgarh | 59 | #161 | 329 | ₹108.30 |
| Bhilai Chhattisgarh | 59 | #162 | 347 | ₹108.30 |
| Chhal Chhattisgarh | 59 | #163 | 312 | ₹108.30 |
| Bengaluru Karnataka | 59 | #164 | 438 | ₹110.93 |
| Mumbai Maharashtra | 59 | #165 | 413 | ₹111.21 |
| Pimpri-Chinchwad Maharashtra | 59 | #166 | 488 | ₹111.21 |
| Pune Maharashtra | 59 | #167 | 488 | ₹111.52 |
| Navi Mumbai Maharashtra | 59 | #168 | 376 | ₹111.31 |
| Cuttack Odisha | 59 | #169 | 341 | ₹109.33 |
| Keonjhar Odisha | 59 | #170 | 444 | ₹108.97 |
| Rourkela Odisha | 59 | #171 | 413 | ₹108.97 |
| Talcher Odisha | 59 | #172 | 324 | ₹108.97 |
| Thane Maharashtra | 59 | #173 | 431 | ₹111.38 |
| Mira-Bhayandar Maharashtra | 59 | #174 | 306 | ₹111.21 |
| Angul Odisha | 59 | #175 | 475 | ₹110.49 |
| Barbil Odisha | 59 | #176 | 306 | ₹108.97 |
| Bhubaneswar Odisha | 59 | #177 | 400 | ₹108.97 |
| Milupara Chhattisgarh | 59 | #178 | 324 | ₹108.30 |
| Bilaspur Chhattisgarh | 59 | #179 | 463 | ₹108.76 |
| Virar Maharashtra | 59 | #180 | 324 | ₹111.21 |
| Balasore Odisha | 59 | #181 | 431 | ₹108.97 |
| Bileipada Odisha | 59 | #182 | 341 | ₹108.97 |
| Brajrajnagar Odisha | 59 | #183 | 494 | ₹108.97 |
| Byasanagar Odisha | 59 | #184 | 438 | ₹108.97 |
| Rairangpur Odisha | 59 | #185 | 382 | ₹108.97 |
| Arrah Bihar | 58 | #186 | 419 | ₹113.72 |
| Bhagalpur Bihar | 58 | #187 | 431 | ₹114.20 |
| Muzaffarpur Bihar | 58 | #188 | 353 | ₹114.10 |
| Patna Bihar | 58 | #189 | 488 | ₹113.37 |
| Saharsa Bihar | 58 | #190 | 463 | ₹113.37 |
| Hajipur Bihar | 58 | #191 | 329 | ₹113.42 |
| Kishanganj Bihar | 58 | #192 | 425 | ₹115.05 |
| Indore Madhya Pradesh | 58 | #193 | 400 | ₹114.61 |
| Jabalpur Madhya Pradesh | 58 | #194 | 444 | ₹114.62 |
| Pithampur Madhya Pradesh | 58 | #195 | 306 | ₹114.45 |
| Aurangabad Maharashtra | 58 | #196 | 450 | ₹112.86 |
| Chandrapur Maharashtra | 58 | #197 | 431 | ₹112.93 |
| Ujjain Madhya Pradesh | 58 | #198 | 488 | ₹114.90 |
| Akola Maharashtra | 58 | #199 | 347 | ₹112.06 |
| Kannur Kerala | 58 | #200 | 312 | ₹113.82 |
| Chikkamagaluru Karnataka | 58 | #201 | 382 | ₹111.68 |
| Bhopal Madhya Pradesh | 58 | #202 | 450 | ₹114.54 |
| Dewas Madhya Pradesh | 58 | #203 | 394 | ₹114.97 |
| Jalna Maharashtra | 58 | #204 | 353 | ₹113.18 |
| Kolhapur Maharashtra | 58 | #205 | 359 | ₹112.13 |
| Nagpur Maharashtra | 58 | #206 | 382 | ₹111.72 |
| Nanded Maharashtra | 58 | #207 | 341 | ₹113.17 |
| Nashik Maharashtra | 58 | #208 | 463 | ₹112.46 |
| Solapur Maharashtra | 58 | #209 | 335 | ₹111.84 |
| Jodhpur Rajasthan | 58 | #210 | 463 | ₹112.49 |
| Karauli Rajasthan | 58 | #211 | 329 | ₹113.47 |
| Kota Rajasthan | 58 | #212 | 450 | ₹112.21 |
| Pali Rajasthan | 58 | #213 | 438 | ₹113.26 |
| Alwar Rajasthan | 58 | #214 | 469 | ₹113.34 |
| Rajsamand Rajasthan | 58 | #215 | 359 | ₹113.19 |
| Sawai Madhopur Rajasthan | 58 | #216 | 413 | ₹113.53 |
| Sikar Rajasthan | 58 | #217 | 306 | ₹113.76 |
| Sirohi Rajasthan | 58 | #218 | 312 | ₹113.99 |
| Sri Ganganagar Rajasthan | 58 | #219 | 413 | ₹113.19 |
| Tonk Rajasthan | 58 | #220 | 488 | ₹113.51 |
| Barmer Rajasthan | 58 | #221 | 312 | ₹114.15 |
| Bharatpur Rajasthan | 58 | #222 | 347 | ₹112.43 |
| Bhilwara Rajasthan | 58 | #223 | 312 | ₹113.40 |
| Bhiwadi Rajasthan | 58 | #224 | 341 | ₹113.19 |
| Chittorgarh Rajasthan | 58 | #225 | 306 | ₹112.51 |
| Churu Rajasthan | 58 | #226 | 335 | ₹114.15 |
| Dausa Rajasthan | 58 | #227 | 371 | ₹113.71 |
| Hanumangarh Rajasthan | 58 | #228 | 335 | ₹114.16 |
| Jaipur Rajasthan | 58 | #229 | 475 | ₹112.66 |
| Jalore Rajasthan | 58 | #230 | 318 | ₹113.90 |
| Asansol West Bengal | 58 | #231 | 488 | ₹113.51 |
| Durgapur West Bengal | 58 | #232 | 475 | ₹113.51 |
| Howrah West Bengal | 58 | #233 | 494 | ₹113.50 |
| Kolkata West Bengal | 58 | #234 | 469 | ₹113.51 |
| Siliguri West Bengal | 58 | #235 | 347 | ₹113.51 |
| Gaya Bihar | 58 | #236 | 394 | ₹114.52 |
| Gwalior Madhya Pradesh | 58 | #237 | 475 | ₹114.48 |
| Kalaburagi Karnataka | 58 | #238 | 456 | ₹111.68 |
| Mysuru Karnataka | 58 | #239 | 347 | ₹111.68 |
| Barrackpore West Bengal | 58 | #240 | 431 | ₹113.51 |
| Manguraha Bihar | 58 | #241 | 376 | ₹113.37 |
| Munger Bihar | 58 | #242 | 413 | ₹113.77 |
| Maihar Madhya Pradesh | 58 | #243 | 353 | ₹114.45 |
| Singrauli Madhya Pradesh | 58 | #244 | 413 | ₹114.64 |
| Baran Rajasthan | 58 | #245 | 450 | ₹112.94 |
| Ajmer Rajasthan | 58 | #246 | 463 | ₹112.31 |
| Amaravati Andhra Pradesh | 57 | #256 | 306 | ₹117.41 |
| Katni Madhya Pradesh | 57 | #257 | 431 | ₹115.60 |
| Satna Madhya Pradesh | 57 | #258 | 324 | ₹116.02 |
| Eloor Kerala | 57 | #259 | 365 | ₹115.49 |
| Thiruvananthapuram Kerala | 57 | #260 | 318 | ₹115.49 |
| Hyderabad Telangana | 57 | #261 | 431 | ₹115.69 |
| Anantapur Andhra Pradesh | 57 | #247 | 406 | ₹117.61 |
| Chittoor Andhra Pradesh | 57 | #248 | 324 | ₹118.34 |
| Eluru Andhra Pradesh | 57 | #249 | 324 | ₹117.91 |
| Guntur Andhra Pradesh | 57 | #250 | 329 | ₹117.68 |
| Machilipatnam Andhra Pradesh | 57 | #251 | 312 | ₹117.94 |
| Nellore Andhra Pradesh | 57 | #252 | 425 | ₹118.14 |
| Rajamahendravaram Andhra Pradesh | 57 | #253 | 306 | ₹117.41 |
| Tirupati Andhra Pradesh | 57 | #254 | 324 | ₹117.41 |
| Vijayawada Andhra Pradesh | 57 | #255 | 431 | ₹117.25 |
The Cost of Living & Breathing Index rolls two numbers that already live separately on this site, today's Air Quality Index reading and how the local fuel price compares to that day's national average, into one 0 to 100 score per city. It exists for a practical reason: someone weighing a job offer in one city against another, or deciding where to relocate, usually ends up opening two separate pages and doing that comparison by hand. This page does it for over 200 Indian cities at once, however many Central Pollution Control Board (CPCB) stations reported a reading that day, so a city like Kurukshetra in Haryana, clean air and fuel close to the national average, scores 100, while a city like Rajamahendravaram in Andhra Pradesh, an AQI of 306 on the day this was checked, scores 57 on the same scale.
Every city starts at 100 points. Today's CPCB Air Quality Index reading takes off up to 40 of those: nothing comes off at AQI 50 or under (CPCB's own Good band), 10 points at 51 to 100, 20 at 101 to 200, 30 at 201 to 300, and the full 40 at 301 and above. Fuel price takes off up to 30 more, scaled to how far the city's petrol price sits above that day's national average, nothing comes off if it's at or below average. Most Indian states set petrol at the state level rather than city by city, so cities sharing a state generally share this half of the score too. Nothing else feeds into it. Gold price and a flat seasonal number were both tried and dropped early on, since neither actually varies from one city to the next on a given day, which made the score worse, not better, at telling cities apart.
There's no separate danger scale here the way there is for AQI on its own, just how much air quality and fuel price together have chipped away from a perfect 100. Because air quality alone can only cost 40 points and fuel only 30, the lowest a city can score is 30, not zero, so anything under 60 already reflects close to the worst combination this scale can show, not a city in visible crisis. Above 80 means both inputs are close to their best band: air clean enough to skip a mask outdoors, and fuel at or below the national average that day. Anything sitting in the 60s or below is worth clicking through to that city's own page, since the combined score alone won't tell you which of the two, dirtier air or pricier fuel, is actually driving it down.
Scores recompute once a day, so checking first thing gives that day's actual number rather than yesterday's. It's most useful side by side, comparing two or three specific cities before a move or a relocation decision, rather than read in isolation, since one city's score alone means little without something to measure it against. It's worth saying plainly what this isn't: it's not a full cost of living measure, rent, groceries, school fees and healthcare aren't in it at all, it only tracks the two things named in its formula above. Anyone actually relocating should treat this as a quick first filter alongside the fuel and air quality pages themselves, not a replacement for the harder homework a real move deserves.
Relocation impact: Comparing job offers or a possible move across two cities usually means opening the AQI page for one and the fuel page for the other, then doing the comparison in your head; collapsing both into one number makes that comparison faster, not more accurate, but faster is still useful. A real example: on the day this was checked, Kurukshetra in Haryana scored 100 (AQI 17, fuel close to the national average) while Rajamahendravaram in Andhra Pradesh scored 57 (AQI 306, fuel above average), a gap that says more at a glance than two raw numbers on two different scales. Someone weighing an offer between two similarly priced cities, in salary and rent terms, can use a sustained gap in this score as one more real data point, air quality especially matters for anyone with young children or an existing respiratory condition, without having to reconcile two different measurement scales themselves.
Daily planning impact: For residents rather than people relocating, the two inputs matter on different timescales. Fuel price is a recurring cost that shows up every fill-up, already covered in depth on this site's own fuel price page. Air quality is a same-day decision: whether an outdoor run, a child's playtime outside, or a two-wheeler commute without a mask makes sense today. A city sitting consistently in the 80s or 90s is one where neither input demands much daily thought; a city that's dropped into the 60s or below is worth a quick check of which half moved, a bad-air day worth planning around, or a fuel price that's climbed enough to matter for a delivery rider or daily commuter budgeting a tank at a time.