InVEST documentation

Urban Cooling Model


Urban heat mitigation is a priority for many cities that have undergone heat waves in recent years. Vegetation can help reduce the urban heat island effect by providing shade, modifying thermal properties of the urban fabric, and increasing cooling through evapotranspiration. This has consequences for health and wellbeing of citizens through reduced mortality and morbidity, increased comfort and productivity, and reduced need for air conditioning (A/C). The InVEST urban cooling model calculates an index of heat mitigation based on shade, evapotranspiration, and albedo, as well as distance from cooling islands (e.g. parks). The index is used to estimate a temperature reduction by vegetation. Finally, the model estimates the value of the heat mitigation service using two (optional) valuation methods: energy consumption and work productivity.


The urban heat island (UHI) effect affects many cities around the world, with major consequences on human health and wellbeing: high mortality or morbidity during heat waves, high A/C consumption, and reduced comfort or work productivity. The urban heat island effect, i.e. the difference between rural and urban temperatures, is caused by a change in the energy balance in cities due to two main factors: the thermal properties of materials used in urban areas (e.g. concrete, asphalt), which store more heat, and the reduction of the cooling effect of vegetation (through shade and evapotranspiration). Natural infrastructure therefore plays a role in reducing the urban heat island in cities. Using the rapidly-growing literature on urban heat modeling (Deilami et al., 2018), the InVEST urban cooling model estimates the cooling effect of vegetation based on commonly available data on climate, land use/land cover (LULC), and (optionally) A/C use.

The Model

How it works

Cooling capacity index

The model first computes the cooling capacity index for each pixel based on local shade, evapotranspiration, and albedo. This approach is based on the indices proposed by Zardo et al. 2017 and Kunapo et al. 2018, to which we add albedo, an important factor for heat reduction. The shade factor (‘shade’) represents the proportion of tree canopy (for trees >2m) associated with each land use/land cover (LULC) category. Its value is comprised between 0 and 1. The evapotranspiration index represents a normalized value of potential evapotranspiration, i.e. the evapotranspiration from vegetation (or evaporation from soil, for unvegetated areas). It is calculated for each pixel by multiplying the reference evapotranspiration (\(ET0\), provided by the user) and the crop coefficient (\(Kc\) , associated with the pixel’s LULC type), and dividing by the maximum value of the \(ET0\) raster in the area of interest, \(ETmax\).:

(82)\[ETI = \frac{K_c \cdot ET0}{ET_{max}}\]

Note that this equation assumes that vegetated areas are sufficiently irrigated (although Kc values can be reduced to represent water-limited evapotranspiration).

The albedo factor is a value between 0 and 1 representing the proportion of solar radiation reflected by the LULC type (Phelan et al. 2015).

The model combines the three factors in the cooling capacity (CC) index:

(83)\[CC_i = 0.6 \cdot shade + 0.2\cdot albedo + 0.2\cdot ETI\]

The default weighting (0.6; 0.2; 0.2) is based on empirical data and reflects the higher impact of shading compared to evapotranspiration. For example, Zardo et al. (2017) report that “in areas smaller than two hectares [evapotranspiration] was assigned a weight of 0.2 and shading of 0.8. In areas larger than two hectares the weights were changed to 0.6 and 0.4, for [evapotranspiration] and shading respectively”. In the present model, we propose to disaggregate the effect of shade and albedo in Eq. 2, and give albedo equal weight to ETI based on the results by Phelan et al. (2015) (see Table 2 in their study showing that vegetation and albedo have similar coefficients).

Note: alternative weights can be manually entered by the user for testing the sensitivity of the model outputs to this parameter (or if local knowledge is available).

Optionally, the model can consider another factor, intensity (\(building.intensity\) for a given landcover classifcation), which captures the vertical dimension of built infrastructure. Building intensity is an important predictor of night-time temperature since heat stored during the day is released by buildings during the night. To predict night-time temperatures, users need to provide the building intensity factor for each land use type in the Biophysical Table and the model will change equation (83) to:

(84)\[CC_i = 1 - building.intensity\]

Urban heat mitigation index (effect of large green spaces)

To account for the cooling effect of large green spaces (>2 ha) on surrounding areas (see discussion in Zardo et al., 2017 and McDonald et al. 2016), the model calculates the urban heat mitigation (HM) index: HM is equal to CC if the pixel is unaffected by a large green spaces, and otherwise set to a distance-weighted average of the CC values from the large green space and the pixel of interest.

To do so, the model first computes the amount of green areas within a search distance \(d_{cool}\) around each pixel (\(GA_i\)), and the cooling capacity provided by each park (\(CC_{park_i}\)):

(85)\[{GA}_{i}=cell_{area}\cdot\sum_{j\in\ d\ radius\ from\ i} g_{j}\]
(86)\[CC_{park_i}=\sum_{j\in\ d\ radius\ from\ i} g_j \cdot CC_j \cdot e^{\left( \frac{-d(i,j)}{d_{cool}} \right)}\]

where \(cell_{area}\) is the area of a cell in ha, \(g_j\) is 1 if pixel \(j\) is green space, 0 otherwise, \(d(i,j)\) is the distance between pixel \(i\) and \(j\), \(d_{cool}\) is the distance over which a green space has a cooling effect, and \(CC_{park_i}\) is the distance weighted average of the CC values from green spaces. Note that LULC that count as “green area” are determined by the user with the parameter ‘green_area’ in the biophysical table, see Input table in Section 3. Then, the HM index is calculated as:

(87)\[\begin{split}HM_i = \begin{Bmatrix} CC_i & if & CC_i \geq CC_{park_i}\ or\ GA_i < 2 ha \\ CC_{park_i} & & otherwise \end{Bmatrix}\end{split}\]

Air temperature estimates

To estimate heat reduction throughout the city, the model uses the (city-scale) urban heat island (UHI) magnitude, UHI_max. Users can obtain UHI values from local literature or global studies: for example, the Global Surface UHI Explorer developed by the University of Yale, provides estimates of annual, seasonal, daytime, and nighttime UHI ( Note that UHI magnitude is defined for a specific period (e.g. current or future climate) and time (e.g. nighttime or daytime temperatures). The selection of period and time will affect the service valuation.

Air temperature without air mixing \(T_{air_{nomix}}\) is calculated for each pixel as:

(88)\[T_{air_{nomix},i}=T_{air,ref} + (1-HM_i)\cdot UHI_{max}\]

Where \(T_{air,ref}\) is the rural reference temperature and \(UHI_{max}\) is the magnitude of the UHI effect for the city.

Due to air mixing, these temperatures average spatially. Actual air temperature (with mixing), \(T_{air}\), is derived from \(T_{air_{nomix}}\) using a Gaussian function with kernel radius \(r\), defined by the user.

For each area of interest (which is a vector GIS layer provided by the user), we calculate average temperature and temperature anomaly \((T_{air,i} - T_{air,ref})\).

Value of heat reduction service

The value of temperature reduction can be assessed in at least three ways:

  1. energy savings from reduced electricity consumption, when A/C is prevalent;

  2. gain in work productivity for outdoor workers;

  3. decrease in heat-related morbidity and mortality.

The model provides estimates of the first two, energy savings and work productivity, based on global regression analyses or local data.

Energy savings: the model uses a relationship between energy consumption and temperature (e.g. summarized by Santamouris et al., 2015), to calculate energy savings and associated costs for a building \(b\):

(89)\[Energy.savings(b)= consumption.increase(b) \cdot (\overline{T_{air,MAX} - T_{air,i}})\]


  • \(consumption.increase(b)\) (kWh/degree C/\(m^2\)) is the local estimate of the energy consumption increase per each degree of temperature per square meter of the building footprint, for building category \(b\).

  • \(T_{air,MAX}\) (degC) is the maximum temperature over the landscape \((T_{air,ref} + UHI_{max})\);

  • \(\overline{T_{air,MAX} - T_{air,i}}\) (degC) is the average difference in air temperature for building \(b\), with \(T_{air,i}\) modeled in the previous steps.

If costs are provided for each building category, equation (89) is replaced by equation (90)

(90)\[Energy.savings(b)= consumption.increase(b) \cdot (\overline{T_{air,MAX} - T_{air,i}}) \cdot cost(b)\]


  • \(cost(b)\) is the estimate of energy cost per kWh for building category \(b\). Note that this is very likely to be equal for all buildings.

To calculate total energy savings, we sum the pixel-level values over the area of interest.

Work Productivity: To calculate impacts of heat on work productivity, the model converts air temperature into Wet Bulb Globe Temperature (WBGT). This temperature takes into account humidity, and can be estimated from standard meteorological data in the following way (Source: American College of Sports Medicine, Prevention of thermal injuries during distance running - Position Stand. Med.J.Aust. 1984 Dec. 876 - see here):

(91)\[WBGT_i = 0.567 \cdot T_{air,i} + 0.393 \cdot e_i + 3.94\]


  • \(T_{air}\) = temperature provided by the model (Dry bulb temperature (\(T_C\) ))

  • \(e_i\) = Water vapour pressure (hPa) [humidity]

The vapour pressure is calculated from the temperature and relative humidity using the equation:

(92)\[e_i = \frac{RH}{100} \cdot 6.105 \cdot e^{\left ( 17.27 \cdot \frac{T_{air,i}}{(237.7 + T_{air,i})} \right )}\]


  • \(RH\) = average Relative Humidity [%] provided by the user

For each pixel, the model computes the estimated loss in productivity, in %, for two work intensities: “light work” and “heavy work” (based on rest time needed at different work intensities, as per Table 2 in Kjellstrom et al., 2009):

(93)\[\begin{split}Loss.light.work_i = \begin{Bmatrix} 0 & if & WBGT < 31.5\\ 25 & if & 31.5 \leq WBGT < 32.0 \\ 50 & if & 32.0 \leq WBGT < 32.5 \\ 75 & if & 32.5 \leq WBGT \\ \end{Bmatrix}\end{split}\]
(94)\[\begin{split}Loss.heavy.work_i = \begin{Bmatrix} 0 & if & WBGT < 27.5\\ 25 & if & 27.5 \leq WBGT < 29.5 \\ 50 & if & 29.5 \leq WBGT < 31.5 \\ 75 & if & 31.5 \leq WBGT \\ \end{Bmatrix}\end{split}\]

Here, “light work” corresponds to approx. 200 Watts metabolic rate, i.e. office desk work and service industries, and “heavy work” corresponds to 400 W, i.e. construction or agricultural work. If city-specific data on distribution of gross labor sectors is not available, the user can estimate the working population of the city in 3 sectors (service, industry, agriculture) using national-level World Bank data (e.g. “employment in industry, male (%)” and similar). Given the resting times in Table 2, and the proportion of working population in different sectors, loss of work time can be calculated for a given temperature. If local data on average hourly salaries for the different sectors are available, these losses in work time can be translated to monetary losses.

Finally, for “light work”, note that A/C prevalence can play a role. If most office buildings are equipped with A/C, the user might want to reduce the loss of work time for the service sector by the same proportion as A/C prevalence.

Limitations and simplifications

Due to the simplifications presented above, the model presents a number of limitations which we summarize below:

Cooling capacity index: the CC index relies on empirical weights, derived from a limited number of case studies, which modulate the effect of key factors contributing to the cooling effect (Eq. 2). This weighting step comprises high uncertainties, as reviewed in Zardo et al. (2017). To characterize and reduce this uncertainty, users can test the sensitivity of the model to these parameters or conduct experimental studies that provide insights into the relative effect of shade, albedo, and evapotranspiration.

Effect of large parks and air mixing: two parameters capture the effect of large green spaces and the air mixing ( \(d_{cool}\) and \(r\)). The value of these parameters is difficult to derive from the literature, as it varies with the vegetation properties, climate (effect of large green spaces) and wind patterns (air mixing). Similar to CC, users can characterize and reduce these uncertainties by testing the sensitivity of the model to these parameters and comparing spatial patterns of temperature estimated by the model with observed or modeled data (see Bartesaghi et al., 2018 and Deilami et al., 2018 for additional insights into such comparisons)

Valuation options: the valuation options currently supported by the model are related to the A/C energy consumption and the outside work productivity. For A/C energy consumption, users need to assess A/C prevalence, and reduce estimates accordingly (i.e. reduce energy consumption proportionally to actual use of A/C).

Valuation of the health effects of urban heat is currently not included in the model, despite their importance (McDonald et al. 2016). This is because these effects vary dramatically across cities and it is difficult to extrapolate current knowledge based predominantly in the global North (Campbell et al. 2018). Possible options to obtain health impact estimates include: using global data from McMichael et al. (2004, WHO report), who use a linear relationship above a threshold temperature to estimate the annual attributable fraction of deaths due to hot days for applications in the US, a methodology was developed based on national-scale relationships between mortality and temperature change: see Mc Donald et al. (in review)

Gasparrini et al. (2014) break down the increase in mortality attributable to heat for 384 cities in 13 countries. \(T_air\) output from the InVEST model could be used to determine the mortality fraction attributable to heat (first determine in which percentile \(T_{air,i}\) falls, then use Table S3 or Table S4 in the appendix).

Data needs

  • Workspace (required): Folder where model outputs will be written. Make sure that there is ample disk space, and write permissions are correct.

  • Suffix (optional): Text string that will be appended to the end of output file names, as “_Suffix”. Use a Suffix to differentiate model runs, for example by providing a short name for each scenario. If a Suffix is not provided, or changed between model runs, the tool will overwrite previous results.

  • Land Cover Map (required): Raster of land use/land cover (LULC) for each pixel, where each unique integer represents a different land use/land cover class. All values in this raster MUST have corresponding entries in the Land Cover Biophysical Table. The model will use the resolution of this layer to resample all outputs. The resolution should be small enough to capture the effect of green areas in the landscape, although LULC categories can comprise a mix of vegetated and non-vegetated covers (e.g. “residential”, which may have 30% canopy cover)

  • Biophysical Table (required): A .csv (Comma Separated Value) table containing model information corresponding to each of the land use classes in the Land Cover Map. All LULC classes in the Land Cover raster MUST have corresponding values in this table. Each row is a land use/land cover class and columns must be named and defined as follows:

    • lucode: Required. Land use/land cover class code. LULC codes must match the ‘value’ column in the Land Cover Map raster and must be integer or floating point values, in consecutive order, and unique.

    • Shade: a value between 0 and 1, representing the proportion of tree cover (0 for no tree; 1 for full tree cover; with trees>2m). Required if using the weighted factor approach to Cooling Coefficient calculations.

    • Kc: Required. Crop coefficient, a value between 0 and 1 (see Allen et al. 1998).

    • Albedo: a value between 0 and 1, representing the proportion of solar radiation directly reflected by the LULC type. Required if using the weighted factor approach to Cooling Coefficient calculations.

    • Green_area: Required. A value of either 0 or 1, 1 meaning that the LULC is counted as a green area (green areas >2ha have an additional cooling effect), and 0 meaning that the LULC is not counted as a green area.

    • Building_intensity: A floating-point value between 0 and 1. This is calculated by dividing the floor area by the land area, normalized between 0 and 1. Required if using the weighted factor approach to Cooling Coefficient calculations.

  • Reference evapotranspiration: a raster representing reference evapotranspiration (units of millimeters) for the period of interest (could be a specific date or monthly values can be used as a proxy)

  • Areas of interest: polygon vector delineating areas of interest (city boundaries or neighborhoods boundaries). Results will be aggregated within each shape contained in this vector

  • Green Area Maximum Cooling Distance (\(d_{cool}\)) : Distance (in meters) over which large urban parks (> 2 ha) will have a cooling effect

  • Reference Air Temperature (\(T_{ref}\)): Rural reference temperature (where the urban heat island effect is not observed) for the period of interest. This could be nighttime or daytime temperature, for a specific date or an average over several days. The results will be given for the same period of interest).

  • Magnitude of the UHI Effect (\(UHI_{max}\)) : Magnitude of the urban heat island effect, in degrees Celcius, i.e. the difference between the rural reference temperature and the maximum temperature observed in the city.

  • Air Temperature Maximum Blending Distance: Search radius (in meters) used in the moving average to account for air mixing (default value: 2000m)

  • Cooling capacity calculation method: Either “Weighted Factors” or “Building Intensity”. The method selected here determines the predictor used for air temperature. If “Weighted Factors” is selected, the Cooling Capacity calculations will use the weighted factors for shade, albedo and ETI as a predictor for daytime temperatures. Alternatively, if “Building Intensity” is selected, building intensity will be used as a predictor for nighttime temperature instead of shade, albedo and ETI.

  • Building Footprints Vector (Required if doing energy savings valuation): vector with built infrastructure footprints. The attribute table must contain a column ‘Type’, with integers referencing the building type (e.g. 1=residential, 2=office, etc.)

  • Energy_consumption (Required if doing energy savings valuation): A .csv (Comma Separated Value) table containing information on energy consumption for each building type, in kWh/degC/\(m^2\). The table must contain the following columns:
    • “Type”: building type defined in the vector above

    • “Consumption”: energy consumption per building type, in kWh/degC/\(m^2\), where the \(m^2\) refers to the area of the polygon footprint of the building in \(m^2\). This consumption value must be adjusted for the average number of stories that structures of this type will have.

    • “RH” (optional): Average Relative Humidity [%] during the period of interest, which is used to calculate the wet bulb globe temperature for the work productivity module.

    • “cost” (optional): The cost per kWh (\(\$/kWh\)) of electricity for each building type. (Any monetary unit may be used in place of \(\$\).) If this column is provided in the Energy Consumption table, the energy_sav field in the output vector buildings_with_stats.shp will be in monetary units rather than kWh. This column is very likely to be the same for all building types.

  • Average relative humidity (0-100%) (Required if doing work productivity valuation): The average relative humidity (0-100%) over the time period of interest.

  • Cooling capacity: adjust shade weight. The relative weight to apply to shade when calculating the cooling index. Default value: 0.6.

  • Cooling capacity: adjust albedo weight. The relative weight to apply to albedo when calculating the cooling index. Default value: 0.2.

  • Cooling capacity: adjust evapotranspiration weight. The relative weight to apply to ETI when calculating the cooling index. Default value: 0.2.

Interpreting outputs

The following is a short description of each of the outputs from the urban cooling model. Final results are found within the user defined Workspace specified for this model run. “Suffix” in the following file names refers to the optional user-defined Suffix input to the model. Parameter log: Each time the model is run, a text (.txt) file will be created in the Workspace. The file will list the parameter values and output messages for that run and will be named according to the service, the date and time. When contacting NatCap about errors in a model run, please include the parameter log.

  • hm_[Suffix].tif: The calculated Heat Mitigation (HM) Index.

  • uhi_results_[Suffix].shp: A copy of the input vector with areas of interest with the following additional fields:
    • “avg_cc” - Average cooling capacity (CC) value (-)

    • “avg_tmp_v” - Average temperature value (degrees centigrade)

    • “avg_tmp_an” - Average temperature anomaly (degrees centigrade)

    • “avd_eng_cn” - (Optional) Avoided energy consumption ($)

    • “avg_wbgt_v” - (Optional) Average Wet Bulb Globe Temperature (WBGT) (degrees centigrade)

    • “avg_ltls_v” - (Optional) (%)

    • “avg_hvls_v” - (Optional) (%)

  • buildings_with_stats_[Suffix].shp: A copy of the input vector with buildings with the following additional fields
    • “energy_sav” - Energy savings value (kWh or monetary unit if optional energy cost input column is provided in the Energy Consumption CSV). Savings are relative to a theoretical scenario where the city contains NO natural areas nor green spaces; where CC = 0 for all landcover classes.

    • “mean_t_air” - Average temperature value in building (degrees centigrade)

In the intermediate folder, additional model outputs can be found:

  • cc_[Suffix].tif: raster with values of the cooling capacity (CC)

  • T_air_[Suffix].tif: raster with estimated temperature values

  • T_air_nomix_[Suffix].tif: raster with estimated temperature values prior to air mixing (i.e. before applying the moving average algorithm)

  • eti_[Suffix].tif: raster with values of actual evapotranspiration (reference evapotranspiration times crop coefficient Kc)

  • wbgt_[Suffix].tif: The calculated Wet Bulb Globe Temperature (WBGT)

  • reprojected_aoi_[Suffix].shp: The user-defined Area of Interest, reprojected to the Spatial Reference of the LULC.

  • reprojected_buildings_[Suffix].shp: The user-defined buildings vector, reprojected to the Spatial Reference of the LULC.

Appendix: Data sources and guidance for parameter selection

The following table summarizes possible data sources for inputs specific to the urban cooling model. Additional information on common InVEST inputs (e.g. LULC, evapotranspiration) can be found in the annual water yield model documentation.



Albedo (in Biophysical table)

Albedo for urban built infrastructure can be found in local microclimate literature. Deilami et al. (2018) and Bartesaghi et al. (2018) provide a useful review.

Stewart and Oke (2012) provide value ranges for typical land use/ land cover categories.


Distance (in m) over which large urban parks (> 2 ha) will have a cooling effect. See a short review in Zardo et al. (2017), including a study that report a cooling effect at a distance five times the trees height. In the absence of local studies, an estimate of 100 m can be used.


Rural reference temperature can be obtained from local temperature stations or global climate data.


Magnitude of the UHI effect, i.e. the difference between the maximum temperature in the city and the reference temperature. In the absence of local studies, users can obtain values from a global study conducted by Yale:


Search radius (in m) used in the moving average to account for air mixing. A default value of 500m can be used based on preliminary tests in pilot cities (Minneapolis-St Paul, Paris). This parameter can be used as a calibration parameter if observed or modeled temperature data are available.


The built infrastructure shapefile may be obtained from the City or open source data such as Open Street Map.

Energy consumption /deg C (optional)

Energy consumption varies widely across countries and cities. Santamouris et al., 2015 provide estimates of the energy consumption /degC for a number of cities worldwide. For the United States, EPA EnergyStar Portfolio Manager data may provide categorical averages as well as data for specific buildings: Note: If A/C prevalence is low, this valuation metric should not be used as it assumes that energy costs will increase with higher temperatures (and higher A/C use). A/C prevalence data for the US can be obtained from the American Housing Survey:

RH (optional)

Average Relative Humidity [%] during heat waves can be obtained from local temperature stations or global climate data


  • What is the output resolution?

    Model outputs are of two types: rasters and vectors. Rasters will have the same resolution as the LULC input (all other raster inputs will be resampled to the same resolution).

  • Why aren’t the health impacts calculated by the model?

    Effects of heat on human health vary dramatically across cities and it is difficult to develop a generic model within InVEST. See the point Valuation of the health effects in the Model limitations section for additional details and pathways to assess the health impacts of urban heat mitigation.


Allen, R. G., Pereira, L. S., Raes, D., & Smith, M. (1998). Crop evapotranspiration - Guidelines for computing crop water requirements - FAO Irrigation and drainage paper 56. FAO, Rome, Italy.

Bartesaghi, C., Osmond, P., & Peters, A. (2018). Evaluating the cooling effects of green infrastructure : A systematic review of methods , indicators and data sources. Solar Energy, 166(February), 486-508.

Campbell, S., Remenyi, T. A., White, C. J., & Johnston, F. H. (2018). Heatwave and health impact research: A global review. Health & Place, 53, 210-218.

Deilami, K., Kamruzzaman, M., & Liu, Y. (2018). Urban heat island effect: A systematic review of spatio-temporal factors, data, methods, and mitigation measures. International Journal of Applied Earth Observation and Geoinformation, 67, 30-42.

Kjellstrom, T., Holmer, I., & Lemke, B. (2009). Workplace heat stress, health and productivity - an increasing challenge for low and middle-income countries during climate change. Global Health Action, 2, 10.3402/gha.v2i0.2047.

Kunapo, J., Fletcher, T. D., Ladson, A. R., Cunningham, L., & Burns, M. J. (2018). A spatially explicit framework for climate adaptation. Urban Water Journal, 15(2), 159-166.

McDonald, R. I., Kroeger, T., Boucher, T., Wang, L., & Salem, R. (2016). Planting Healthy Air: A global analysis of the role of urban trees in addressing particulate matter pollution and extreme heat. Arlington, VA.

Phelan, P. E., Kaloush, K., Miner, M., Golden, J., Phelan, B., Iii, H. S., & Taylor, R. A. (2015). Urban Heat Island : Mechanisms , Implications , and Possible Remedies. Annual Review of Environment and Resources, 285-309.

Santamouris, M., Cartalis, C., Synnefa, A., & Kolokotsa, D. (2015). On the impact of urban heat island and global warming on the power demand and electricity consumption of buildings - A review. Energy & Buildings, 98, 119-124.

Stewart, I. D., & Oke, T. R. (2012). Local climate zones for urban temperature studies. American Meteorological Society.

Zardo, L., Geneletti, D., Prez-soba, M., & Eupen, M. Van. (2017). Estimating the cooling capacity of green infrastructures to support urban planning. Ecosystem Services, 26, 225-235.