I've scoured the internet (including stack exchange) and trialled a few datasets but none have suited my needs. I'm after UK town and city names with long/lat positions and populations (so I can style which towns to label by rules).

I'm aware of the OS Names product but that doesn't have populations and there are hundreds of spreadsheets to amalgamate into a single usable .csv file.

I found this (global dataset): https://www.maxmind.com/en/free-world-cities-database which is ideal. However the file is too big to clip and QGIS's clipping window closes as soon as I run it.

  • I require populations as well
    – James B
    Commented Apr 28, 2017 at 14:27
  • The GeoNames DB that I referenced here has population data, but the number of records containing actual population data <> 0 is low (maybe 20%)
    – user4293
    Commented Apr 28, 2017 at 14:43
  • The maxmind page you link itself says its obsolete, but one option would be to download and clip using a separate standalone program (eg, Perl script) and then import into qgis?
    – user3856
    Commented Apr 28, 2017 at 21:42

2 Answers 2


Please see my answer here.

OpenStreetMap has a tag "population" as well. I've checked about half of the cities in the query here and there was always a population tag with some value. However, there is no source:population tag so we don't know the source and the up-to-dateness of this data.


I would source the population statistics and the Lat/Lon information separately and just perform a simple join to amalgamate the datasets. Census population info can be downloaded here, with further options on -


Once the necessary datasets have been sourced a join with a product such as OS Open Names can provide the required output.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.