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 1762460 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
Current List : 2973 Outcode Postcodes
Total Possible : 2971 Outcode Postcodes
Number of missing outcode postcodes : 0
Current List : 1703526 Postcodes
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
- SQL fullukpostcodes.zip (45MB zipped, 626MB unzipped)
- CSV postcodes.zip (31MB zipped, 87MB unzipped)
Contains Ordnance Survey data © Crown copyright and database right 2013
Contains Royal Mail data © Royal Mail copyright and database right 2013
Contains National Statistics data © Crown copyright and database right 2013
- MySQL UK post code table with corresponding longitude and latitude
- 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 Janruary 2014 - Removed 2 rows of incorrect data. Rows 1699835 and 1699836
- 11th September 2013 - Removed Duplicte 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
Reddy, http://what3words.com/ is a solution to this that is worth looking at.
By Free Map Tools on 07/01/2015
Steve, the duplicates have now been removed. Thanks.
By Free Map Tools on 07/01/2015
May be, am asking a dumb question!!! Does any country implemeted their post/zip/pin codes based on the GPS coordinates? We have a small project looking to make a meanigful Postcode for an Indian village - keeping in mind the below
Can we really do this? Mt brain is very small and not able to think too wide to see how we can give meanigful postcode through GPS coordinates?
By Reddy on 07/01/2015
You have duplicates but create resource thx
By Steve on 01/01/2015
What a fantastic resource!
By Oli on 28/12/2014
Tony, these have also been updated.
By Free Map Tools on 15/12/2014
The following postcodes still contain a 'O' rather than a '0': SW4 OAN, M3 OFP & LS11 ODN
By Tony on 14/12/2014
If it helps anyone, I have a mysql database of all postcodes and their associated addresses... couple of years old now but useful nonetheless. I originally got it for a program I wrote.
If anyone wants it to combine with the downloads from here... then let me know
By Chris: email@example.com on 20/11/2014
Thanks for the prompt response. Great site BTW.
By Tony on 08/11/2014
Tony, thanks for the feedback. This should now be corrected.
By Free Map Tools on 08/11/2014
The following postcodes contain a 'O' rather than a '0'. CF32 OPD,G75 OYF,LU2 ORF,AB51 OGR,WF16 OHA,DH8 OHT,SW4 OAN,BS14 OQG,ZE1 OTG,SSO ORY,NE29 ORS,M3 OFP,NR28 ODQ,ST15 ORP,LS11 ODN
By Tony on 07/11/2014
Hi, we don't have any data sets that include the town name but you may be able to find one elsewhere perhaps.
By Free Map Tools on 04/11/2014
Hi, I live in DN31 which is Grimsby, but the DN postal area is Doncaster. There are over 30 DN outer codes which correspond to a number of different towns Is there a database with the associated actual town areas for the postal areas? I.e. when I get to DN31 in the database, a column will tell me that DN is actually Grimsby and not Doncaster? Many thanks.
Hi James, thanks for reporting this. It has now been fixed.
By Free Map Tools on 03/11/2014
Seems to be an error with one row:
Should that be a zero instead of a O
By James Reeves on 31/10/2014
Hi all - Many thanks for this. Would anyone know where we could possibly get a free dataset for all the Northern Ireland Postcodes (BT) and their X / Y or Long/ Lat and Northings values?
By Lenvdb on 22/10/2014
I was surprised by the use of a clustered index on the id field. Since all queries on the table will be by postcode, and queries involving multiple postcodes are likely to be adjacent postcodes it makes more sense to have clustered index on postcode. I dropped the supplied indexes and created a clustered unique index on postcode - also gives confidence there are no duplicates.
By d on 21/10/2014
Hi, you can get the data from here [https://www.ordnancesurvey.co.uk/opendatadownload/products.html]. If you require less detail then you could look in to simplifying it. If you need functionality to query your custom data set to meet your custom requirements then it will likely require custom software to be developed.
By Free Map Tools on 11/09/2014
Looking for a data set down to postcode sector level that identifies which places fall into a given sector (or which sector covers a given place)- ie outcode plus first character of incode - so don't need/want to go down to individual postcode level. Do you have anything that would do this?
Showing the most recent 20 out of 139 comments. Click to see all the comments.
Add your own comment below and let others know what you think: