Evaluating Cities as Buy-to-let Investment Opportunities.

Disclaimer: this article is not financial advice and should not be treated as such. It is a discussion based on personal circumstances and preferences and so should not be generalized to other situations without careful thought.

In my previous posts (here and here) I looked at buying a house to rent in Liverpool. I chose Liverpool based upon some brief research on Zoopla. I picked a handful of UK cities, and searched for two bedroom flats near the city center for sale and rent. Based on these figures I calculated a rough rental yield and Liverpool was seen to be the best. However, this was a very rough piece of research which left a lot of room for improvement. Making use of freely available data on the internet I should be able to improve this search to look at all cities within the UK to make sure I do not miss any opportunities.

Collecting the Data

House Prices The UK land registry is a very useful resource for this data. This website provides the address and price of all properties sold in the UK. The geographical coordinates of the property can be derived from the address.

Post Code Geographical Coordinates. – To convert the addresses from the house price data to geographical coordinates I used their post code. Thanks to this website a complete list of postcodes and their coordinates is freely available. The post-code data comes with longitude and latitude. To make it easier to plot the data and compare locations I converted these coordinates to the same system used by OpenMaps .

City Locations The final piece of the puzzle is the geographical location of cities in Britain. I found a full list of cities here.

Double Checking the Data.

Caution should be applied when dealing with any new dataset, as there is a chance that there is bad data in there. However, for datasets as large as these I would struggle to ensure they are 100% correct as I have nothing to validate them against. However, I can run a few spot checks. For example, I made sure my house purchase was in the pricing data. Using the contextily python module I can link to the OpenMap servers and plots maps for a given location. I used this to spot check that the coordinates I have for the city locations correspond to a city center and I double checked my house’s location showed up in the right spot. This gave me enough confidence to use the data for research.


We now know the location of every sold property and its price. This allows us to do deep lives into different regions. Figure 1 shows a contour map of house prices in Liverpool. We can clearly see just see the expensive area in the city center and that houses are expensive just around the university. We can also use this data to answer our original question, which is the most promising city to invest in. Using the geographical location of each city the average price of all flats within a 4km square of the city center was calculated. Rental data for two bedroom flats near the city center was collected for the cheapest 20 cities. Table 1 shows the 10 cities with the best annual rental income to house price yield. Liverpool is ranked at number 8 in this list, which shows the initial research was not bad. This list is dominated by smaller cities in the north with Bradford at the top of the list. One thing this research does not answer is why Bradford gives such a high yield.  There may be many reasons for this, such as a very illiquid market or other market inefficiencies. An in-person trip to the area would be needed to get a full idea of if it’s worth investing somewhere, but this analysis helps narrow down the entire UK into a select list of locations.


This research show there is a large amount of free data online that can be used to inform property investment decisions. Investment approaches can be tested and a list of the best opportunities can be found. Here a list of the best city to buy two bedroom flats based on rental yields was found. To narrow down the list to the final location to buy properties more detailed analysis is needed, but this gives a much better place to start than a manual search.

A close up of a map

Description automatically generated
Figure 1: Liverpool house price contour map
TownAverage House Price [£]Rent [£]Yield [%]
Bradford, West Yorkshire, the UK6600056510.2
Wolverhampton, West Midlands, UK870006458.92
Preston, Lancashire, UK760005608.89
Sheffield, South Yorkshire, the UK1170008658.87
Sunderland, North East, the UK790005758.74
Derby, Derbyshire, the UK1090007308.05
Liverpool, Merseyside, the UK1280008558.02
Stoke-on-Trent, Staffordshire, the UK810005357.89
Hull, the UK940005857.45
Doncaster, South Yorkshire, UK880005157.07
Table 1 Cities with the highest Buy-to-let Yields

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s