Download UK Postcodes with Latitude and Longitude
Download a list of UK out code postcodes with their latitude and longitude coordinates.
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 1812402 full postcodes (out code + in code).
The uses of these out codes and lat/long values include mapping applications such as:
- Rough distance calculation
- Plot the rough location of a postcode on a map
- Simple postcode validation for input forms
Outcode Postcodes Current List : 2974
Full UK Postcode Current List : 1812402
Non Geographic Postcodes
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
- MSSQL ukpostcodesmssql.zip (32MB zipped, 228MB unzipped)
- Uses a table called [postcodelatlng]
- Script to create table ukpostcodes_tablemssql.sql (1 KB)
- MySQL ukpostcodesmysql.zip (37MB zipped, 234MB unzipped)
- Uses a table called postcodelatlng
- Script to create table ukpostcodes_tablemysql.sql (1 KB)
- CSV ukpostcodes.zip (33MB zipped, 96MB unzipped)
- Header is in the first row : id,postcode,latitude,longitude
Outcode Area Postcodes (AB1,B2,BT7 etc..)
- MSSQL postcode-outcodes-mssql.sql (293 KB)
- Uses a table called [postcodelatlng]
- Script to create table postcode-outcodes_tablemssql (1 KB)
- MySQL postcode-outcodes-mysql (280 KB)
- Uses a table called 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
Contains Ordnance Survey data © Crown copyright and database right 201
Contains Royal Mail data © Royal Mail copyright and database right 2015
Contains National Statistics data © Crown copyright and database right 2015
Using This Data
To import to a web based MySQL database we would recommend BigDump: Staggered MySQL Dump Importer
- MySQL UK post code table with corresponding longitude and latitude
- Calculating the distance between a set of postcodes and ranking them in order
- 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
Previous Comments For This Page
Hi Roy, BA1, BA2 ... do seem to be in the 3 variations of the file. Can you see BA1 or BA2?
By Free Map Tools on 18/11/2015
Hi - just downloaded the outcodes file
looks like BA (Bath) is missing
By Roy on 18/11/2015
Hi Alex, [https://en.wikipedia.org/wiki/Postcodes_in_the_United_Kingdom] states 1.7M and [http://www.poweredbypaf.com/] (Royal Mail Group) states 1.8M so there is varying differences in opinion about how many there are, 1.9M being the highest figure. I believe there is a constant flux when some old postcodes become inactive, but still used in legacy address databases and other new postcodes are created.
By Free Map Tools on 28/10/2015
The total number of UK postcodes is approx 1.9M.
Please verify here at this commercial provider:
You have stated 1.7M records, which 200k records are missing in your db?
By Alex on 28/10/2015
Thanks Alex, these duplicates have now been addressed and resolved.
By Free Map Tools on 19/10/2015
Duplicate post codes (the last 4 lat / long are 30 minutes away from the post code, however the first is correct.
INSERT INTO postcodelatlng (id,postcode,latitude,longitude) VALUES (55414, 'WF9 5WX', '53.612923821452000','-1.354428417665460');
INSERT INTO postcodelatlng (id,postcode,latitude,longitude) VALUES (55415, 'WF9 5WX', '53.668845402587500','-1.526845867639980');
INSERT INTO postcodelatlng (id,postcode,latitude,longitude) VALUES (55416, 'WF9 5WX', '53.668845402587500','-1.526845867639980');
INSERT INTO postcodelatlng (id,postcode,latitude,longitude) VALUES (55417, 'WF9 5WX', '53.668845402587500','-1.526845867639980');
INSERT INTO postcodelatlng (id,postcode,latitude,longitude) VALUES (55418, 'WF9 5WX', '53.668845402587500','-1.526845867639980');
By Alex on 19/10/2015
Hi Luis, I have done a quick search and found EC2R 8AH in ukpostcodes.csv on line 1235647. Can you re-download the file and have another look? It has been updated recently and this may have been one of the changes.
By Free Map Tools on 12/10/2015
Hello I am using the csv full UK postcodes list. I am looking the ones that start with the letter E (e.g. EC2R 8AH), but there is none. why this could be?
By Luis on 12/10/2015
Hi Jack, it should be considered out of date as it was based on a previous version of CPO, but has been updated (and still is) on an independent basis since.
By Free Map Tools on 22/09/2015
Does this data exist for postcode sectors? I can find full codes and outcodes, but not sectors.
By Mike on 21/09/2015
Hi, has your MySQL database of all full postcodes been created from the latest codepoint csv file of postcodes from 2015 ? Or is it an older outdated version? Thanks
By Jack on 14/09/2015
Hi, S98 1EE appears to be no longer in use. B65 ODA was in the wrong location, but should now be correct. Thanks for the feeback.
By Free Map Tools on 03/09/2015
These two entries in ukpostcodes.csv seem to have wrong lat and long?
Hi Eddie, they are updated on an ad-hoc basis. There is no licence from Free Map Tools.
By Free Map Tools on 28/06/2015
Hi there, how often this postcode list is updated? Is there any license applications to use it for small business?
Many thanks in advance
By Eddie. S. on 27/06/2015
Hi, have a look at this page [http://www.movable-type.co.uk/scripts/latlong-gridref.html]
By Free Map Tools on 28/05/2015
Absolutely cracking download of data. Thanks for this FMT. I don't suppose you have a script that will convert National Grid References to Lat Lon.
By Brendan on 28/05/2015
Hi Ben, please see this http://www.nationalarchives.gov.uk/doc/open-government-licence/version/3/
By Free Map Tools on 27/05/2015
Would you please advise license details etc? All I can see on this site is that the download contains data copyrighted to the crown and the royal mail and my organisation won't let me use it without license information etc.
By Ben on 27/05/2015
Hi Richard, thanks for the feedback. We do acknowledge this and have been able to reproduce the issue. We have since updated all these postcodes lat/lng so they should now all be correct.
By Free Map Tools on 07/05/2015
Showing the most recent 20 out of 174 comments. Click to see all the comments.
Add your own comment below and let others know what you think: