google_geocode: Google geocoding

View source: R/google_geocode.R

google_geocodeR Documentation

Google geocoding


Geocoding is the process of converting addresses (like "1600 Amphitheatre Parkway, Mountain View, CA") into geographic coordinates (like latitude 37.423021 and longitude -122.083739), which you can use to place markers on a map, or position the map.


  bounds = NULL,
  key = get_api_key("geocode"),
  language = NULL,
  region = NULL,
  components = NULL,
  simplify = TRUE,
  curl_proxy = NULL



string. The street address that you want to geocode, in the format used by the national postal service of the country concerned


list of two, each element is a vector of lat/lon coordinates representing the south-west and north-east bounding box


string. A valid Google Developers Geocode API key


string. Specifies the language in which to return the results. See the list of supported languages: If no langauge is supplied, the service will attempt to use the language of the domain from which the request was sent


string. Specifies the region code, specified as a ccTLD ("top-level domain"). See region basing for details


data.frame of two columns, component and value. Restricts the results to a specific area. One or more of "route","locality","administrative_area", "postal_code","country"


logical - TRUE indicates the returned JSON will be coerced into a list. FALSE indicates the returend JSON will be returned as a string


a curl proxy object


Either list or JSON string of the geocoded address

API use and limits

The amount of queries you can make to Google's APIs is dependent on both the service and the API you are using.

Each API has specific quotas and limits. Check Google's API documentation for details.

View your usage at the Google Cloud Console

Each API can only accept and return one request at a time. If you write a loop to make multiple API calls you should ensure you don't go over your quota / limits during the loop.


## Not run: 

df <- google_geocode(address = "MCG, Melbourne, Australia",
                     simplify = TRUE)

        lat      lng
1 -37.81659 144.9841

## using bounds
bounds <- list(c(34.172684,-118.604794),

js <- google_geocode(address = "Winnetka",
                     bounds = bounds,
                     simplify = FALSE)

## using components
components <- data.frame(component = c("postal_code", "country"),
                         value = c("3000", "AU"))

df <- google_geocode(address = "Flinders Street Station",
                   components = components,
                   simplify = FALSE)

## End(Not run)

googleway documentation built on March 18, 2022, 7:34 p.m.