I’m slowly learning how to use QGIS, and on friday the local history centre was closed, so I had a spare day to get into that data-driven approach to understanding gentrification. I have a thin methodological argument for doing this, which revolves around how land, and land values, are perceived differently by different groups. When I look at a field, I see some sheep. When a property developer looks at a field, they see numbers.

Firstly, I got price paid data from the land registry, they have an easy online tool for generating reports. That gives you average prices covering different areas, and you can go all the way down to postcode sectors in a certain area, in this case - Oxfordshire.

The postcode hierarchy looks like this:

  • Postcode area: IP (usually refers to the nearest post town)
  • Postcode district: IP3
  • Postcode sector: IP3 8 (contains ~3,000 addresses)
  • Postcode unit is the last two digits on the end of the postcode, and contains ~15 addresses.

I got the average price paid data from 2008 and 2018. Open up the csv files in Libreoffice, subtract 2008 values from 2018 ones. At this point you have a spreadsheet with a column containing postcode sectors, and a column containing the 2008-2018 price difference.

I got postcode boundary polygons from Open Door logistics, and an Oxfordshire boundary file from Chris Bell’s website. In QGIS, clip out the postcode layer with the county polygon.

In QGIS, import the csv file containing the land values, and make a join with the postcode boundaries, use the styles menu to create a choropleth effect. I went for a black and white gradient. Black means a higher price increase, white means prices haven’t increased (or decreased).

For added clarity I included a layer from Alasdair Rae’s place names database to label the main towns.

Here’s the end result:


Click here for an SVG.

A few conclusions from the data: property values have increased most in North Oxfordshire, and Oxford itself. The single postcode sector with the highest increase in all of Oxfordshire was the area where I grew up. I told my brother, and he wasn’t surprised at all. There must be a reason we’re not fantastically wealthy by now 🙄.

Another curious result was around Henley. There was a significant price increase within Henley town, but prices dropped in the surrounding villages.

The red hatching indicates areas for which there is no data - or where the the postcodes don’t line up with the administrative boundaries of Oxfordshire. The way you cut up data geographically has a very strong effect on the final map, so in case it needs repeating: postcodes are just a tool which Royal Mail uses to organise delivery routes. Postcodes are messy, they’re not designed to act as consistent population units, it’s important to keep that in mind.

In Oxfordshire, an extra postcode was added between 2008 and 2018. It’s worse in Leicestershire, where several new postcodes have been created in the past 5-6 years. What am I supposed to do with these new postcodes? Parishes and local government wards might be comparable alternatives to investigate in future.