Download UK Postcodes with Latitude and Longitude (2023)

Maps you can make use of...

User Menu

  • Export Data
  • Import Data
  • Remove All User Data
  • Settings
  • About User Menu

Download UK Postcodes with Latitude and Longitude

Download a list of UK out code postcodes with their latitude and longitude coordinates.


Download UK Postcodes with Latitude and Longitude (2)

The UK postal system uses postcodes to help with automating the sorting and delivery of mail. This is made up of a 2-part code, an out code and an in code. As the out code is the most significant part of the system, it can be used to obtain a rough area level break up of the UK. There are approximately 2971 out codes and approximately 1.74M full postcodes (out code + in code).


The uses of these out codes and lat/long values include mapping applications such as:

(Video) How to get Latitude and Longitude of Multiple Addresses

  • Rough distance calculation
  • Plot the rough location of a postcode on a map
  • Simple postcode validation for input forms

List Status

Outcode Postcodes Current List : 2952

Full UK Postcode Current List : 1781256 (correct on 18th August 2021)

Non Geographic Postcodes

Non geographic postcodes are listed below. Note these will have a latitude and longitude of an empty string

AB99, BT58, CA99, CM92, CM98, CR44, CR90, GIR, IM99, IV99, JE5, M61, ME99, N1C, N81, NR99, NW26, PA80, PE99, RH77, SL60, SO97, SW95, SY99, WD99, WF90


Full UK Postcode Latitude Longitude Download

Download the centroid coordinates of each UK Postcode. Only active (valid) postcodes are included.

  • CSV (20MB zipped, 64MB unzipped)
    • Header is in the first row : id,postcode,latitude,longitude
  • SQL Server MSSQL (19MB zipped, 177MB unzipped)
    • Uses a table named [postcodelatlng]
    • Script to create table ukpostcodes_tablemssql.sql (1 KB)
  • MySQL (24MB zipped, 191MB unzipped)
    • Uses a table named [postcodelatlng]
    • Script to create table ukpostcodes_tablemysql.sql (1 KB)

Outcode Area Postcodes (AB1, B2, BT7 etc..)

  • MSSQL postcode-outcodes-mssql.sql (293 KB)
    • Uses a table named [postcodelatlng]
    • Script to create table postcode-outcodes_tablemssql (1 KB)
  • MySQL postcode-outcodes-mysql (280 KB)
    • Uses a table named postcodelatlng
    • Script to create table postcode-outcodes_tablemysql.sql (1 KB)
  • CSV postcode-outcodes.csv (82 KB)
    • Header is in the first row : id,outcode,latitude,longitude

Copyright and Reproduction

As per :

You may re-use this information (not including logos or Northern Ireland data) free of charge in any format or medium, under the terms of the relevant data owners' licence. In addition, the following attribution statements must be acknowledged or displayed whenever the owners data is used:

Contains Ordnance Survey data © Crown copyright and database right 2021

Contains Royal Mail data © Royal Mail copyright and database right 2021

Source: Office for National Statistics licensed under the Open Government Licence v.3.0

(Video) How to Generate Automatically Latitude and Longitude of Multiple Locations

Using This Data

To import to a web based MySQL database we would recommend BigDump: Staggered MySQL Dump Importer

Relevant Links

Version History

  • 9th August 2022 - MS SQL file updated. Empty latitude/longitude now set as NULL instead of empty string
  • 13th March 2022 - Dataset refresh
  • 18th August 2021 - Dataset refresh
  • 9th August 2021 - Dataset refresh
  • 19th March 2021 - New dataset refresh. Number of decimal places reduced to 6
  • 16th November 2020 - New dataset refresh
  • 23rd March 2020 - New dataset refresh
  • 12th July 2019 - New dataset refresh
  • 19th May 2017 - General Updates. All non-geo postcoces now have an empty latitude,longitude e.g. VALUES (1682513, 'EN77 1AB', '','');
  • 4th January 2017 - Updates 54 lat/lng previously set to 99.9,0
  • 23rd December 2016 - Updates to data - Remove some instances of ??? O?? (O is letter O)
  • 17th October 2016 - Updates to data files
  • 11th August 2016 - Updates to B9 4AU, MK11 4AL & DN189AH
  • 22nd July 2016 - Updates to SW11 7AS, EX6 9AA, EN77 & WV98
  • 16th November 2015 - November 2015 update
  • 19th October 2015 - Removed some duplicates
  • 23rd September 2015 - Postcode column now has a space in the appropriate place
  • 7th May 2015 - Some no loner used postcodes removed. Around 3000 corrections based on feedback
  • 29th April 2015 - New update engine in place. Now provides MS SQL and MySQL script
  • 5th March 2015 - Added B37 7FP
  • 16th July 2014 - Added BB12 7BF
  • 9th February 2014 - Added S1 4DE
  • 9th February 2014 - Updated Full postcode list. 222 duplicates removed
  • 9th February 2014 - Updated Outcode data. SQL script is for MSSQL
  • 20th January 2014 - Removed 2 rows of incorrect data. Rows 1699835 and 1699836
  • 11th September 2013 - Removed Duplicate BD98 And M60
  • 1st August 2013 - Added full postcode list CSV and SQL (SQL insert) format with 1703751 rows
  • 15th September 2011 - Added E20 (Olympic Park Postcodes)
  • 23rd February 2011 - Added AB24, B99, BB94, BD97, BD98, BD98, BD99, BL11, BL78, BN50, BN51, BN52, BN88, BN99, BS80, BS98, CA95, CF30, CF91, CF95, CF99, CH25, CH26, CH27, CH28, CH29, CH30, CH31, CH32, CH33, CH34, CH70, CH88, CH99, CM77, CM99, CR9, CT50, CW98, DE99, DH97, DH98, DH99, DN55, E77, E98, EC1P, EC2P, EC4P, EC50, EH91, EH95, EH99, FY0, G58, G70, G75, G79, G9, G90, GU95, IP98, KY99, L67, L68, L71, L72, L73, L74, L75, LE19, LE21, LE41, LE55, LE87, LE94, LE95, LS88, LS98, LS99, M50, M60, M99, MK77, N1P, NE82, NE83, NE85, NE88, NE92, NE98, NG70, NG80, NG90, NW1W, OL95, PL95, PR0, PR11, S49, S96, S97, S98, S99, SA80, SA99, SE1P, SL95, SN38, SN99, SS22, SS99, ST55, SW99, TR93, UB18, W1A, WA55, WA88, WR78, WR99, YO90, YO91
  • 27th June 2009 - Added NR7
  • 22nd October 2008 - Added some Isle of Man and Jersey Postcodes. XLS format is no longer provided.
  • 24th August 2008 - Added some new postcodes
  • 1st July 2008 - Added List Status
  • 10th June 2008 - Added SQL, CSV and XLS formats each with 2821 rows

Comments For This Page

Hi, is there a way to access also the older version of the file? I would need to find the location of old postcodes, which are no longer used.
By Vincenzo on 4th October 2022

A workaround is to open the CSV file in Notepad.
By Test on 8th September 2022

Hi, which file on the OS data hub are the lat + long pulled from? Thanks!
By Mark on 24th August 2022

James, we have made a small update to the SQL download file (NULLS instead of empty string). With the new file, the following procedure should work:

Download and run this to create the table:

From a command prompt, run:sqlcmd -S SERVER -d DATABASE -i -a 32767 C:\path\path\ukpostcodesmssql.sql
By Free Map Tools on 9th August 2022

Hi, you could use a tool to split a CSV in to multiple files.
By Free Map Tools on 8th August 2022

(Video) MapInfo UK Postcodes

The postcode csv file is too large to download the full list into excel could (its missing data) you split the data into several tabs?
On 31st July 2022

How are people managing to run the insert script on SQL? I'm using latest SSMS. Getting out of memory errors - have increased query size to 4096, and allowing SQL to use the full 32gb ram. I've added Go statements after each insert, and I've tried sqlcmd using C:\Windows>sqlcmd -S MYSQLSERVER -d MYDB -i "C:\db\backups\pc.sql" -E -a 32767 (without the -a I got communication link failure. Now sqlcmd doesn't error, but no records are inserted either. Other than splitting the file up in to 20 or so, which seems like admitting defeat, is there another way?
By James DC on 28th July 2022

Hi, can you provide the script code for the distance between postcodes, i work for a Community Transport and need a simple way of costing the distance
By Anthony on 25th May 2022

DG2 8RX has been updated
By Free Map Tools on 17th April 2022

Ryan, thanks for reporting this. The CSV has been updated with a header row and issue with line breaks fixed.
By Free Map Tools on 16th March 2022

Fantastic resource but a note of warning - the CSV has corrupted from Line 1774242 (id 2677465) - the records are split over two rows. Any chance this will be resolved on the next refresh?
By Ryan on 16th March 2022

Hi, is it possible to add the outcodes for the UK islands (Jersey, Guernsey, Isle Of Man, etc)? I would be happy to try to work out the lat/long for each if necessary but am surprised your sources aren't including them already.
By Dik on 24th January 2022

Hi, can I have the dataset showing latitudes and longitudes of the LSOAs?
By Preet on 18th September 2021

GL3 1FJ is included in the latest dataset (18th August)
By Free Map Tools on 8th September 2021

Hi-I can't seem to find GL3 1FJ on the postcode file. It's relatively new (introduced April 2021) but I thought that would be caught in the refresh? Thanks
By Kabir on 6th September 2021

(Video) From Postcodes to Map Plots

I want to plot a map with a specific set of postcodes. How do I do this?
By Adam on 25th June 2021

I think the lat / lng for DG2 8RX is a bit out, should be 55.058885 -3.659007KR
By mak on 19th May 2021

sssq, thanks for reporting. There was a bug in the file contents. It has now been corrected.
By Free Map Tools on 14th April 2021

The latest has the first INSERT without values, is that an error or is the sql file is missing records?
By sssq on 14th April 2021

Pankaj, sorry thats not possible.
By Free Map Tools on 25th January 2021

Showing the most recent 20 out of 277 comments. Click to see all the comments.

Add your own comment below and let others know what you think:


Your Name (optional)

(Video) British Postcodes in Excel & Power BI



1. Location Intelligence (ii) - From ‘where?’ to ‘there!
(The Information Lab)
2. Tableau Tip: How to create LATITUDE and LONGITUDE from POSTCODE or CITY NAME.
(Tableau Tiptop)
3. UK Post Code Distance Calculator - a SQL Server solution to calculate distance using Post Codes
(Tim Allan)
4. How to install UK postcode search using Zippy Projects
5. Power BI Latitude and Longitude Function | Bing Map API
(Hari's BI)
6. Importing Excel Coordinates to ArcMap and Plotting
(GeoDelta Labs)
Top Articles
Latest Posts
Article information

Author: Rev. Leonie Wyman

Last Updated: 29/05/2023

Views: 5315

Rating: 4.9 / 5 (59 voted)

Reviews: 90% of readers found this page helpful

Author information

Name: Rev. Leonie Wyman

Birthday: 1993-07-01

Address: Suite 763 6272 Lang Bypass, New Xochitlport, VT 72704-3308

Phone: +22014484519944

Job: Banking Officer

Hobby: Sailing, Gaming, Basketball, Calligraphy, Mycology, Astronomy, Juggling

Introduction: My name is Rev. Leonie Wyman, I am a colorful, tasty, splendid, fair, witty, gorgeous, splendid person who loves writing and wants to share my knowledge and understanding with you.