A Global Mobility Index

We introduce a global mobility index that averages Google mobility data across all available countries (weighting by population) to provide an overall view of how the pandemic has influenced human mobility

Page content

Constructing a Global Mobility Index (GMI):

In previous posts (here, and here) we introduced new Open Risk Dashboard functionalities that integrate COVID-19 community mobility data (currently focusing on the datasets provided by Google).

As a reminder, these reports chart over time human mobility trends collected from mobile geolocation data. The granularity is by geography and across different categories of places / activities such as retail and recreation areas, groceries and pharmacies, parks, transit stations, workplaces, and residential areas. Through these data sets we have available (for the first time in history) an overall quantitative view of global mobility (and Mobility Risk )!

The dataset provides mobility insights at various levels of granularity. It is quite large already (as of Dec 8 2020 it exceeds the three million observations). This abundance of data makes it quite difficult to get an overall view of what is happening. The best high level summaries that are available within the dataset are in the form of country level summaries (averaging mobility across a country’s territory)

There are currently circa 130 countries represented in the data but not all of them present data points for all the mobility categories and all timepoints. The objective of the Global Mobility Index we construct here is to derive a summary metric of global mobility, using country level data and weighting by population.

A brief refresher of the data structure

Before we embark on constructing the global mobility index, a brief reminder about the main mobility / activity categories being tracked:

  • Retail and Recreation: restaurants, cafes, shopping centers, theme parks, museums, libraries, and movie theaters
  • Grocery and Pharmacy: grocery markets, food warehouses, farmers markets, specialty food shops, drug stores, and pharmacies
  • Parks: local parks, national parks, public beaches, marinas, dog parks, plazas, and public gardens
  • Transit Stations: public transport hubs such as subway, bus, and train stations
  • Workplaces: places of work
  • Residential: places of residence

The datasets show how visits and length of stay at different places change compared to a baseline. The baseline measurement is individual per dataseries.

Mobility Indexes Per Category

We construct an index per category by weighted average of the country level indexes. For example, if $\mbox{RR}_i$ is the Retail and Recreation index for the different countries $i$, then

$ \mbox{GMI(RR)} = \sum_{i} w_i \mbox{RR}_i$

where $w_i$ is the population weighted contribution of a country to this particular index (not all countries have data). A further transformation we perform is a temporal average the country level data over weekly (sever day periods). This is done to remove the significant noise of intra-week mobility that is seen on many dataseries.

With the above processing we get a global mobility index per activity. For example the Retail and Recreation Index looks as follows:

Mobility Data Index Plot

Live versions of these mobility indexes are available at the Dashboard:

Comparing mobility data across countries is a very approximate exercise as large behavioral and definitional differences may exist between countries. Hence this analysis should be only seen as a high level, directional overview!

Combining all activity measurements into a single global index

In the previous step of the exercise we averaged indexes across different regions to get an index per activity. One further step we can pursue is to compute a global average by summing across all types of activity $k$.

$ \mbox{GMI} = \sum_{k} \frac{1}{6} \mbox{GMI(k)}$

Nota Bene: This summing is more tenuous than our previous country-level averaging. In principle mobility measurements can be aggregated in a theoretically “correct” manner but this likely requires going back to low level data, before those are classified to categories. Nevertheless, the GMI still satisfies some important properties:

The GMI index goes to 0% when mobility is back to *normal*, and it goes to -100% when mobility (for all measured categories) is reduced to zero.

Visually we can put the six indexes and the global average together as a star diagram. The light green start in the background represents 0% decline from normal (regular mobility). The reading of -38% global mobility is the worst reading during the pandemic. The current total is circa -10%.

GMI Visual

A live version of this visual that can be used to check different time periods is available here

Further Insights and Work

The Mobility Data module at OpenCPM is free and open to explore. Feel free to explore and if you have any suggestions / ideas for further functionality get in touch! In the live server version of indexes you can also hover over the data and read out index values at specific timepoints

Appendix: GMI Country Weights

We include here for reference the weights used for the construction of the GMI:

Country Population (mln) Weight
United Arab Emirates 9.4 0.002
Afghanistan 0.0 0.000
Antigua and Barbuda 0.0 0.000
Angola 29.8 0.006
Argentina 44.9 0.008
Austria 8.8 0.002
Australia 24.5 0.005
Bosnia and Herzegovina 3.5 0.001
Barbados 0.0 0.000
Bangladesh 164.7 0.031
Belgium 11.4 0.002
Burkina Faso 0.0 0.000
Bulgaria 7.0 0.001
Bahrain 1.5 0.000
Benin 0.0 0.000
Bolivia 11.1 0.002
Brazil 210.1 0.040
The Bahamas 0.4 0.000
Botswana 0.0 0.000
Belarus 9.4 0.002
Belize 0.0 0.000
Canada 37.9 0.007
Switzerland 8.5 0.002
Côte d'Ivoire 24.3 0.005
Chile 18.1 0.003
Cameroon 24.1 0.005
Colombia 49.1 0.009
Costa Rica 4.9 0.001
Cape Verde 0.0 0.000
Czechia 10.7 0.002
Germany 83.1 0.016
Denmark 5.8 0.001
Dominican Republic 10.4 0.002
Ecuador 16.6 0.003
Estonia 1.3 0.000
Egypt 94.8 0.018
Spain 46.7 0.009
Finland 5.5 0.001
Fiji 0.0 0.000
France 66.6 0.013
Gabon 0.0 0.000
United Kingdom 66.0 0.012
Georgia 3.7 0.001
Ghana 26.9 0.005
Greece 10.8 0.002
Guatemala 17.3 0.003
Guinea-Bissau 0.0 0.000
Honduras 9.3 0.002
Croatia 4.1 0.001
Haiti 0.0 0.000
Hungary 9.8 0.002
Indonesia 264.0 0.050
Ireland 4.8 0.001
Israel 9.1 0.002
India 1326.1 0.250
Iraq 38.3 0.007
Italy 60.3 0.011
Jamaica 2.9 0.001
Jordan 10.4 0.002
Japan 126.8 0.024
Kenya 48.5 0.009
Kyrgyzstan 6.2 0.001
Cambodia 16.0 0.003
South Korea 51.5 0.010
Kuwait 4.6 0.001
Kazakhstan 18.3 0.003
Laos 6.9 0.001
Lebanon 6.1 0.001
Liechtenstein 0.0 0.000
Sri Lanka 21.4 0.004
Lithuania 2.8 0.001
Luxembourg 0.6 0.000
Latvia 1.9 0.000
Libya 6.7 0.001
Morocco 36.0 0.007
Moldova 2.6 0.000
North Macedonia 2.1 0.000
Mali 0.0 0.000
Myanmar (Burma) 53.4 0.010
Mongolia 0.0 0.000
Malta 0.5 0.000
Mauritius 1.3 0.000
Mexico 130.5 0.025
Malaysia 31.6 0.006
Mozambique 29.7 0.006
Namibia 2.5 0.000
Niger 0.0 0.000
Nigeria 190.9 0.036
Nicaragua 6.2 0.001
Netherlands 17.1 0.003
Norway 5.4 0.001
Nepal 29.4 0.006
New Zealand 4.9 0.001
Oman 4.8 0.001
Panama 4.1 0.001
Peru 29.4 0.006
Papua New Guinea 0.0 0.000
Philippines 101.0 0.019
Pakistan 216.6 0.041
Poland 38.4 0.007
Portugal 10.6 0.002
Paraguay 6.8 0.001
Qatar 2.6 0.000
Romania 19.6 0.004
Serbia 7.0 0.001
Russian Federation 146.8 0.028
Rwanda 0.0 0.000
Saudi Arabia 33.0 0.006
Sweden 10.4 0.002
Singapore 5.9 0.001
Slovenia 2.1 0.000
Slovakia 5.4 0.001
Senegal 15.9 0.003
El Salvador 6.4 0.001
Togo 7.8 0.001
Thailand 65.9 0.012
Tajikistan 8.9 0.002
Turkey 82.0 0.015
Trinidad and Tobago 1.4 0.000
Tanzania 57.3 0.011
Ukraine 42.6 0.008
Uganda 42.9 0.008
United States 328.2 0.062
Uruguay 3.5 0.001
Venezuela 28.5 0.005
Vietnam 94.7 0.018
Yemen 0.0 0.000
South Africa 59.6 0.011
Zambia 17.1 0.003
Zimbabwe 16.5 0.003