Motivation

Before numbeo.com there were several other reports about cost of living indexes, i.e. reports from Mercer, UBS and Economist. However, in these reports the data behind the research was usually hidden or expensive to purchase. Furthermore, there were no guarantee that their data are correct. Manual collection of cost of living data is error prone since someone can write down wrong number or just wrote down the price of expensive milk because he didn't see other milk packages in the supermarket on the other shelf. Their reasearch was very limited in terms of the number of cities included in the reasearch and couldn't scale without big increase in expenses. Also, there is no insight about the error rate in their manually collected data. They publish just a index, which is not enough for a personal estimate since a person is not an average person due to different lifestyles such as:

  • size of a family (number of dependent persons)
  • dining out or eating at home
  • drinking alcocholic drinks and smoking or not
Other cost of living sources don't provide a systematic way to extract custom indexes. Numbeo.com provides a world-class software for extracting various economic indicators for free.

Before the Great Recession (World Economic Crysis of 2007-2009) price of properties worldwide tended to look like a crazy to the founder of this website. The price of small flat in a third world country he currently lives in was same as 310 ultra modern TFT monitors at that time. The wild speculation in property prices suggested that people really needed a tool for a speculation or to turn their speculation down.

So, that's how Numbeo was born. Numbeo :

  • gives the entire dataset for free
  • allows a person to estimate they own expenses
  • uses the wisdom of the crowd to get as reliable data as possible
  • provides a system for systematic reaserch of cost of living and property markets
  • provides a system for other systematic economical research on huge dataset with worldwide data

Methodology

Collecting and processing data

To collect data Numbeo relies on user inputs and manually collected data from authoritive sources (websites of supermarkets, governmental institutions, other surveys, etc.). There are automatic and semi-automatic filters to filter out noise data. The filter works as follows : if, for a particular price in a city, values are 5, 6, 20 and 4 in short time span, the value 20 is discarded as noise and the average of the remaining data can be used to estimate that the average price of that item in the city is 5. Or to put it briefly, Numbeo uses heuristic techonology. Using the existing manually reviewed data Numbeo periodically discards data which most likely are incorrent statistically. Due to higher number of inputs for a country than for a city, data showed on a country level contains lower noise than data showed on a city level. Filters work better when there are more inputs.

Calculating indexes

Numbeo indexes are a best guess of relative average expenses in a given city. Weights are subject of change over time. But since methodology is not hidden, as the moment of writing this weights are as follows :

mysql> select name, category, cpi_factor, rent_factor from item;
+------------------------------------------------------------------+------------------------+------------+-------------+
| name                                                             | category               | cpi_factor | rent_factor |
+------------------------------------------------------------------+------------------------+------------+-------------+
| Meal, Inexpensive Restaurant                                     | Restaurants            |         10 |           0 |
| Meal for 2, Mid-range Restaurant                                 | Restaurants            |          2 |           0 |
| Combo Meal at McDonalds or Similar                               | Restaurants            |         10 |           0 |
| Domestic Beer (0.5 liter draught)                                | Restaurants            |         12 |           0 |
| Imported Beer (0.33 liter bottle)                                | Restaurants            |         12 |           0 |
| Coke/Pepsi (0.33 liter bottle)                                   | Restaurants            |         12 |           0 |
| Water (0.33 liter bottle)                                        | Restaurants            |         12 |           0 |
| Milk (regular, 1 liter)                                          | Markets                |         30 |           0 |
| Loaf of Fresh Bread                                              | Markets                |         30 |           0 |
| Eggs (12)                                                        | Markets                |          6 |           0 |
| Cheese (1kg)                                                     | Markets                |        4.5 |           0 |
| Water (1.5 liter bottle)                                         | Markets                |         20 |           0 |
| Bottle of Wine (Mid-Range)                                       | Markets                |          2 |           0 |
| Domestic Beer (0.5 liter bottle)                                 | Markets                |          5 |           0 |
| Imported Beer (0.33 liter bottle)                                | Markets                |          5 |           0 |
| Pack of Cigarettes (Marlboro)                                    | Markets                |         12 |           0 |
| One-way Ticket                                                   | Transportation         |         20 |           0 |
| Monthly Pass                                                     | Transportation         |        1.5 |           0 |
| Taxi (within center, approx. 5km)                                | Transportation         |         10 |           0 |
| Apartment (1 bedroom) in City Centre                             | Rent Per Month         |          0 |        0.25 |
| Apartment (1 bedroom) Outside of Centre                          | Rent Per Month         |          0 |        0.25 |
| Apartment (2 bedrooms) in City Centre                            | Rent Per Month         |          0 |        0.25 |
| Apartment (2 bedrooms) Outside of Centre                         | Rent Per Month         |          0 |        0.25 |
| Basic (Electricity, Gas, Water, Garbage)                         | Utilities (Monthly)    |          1 |           0 |
| Mobile Phone 100 Minutes Call                                    | Utilities (Monthly)    |         15 |           0 |
| Internet (1 Mbps ADSL flat)                                      | Utilities (Monthly)    |          1 |           0 |
| Price per Square Meter to Buy Apartment in City Centre           | Buy Apartment Price    |          0 |           0 |
| Price per Square Meter to Buy Apartment Outside of Centre        | Buy Apartment Price    |          0 |           0 |
| Median Monthly Disposable Salary (After Tax)                     | Salaries And Financing |          0 |           0 |
| Mortgage Interest Rate in Percentanges (%), Yearly For USD / EUR | Salaries And Financing |          0 |           0 |
| Gas (1 liter)                                                    | Transportation         |         80 |           0 |
+------------------------------------------------------------------+------------------------+------------+-------------+
    

When calculating Local Purchasing Power, formula which is used for weights is 1.5 * cpi_factor + rent_factor. This correction factor is used to estimate other goods and services which is not tracked at this website.

      Local_Puchasing_Power_Index = Affordability(This_City) / Affordability(New York)
      
      Affordability (of a city) = Average_monthly_disposable_income / sum_of (Price_in_the_city * (1.5 * cpi_factor) + rent_factor)