# Reverse Geocoding

<br />


**European Economic Area (EEA) developers**

> [!NOTE]
> If your billing address is in the European Economic Area, effective on 8 July 2025, the [Google Maps Platform EEA Terms of Service](https://cloud.google.com/terms/maps-platform/eea) will apply to your use of the Services. Functionality varies by region. [Learn more](https://developers.google.com/maps/comms/eea/faq.md.txt).

Reverse Geocoding refers to the conversion of a location's geographic
coordinates into a human-readable street address. The Maps SDK for iOS
includes a class called the
[`GMSGeocoder`](https://developers.google.com/maps/documentation/ios-sdk/reference/objc/Classes/GMSGeocoder.md.txt)
class, which includes the
[`reverseGeocodeCoordinate`](https://developers.google.com/maps/documentation/ios-sdk/reference/objc/Classes/GMSGeocoder.md.txt#-reversegeocodecoordinate:completionhandler:)
member function which you can use to perform the conversion. This method takes
location coordinates in an instance of a
[CLLocationCoordinate2D](https://developer.apple.com/documentation/corelocation/cllocationcoordinate2d?language=objc)
object, and returns a human-readable street address in an instance of the
[`GMSAddress`](https://developers.google.com/maps/documentation/ios-sdk/reference/objc/Classes/GMSAddress.md.txt)
class.

> [!NOTE]
> **Note:** The Maps SDK for iOS does not directly support Geocoding. We recommend that applications use the [Geocoding API](https://developers.google.com/maps/documentation/geocoding) directly to convert human-readable addresses to map coordinates.

## The influence of language preferences

The geocoder is optimized to provide human readable street addresses. To achieve
this, it returns street addresses in the local language, transliterated to text
that is readable by the user (if necessary). All other addresses are returned in
the preferred language.

- Address components are returned in the same language, which is chosen from the
  first component.

- If a name is not available in the preferred language, then the geocoder uses
  the closest match.

## Guarantees regarding address components

Google makes no guarantee regarding address components. Address structure
changes from country to country, and even within countries.

- You can expect address components to contain only what is relevant for postal
  addresses, and little more.

- In particular, *locality* is neither guaranteed to be always present, nor is
  it supposed to always represent the *city*.

For an example of address components in action, see
[Place Autocomplete Address Form](https://developers.google.com/maps/documentation/javascript/examples/places-autocomplete-addressform.md.txt).

## Sorting the results

Results aren't sorted by distance, and the order is subject to change.

- A particular order is not guaranteed.

- There is no guarantee about what the first result will be.

## Reverse geocoding is an estimate

The geocoder attempts to find the closest addressable location within a
particular tolerance.

If the geocoder can't find a match, then it returns no results.

For more information, see
[Geocoding Addresses Best Practices](https://developers.google.com/maps/documentation/geocoding/best-practices.md.txt)
and also the [Geocoding FAQ](https://developers.google.com/maps/documentation/geocoding/faq.md.txt).