{"metadata":{"title":"Most Comfortable U.S. Cities","page_url":"https://plainclimate.com/rankings","source":"NOAA 1991-2020 U.S. Climate Normals","source_url":"https://www.ncei.noaa.gov/products/land-based-station/us-climate-normals","vintage":"2026-07-31","license":"CC0 1.0","license_url":"https://creativecommons.org/publicdomain/zero/1.0/","citation":"PlainClimate, \"Most Comfortable U.S. Cities\". https://plainclimate.com/rankings","position_semantics":"Display order, not competition rank; equal metric values remain tied and use a stable name tiebreaker.","methodology":"PlainClimate comfort_score is a derived 0-100 composite calculated from NOAA annual mean temperature, annual precipitation, annual snowfall, and growing-season length; equal scores are ties.","methodology_url":"https://plainclimate.com/methodology","row_count":31},"data":[{"position":1,"city":"Alice","state":"TX","city_slug":"alice-tx","annual_mean_temp_f":72.8,"avg_high_f":84.6,"avg_low_f":61.1,"annual_precip_in":29.13,"annual_snow_in":null,"comfort_score":100},{"position":2,"city":"Austwell","state":"TX","city_slug":"austwell-tx","annual_mean_temp_f":70.8,"avg_high_f":79.1,"avg_low_f":62.4,"annual_precip_in":41.89,"annual_snow_in":null,"comfort_score":100},{"position":3,"city":"Bruni","state":"TX","city_slug":"bruni-tx","annual_mean_temp_f":72.5,"avg_high_f":84,"avg_low_f":60.9,"annual_precip_in":25.69,"annual_snow_in":null,"comfort_score":100},{"position":4,"city":"Corpus Christi","state":"TX","city_slug":"corpus-christi-tx","annual_mean_temp_f":73,"avg_high_f":82.3,"avg_low_f":63.6,"annual_precip_in":31.74,"annual_snow_in":0.2,"comfort_score":100},{"position":5,"city":"Crescent City","state":"FL","city_slug":"crescent-city-fl","annual_mean_temp_f":71.3,"avg_high_f":80.4,"avg_low_f":62.1,"annual_precip_in":49.9,"annual_snow_in":0,"comfort_score":100},{"position":6,"city":"Edinburg","state":"TX","city_slug":"edinburg-tx","annual_mean_temp_f":74.9,"avg_high_f":86.2,"avg_low_f":63.6,"annual_precip_in":23.63,"annual_snow_in":null,"comfort_score":100},{"position":7,"city":"Fairfield","state":"CA","city_slug":"fairfield-ca","annual_mean_temp_f":61.7,"avg_high_f":73.8,"avg_low_f":49.6,"annual_precip_in":24.53,"annual_snow_in":0,"comfort_score":100},{"position":8,"city":"Fernandina Beach","state":"FL","city_slug":"fernandina-beach-fl","annual_mean_temp_f":70,"avg_high_f":78.1,"avg_low_f":61.9,"annual_precip_in":49.93,"annual_snow_in":0,"comfort_score":100},{"position":9,"city":"Freeport","state":"TX","city_slug":"freeport-tx","annual_mean_temp_f":71.4,"avg_high_f":79.3,"avg_low_f":63.4,"annual_precip_in":49.93,"annual_snow_in":0,"comfort_score":100},{"position":10,"city":"Hebbronville","state":"TX","city_slug":"hebbronville-tx","annual_mean_temp_f":73.9,"avg_high_f":85.6,"avg_low_f":62.3,"annual_precip_in":22.71,"annual_snow_in":0.3,"comfort_score":100},{"position":11,"city":"Immokalee","state":"FL","city_slug":"immokalee-fl","annual_mean_temp_f":74.7,"avg_high_f":85.1,"avg_low_f":64.2,"annual_precip_in":48.01,"annual_snow_in":0,"comfort_score":100},{"position":12,"city":"Kingsville","state":"TX","city_slug":"kingsville-tx","annual_mean_temp_f":73.3,"avg_high_f":83.6,"avg_low_f":63,"annual_precip_in":30.95,"annual_snow_in":0.1,"comfort_score":100},{"position":13,"city":"La Joya","state":"TX","city_slug":"la-joya-tx","annual_mean_temp_f":73.4,"avg_high_f":84.2,"avg_low_f":62.5,"annual_precip_in":20.16,"annual_snow_in":0.2,"comfort_score":100},{"position":14,"city":"Laredo","state":"TX","city_slug":"laredo-tx","annual_mean_temp_f":74.6,"avg_high_f":85.9,"avg_low_f":63.3,"annual_precip_in":21.35,"annual_snow_in":null,"comfort_score":100},{"position":15,"city":"Mathis","state":"TX","city_slug":"mathis-tx","annual_mean_temp_f":71.1,"avg_high_f":81.5,"avg_low_f":60.7,"annual_precip_in":27.5,"annual_snow_in":0,"comfort_score":100},{"position":16,"city":"Oroville","state":"CA","city_slug":"oroville-ca","annual_mean_temp_f":63.5,"avg_high_f":76.5,"avg_low_f":50.5,"annual_precip_in":30.56,"annual_snow_in":null,"comfort_score":100},{"position":17,"city":"Pasadena","state":"CA","city_slug":"pasadena-ca","annual_mean_temp_f":66,"avg_high_f":78.6,"avg_low_f":53.3,"annual_precip_in":20.08,"annual_snow_in":0,"comfort_score":100},{"position":18,"city":"Point Comfort","state":"TX","city_slug":"point-comfort-tx","annual_mean_temp_f":71.3,"avg_high_f":79.3,"avg_low_f":63.2,"annual_precip_in":41.39,"annual_snow_in":0,"comfort_score":100},{"position":19,"city":"Port Isabel","state":"TX","city_slug":"port-isabel-tx","annual_mean_temp_f":74,"avg_high_f":81.5,"avg_low_f":66.4,"annual_precip_in":28.75,"annual_snow_in":0.2,"comfort_score":100},{"position":20,"city":"Port Mansfield","state":"TX","city_slug":"port-mansfield-tx","annual_mean_temp_f":73.4,"avg_high_f":81,"avg_low_f":65.8,"annual_precip_in":25.25,"annual_snow_in":0.1,"comfort_score":100},{"position":21,"city":"Raymondville","state":"TX","city_slug":"raymondville-tx","annual_mean_temp_f":74.4,"avg_high_f":85.8,"avg_low_f":63,"annual_precip_in":25.47,"annual_snow_in":0.2,"comfort_score":100},{"position":22,"city":"Rio Grande City","state":"TX","city_slug":"rio-grande-city-tx","annual_mean_temp_f":74.4,"avg_high_f":86.7,"avg_low_f":62,"annual_precip_in":22.47,"annual_snow_in":0.1,"comfort_score":100},{"position":23,"city":"Robstown","state":"TX","city_slug":"robstown-tx","annual_mean_temp_f":73.1,"avg_high_f":83.1,"avg_low_f":63,"annual_precip_in":31.1,"annual_snow_in":0.2,"comfort_score":100},{"position":24,"city":"Rockport","state":"TX","city_slug":"rockport-tx","annual_mean_temp_f":72.4,"avg_high_f":80.4,"avg_low_f":64.4,"annual_precip_in":36.41,"annual_snow_in":0.3,"comfort_score":100},{"position":25,"city":"Sinton","state":"TX","city_slug":"sinton-tx","annual_mean_temp_f":71.5,"avg_high_f":81.3,"avg_low_f":61.8,"annual_precip_in":32.96,"annual_snow_in":0.4,"comfort_score":100},{"position":26,"city":"Tampa","state":"FL","city_slug":"tampa-fl","annual_mean_temp_f":74.5,"avg_high_f":83,"avg_low_f":66.1,"annual_precip_in":49.48,"annual_snow_in":0,"comfort_score":100},{"position":27,"city":"Vacaville","state":"CA","city_slug":"vacaville-ca","annual_mean_temp_f":63.6,"avg_high_f":77.4,"avg_low_f":49.9,"annual_precip_in":25.6,"annual_snow_in":0,"comfort_score":100},{"position":28,"city":"Vallejo","state":"CA","city_slug":"vallejo-ca","annual_mean_temp_f":61.6,"avg_high_f":73.6,"avg_low_f":49.7,"annual_precip_in":21.49,"annual_snow_in":null,"comfort_score":100},{"position":29,"city":"Weslaco","state":"TX","city_slug":"weslaco-tx","annual_mean_temp_f":75,"avg_high_f":85.2,"avg_low_f":64.8,"annual_precip_in":25.73,"annual_snow_in":null,"comfort_score":100},{"position":30,"city":"Woodland","state":"CA","city_slug":"woodland-ca","annual_mean_temp_f":62.2,"avg_high_f":76,"avg_low_f":48.3,"annual_precip_in":20.5,"annual_snow_in":0,"comfort_score":100},{"position":31,"city":"Zapata","state":"TX","city_slug":"zapata-tx","annual_mean_temp_f":74.4,"avg_high_f":85.3,"avg_low_f":63.5,"annual_precip_in":20.4,"annual_snow_in":0.1,"comfort_score":100}]}