For developers

How can I include plus codes in my application?

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:

How can I help?

We are working on implementations in other languages, but if you'd like to do an implementation, contact themailing listand see if anyone else is already working on the language.

Alternatively, if you know someone who would be interested, let them know.

Why didn't you just use X?

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.

What makes plus codes different?

Immediately available everywhere:

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.

Representing an area:

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.

Politically independent:

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.

Address-like:

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.

Accessible offline:

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.

Unique:

A location only has one plus code. The areas do not overlap or come in different translations.

Free and open-source:

Plus codes are free to use for anyone, forever. The technology has been open-sourced.

Reliable and stable:

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).

Precise 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.

Easy to identify:

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.

Authors

Open Location Codes were developed atGoogle's Zurich engineering office, and then open sourced so that they can be freely used. The main author is Doug Rinckes, with the help of lots of colleagues including:

  • Aner Ben-Artzi
  • Jarda Bengl
  • Philipp Bunge
  • Prasenjit Phukan
  • Rasťo Šrámek
  • Sacha van Ginhoven