How does works with data from the public registry? generates sales estimates by applying machine learning algorithms to the public registry database for the first time in Latvia. The system “learns” how the location and characteristics of a given apartment contribute to its market value. Based on this learning is able to produce an estimate for any property. The precision of the model relies on the quality of the data in the public registry.

We have received feedback from some of our most dedicated users that relying on the public registry transaction prices might not be entirely appropriate. The main concern is that the properties’ prices are not always fully reported. So, the risk of “learning” from official information is that the Vartus estimates under estimate the market price of apartments.

And we agree! This is a concern for us as well. That’s why we have developed an extra layer of analytics to identify undervalued transactions in our data, so our algorithm does not “learn” from unrealistic prices.

Here’s an example of how we spot atypical transaction prices. Let’s consider the area in Riga’s postal code LV-1082, which falls somewhere between the Dārzciems and Purvciems neighborhoods. This is one of the most dynamic real estate market in Latvia, and the apartment blocks are fairly homogeneous. Let’s take a look at the distribution of price per square meter in this area.

Graph 1 shows that, according to “raw” or “unfiltered” transactions, the price per square meter goes from 0 Eur, all the way to 2,000 EUR. The average is roughly 780 Euros per square meter. How is it possible that there is so much variation in such a narrow area? And why are so many transactions concentrated on the left side of the distribution? Is it really possible that there are so many transactions below 500 Euros per square meter? Or it there an inconsistency?


Graph 2 shows two distributions. First, are the transactions in the unfiltered public registry, as we saw in Graph 1. Then we contrast them with a distribution of asking prices from listings taken from the popular site When we look at the listing prices, nearly all of the transactions are above 500 Eur per square meter. The average asking price per square meter is 1,028 Euros. It is normal to expect that there are gaps between asking and closing prices. However, it’s evident that just relying on the public registry will leave us with values that do not reflect the whole story.

pic applies an algorithm that combines the public registry, and data from the real estate listing services all over the country. The code learns how to estimate an asking price for any given apartment, and contrasts it with the observed transaction price officially recorded. When the difference is considerable, we identify this transaction as “atypical” and remove it from our learning data sample. After all the trimming is done we can see that the distributions from asking prices and recorded prices (filtered) resemble each other.

Graph 3 shows that the learning sample distribution resembles the listing price’s distribution. As expected, the average closing price (around 960 Eur per square meter) is slightly lower than asking prices, indicating that the data use for the analysis resembles the market we are trying to describe.


Our work is not done. We are working constantly to improve the way we process data, in order to help homeowners and home seekers make better decisions. Please, answer a few questions from our survey to help us improve.

Discover     Statistics     Estimate     Blog     About