Tool to convert open location codes to GPS coordinates on a map. Open Location is a geocoding system created by Google (sometimes renamed 'plus codes') and displayed, among others, on Google Maps.
Open Location (Plus Code) - dCode
Tag(s) : Geography
dCode is free and its tools are a valuable help in games, maths, geocaching, puzzles and problems to solve every day!
A suggestion ? a feedback ? a bug ? an idea ? Write to dCode!
Open Location codes (sometimes calles Plus Codes) are a coding system locating a geographic area on Earth in the manner of GPS coordinates. They have the advantage of being shorter and concise thanks to an alphanumeric code which distinguishes them from other coordinate systems used in cartography.
The Earth is first divided into geographical zones according to an 18x9 grid (every 20°) and identified by 2 characters (AA), then each zone is divided into sub-zones (20x20 grid) identified by the sub -coordinates (BB) etc, themselves recut into 20x20 up to 4 times.
Optionally, one last time, the area is divided into a 4x5 grid (4 wide, 5 high) identifying 20 boxes, numbered from left to right and from bottom to top, this last area is the most precise (3.5m², maximum precision allowed by the code).
A code is made up of 2 parts separated by a plus sign + of the form AABBCCDD+EEF or AABB+CC. The first part is made up of 1 to 4 alphanumeric pairs (BB,CC,DD are optional), the second part is also optional, but the fewer letters there are, the less precise the location.
The plus sign is also optional, but it is part of the signature of the code and makes it easier to read.
The 20 characters authorized to code the zones are 23456789CFGHJMPQRVWX (they are used as base 20 writing)
Separate the pairs of characters and for each, note the first character (latitude coordinate) and the second character (longitude coordinate) to locate in the grid.
To reconstruct GPS coordinates (latitude, longitude), it is first necessary to convert the characters 23456789CFGHJMPQRVWX according to the correspondence table:
2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | C | F | G | H | J | M | P | Q | R | V | W | X |
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 |
Then for each value, multiply it by the precision of each couple according to the table
#1 AA | 20° |
#2 BB | 1° |
#3 CC | 0.05° |
#4 DD | 0.0025° |
#5 EE | 0.000125° |
#6 F | 0.00003125° |
Add all latitude values and subtract 90° on one side and all longitude values and subtract 180° on the other to obtain GPS coordinates.
Example: The code 8FW4V75R+8W is cut into pairs 8F,W4,V7,5R,8W
The first pair 8F consists of latitude $ \texttt{8} \rightarrow 6 \times 20° = 120° $ and longitude $ \texttt{F} \rightarrow 9 \times 20° = 180° $
The second pair is' W4' either latitude +18° and longitude +2° etc.
The sums respect give the latitude $ \approx 138.8583 - 90 = 48.8583° $ and the longitude $ \approx 182.2923 - 180 = 2.2923° $ so the GPS coordinates $ (48.8583, 2.2923) $
From GPS coordinates:
Example: (lat, long) = 48.8583,2.2923
1- add 90° to the latitude and 180° to the longitude
Example: $ 48.8583+90=138.8583 $, $ 2.2923+180=182.2923 $
2- multiply the values by 8000 (= 20 ^ 3)
Example: $ 138.8583 \times 8000 = 1110866.4 $, $ 182.2923 \times 8000 = 1458338.4 $
3- convert the values obtained to base 20 (with the alphabet 23456789CFGHJMPQRVWX) by limiting yourself to the whole part and supplementing with initial zeros if the result has less than 5 digits.
Example: $ 1110866_{(10)} = [6, 18, 17, 3, 6]_{(20)} = \texttt{8WV58} $, $ 1458338_{(10)} = [9, 2, 5, 16, 18]_{(20)} = \texttt{F47RW} $
4- insert the $ 2 \times 5 $ characters obtained by alternating latitude then longitude and write the result in the form 'XXXXXXXX + XX'
Example: 8WV58 and F47RW give 8F,W4,V7,5R,8W or the plus code 8FW4V75R+8W
The Open Location (OLC) codes are in the format XXXXXXXX+XX or sometimes XXXX+XX Place (the first 4 characters are deleted) this second form requires a database in order to know the place which allows to find the 4 first characters.
Codes have a + hence their nickname plus codes
The Google company created these codes which are used more and more, thanks to Google Maps/Earth, any reference to the search engine is a clue.
References to travel, travelers, tourism, Earth, world, etc. are clues.
The plus sign + has no coding function, it is useless for the calculation, but in practice, it is positioned 2 characters before the end for codes with an even number of characters AABBCCDD+EE or AABB+CC, or 3 characters before the end for codes with an odd number of characters AABBCCDD+EEF.
dCode retains ownership of the "Open Location (Plus Code)" source code. Except explicit open source licence (indicated Creative Commons / free), the "Open Location (Plus Code)" algorithm, the applet or snippet (converter, solver, encryption / decryption, encoding / decoding, ciphering / deciphering, breaker, translator), or the "Open Location (Plus Code)" functions (calculate, convert, solve, decrypt / encrypt, decipher / cipher, decode / encode, translate) written in any informatic language (Python, Java, PHP, C#, Javascript, Matlab, etc.) and all data download, script, or API access for "Open Location (Plus Code)" are not public, same for offline use on PC, mobile, tablet, iPhone or Android app!
Reminder : dCode is free to use.
The copy-paste of the page "Open Location (Plus Code)" or any of its results, is allowed (even for commercial purposes) as long as you credit dCode!
Exporting results as a .csv or .txt file is free by clicking on the export icon
Cite as source (bibliography):
Open Location (Plus Code) on dCode.fr [online website], retrieved on 2024-12-19,