Plus codes are based on Open Location Code (OLC, for short), an open-source project initiated by a group of Google engineers.
If you’d like to include plus codes in your applications, the following resources are helpful:
We are working on implementations in other languages, but if you'd like to do an implementation, contact the mailing list and see if anyone else is already working on the language.
Alternatively, if you know someone who would be interested, let them know.
The first thing we did was to work out what attributes of addresses were useful. Once we had that list, we looked at a lot of existing location coding methods ( overview) to see how well they matched our list. Once we had done that, we decided that it was worth to at least define a new one, and then see if it was well received.
The other methods were mostly designed with different ideas in mind, and so this isn't a criticism of them.
Plus codes are generated from latitude and longitude and thus already exist for every spot on the planet. Nobody needs to apply for them, register them, or pay for them.
Plus codes represent an area, not a point. The size of the area depends on the length of the code. Long codes are more accurate than short codes. Dropping characters from the end of a code gives you a larger area that contains the original code.
The codes are completely independent of political features including country borders. If a location changes country affiliation, all plus codes there remain unchanged. The codes are also language independent – they are not based on words which would be a sensitive issue in many countries. Although the codes include letters, these have been specifically chosen to not generate words. The codes aren't case sensitive and don't include easily confused characters.
Nearby places have similar codes, and the code structure allows grouping areas together. The code gives the equivalent of the street name and number. Additional information like floor, suite, etc. can be provided as per the local convention.
Not only can the codes be easily encoded/decoded offline, but the code grid can be printed on paper maps or signs, allowing people without smartphones to use them.
A location only has one plus code. The areas do not overlap or come in different translations.
Plus codes are free to use for anyone, forever. The technology has been open-sourced.
The plus code for a location doesn’t change, it always remains the same. The global code is unique and the local code is unique within a 100km x 100km area. Any locality reference within 50km suffices to be able to use the local code (if you are in the area, the local code on its own is enough).
We aim for roughly the size of a building as the default code precision. Those requiring higher accuracy can get to ~3m x 3m with an optional 3rd character after the plus symbol.
Thanks to the plus symbol in each code, they are easy to identify (in Google search, for example). The plus symbol also allows to correctly interpret partial plus codes.