ArcGIS Desktop

  • Documentation
  • Support

  • My Profile
  • Help
  • Sign Out
ArcGIS Desktop

ArcGIS Online

The mapping platform for your organization

ArcGIS Desktop

A complete professional GIS

ArcGIS Enterprise

GIS in your enterprise

ArcGIS for Developers

Tools to build location-aware apps

ArcGIS Solutions

Free template maps and apps for your industry

ArcGIS Marketplace

Get apps and data for your organization

  • Documentation
  • Support
Esri
  • Sign In
user
  • My Profile
  • Sign Out

ArcMap

  • Home
  • Get Started
  • Map
  • Analyze
  • Manage Data
  • Tools
  • Extensions

Geocode Addresses

  • Summary
  • Illustration
  • Usage
  • Syntax
  • Code sample
  • Environments
  • Licensing information

Summary

Geocodes a table of addresses. This process requires a table that stores the addresses you want to geocode and an address locator or a composite address locator. This tool matches the addresses against the address locator and saves the result for each input record in a new point feature class. When using the ArcGIS World Geocoding Service, this operation may consume credits.

Illustration

Geocode a table of addresses

Usage

  • You can geocode addresses that are stored in a single field or are split into multiple fields. A single input field stores the complete address, for example, 303 Peachtree St NE, Atlanta, GA 30308. Multiple fields are supported if the input addresses are split into multiple fields such as Address, City, State, and ZIP for a general United States address.

    Legacy:

    Only multiple fields are supported using locators created prior to ArcGIS version 10.

  • The output feature class is saved in the same spatial reference as the address locator. Changing the spatial reference of the output feature class is possible by setting a different output coordinate system in the tool's environment settings.

  • The output feature class, by default, stores a copy of the input address and additional information such as score, status, and matched address of each record. The addresses can be rematched using either the Rematch Addresses tool or the Interactive Rematch dialog box in ArcMap. Editing addresses in the input address table will not change the result in the output feature class once the matching process finishes and the feature class is created.

  • Set the Dynamic Output Feature Class parameter to true (checked) if you want the matching result in the output feature class to be updated automatically when the input address table is updated. A relationship class is created for the input table and the output feature class. When an address in the input table is changed in an editing session in ArcMap, the address will be geocoded again immediately and the related record in the output feature class will be updated with the new geocoding result. The automatic update is also supported for adding a new record or deleting an existing record in the input table.

    Note:

    This option is only available if the input address table and output feature class are in the same geodatabase workspace.

    License:

    This option is disabled if you're using an ArcGIS Desktop Basic license, as relationship classes cannot be generated with a Desktop Basic licence.

  • An ArcGIS Online for organizations subscription is required to match a table of addresses using the ArcGIS World Geocoding Service. See Working with ArcGIS Online World Geocoding Service for more information.

Syntax

GeocodeAddresses_geocoding (in_table, address_locator, in_address_fields, out_feature_class, {out_relationship_type}, {country}, {location_type})
ParameterExplanationData Type
in_table

The table of addresses to geocode.

Table View
address_locator

The address locator to use to geocode the table of addresses.

Legacy:

Locators should be stored in a file folder so you take advantage of new features that are not supported for locators stored in geodatabases, such as performance improvements, multithreading capabilities, and suggestions support. ArcGIS 10.4 is the last release to support storing locators in geodatabases.

Address Locator
in_address_fields
[input_address_field, table_field_name]

Each field mapping in this parameter is in the format input_address_field, table_field_name where input_address_field is the name of the input address field specified by the address locator, and table_field_name is the name of the corresponding field in the table of addresses you want to geocode.

You can specify one single input field that stores the complete address. Alternatively, you can specify multiple fields if the input addresses are split into different fields such as Address, City, State, and ZIP for a general United States address.

If you choose not to map an optional input address field used by the address locator to a field in the input table of addresses, specify that there is no mapping by using <None> in place of a field name.

Field Info
out_feature_class

The output geocoded feature class or shapefile.

Feature Class
out_relationship_type
(Optional)

Indicates whether to create a static copy of the address table inside the geocoded feature class or to create a dynamically updated geocoded feature class.

  • STATIC —Creates a static copy of the fields input address table in the output feature class. This is the default.
  • DYNAMIC —Creates a relationship class between the input address table and output feature class so that edits to the addresses in the input address table are automatically updated in the output feature class. This option is supported only if the input address table and output feature class are in the same geodatabase workspace.
    License:

    This option is only supported if you have an ArcGIS Desktop Standard or Desktop Advanced licence. An error message saying Geocode addresses failed appears if you do not have the proper license.

Boolean
country
[country,...]
(Optional)

Geocoding will be limited to the selected countries. When no country is used, geocoding will be performed against all supported countries. Making a country selection will improve the accuracy of geocoding in most cases.

If a field representing countries is in the Input Table and is mapped to the CountryCode Input Address Field, the country value from the Input Table will override the Country parameter.

ISO 3166-1 3-character country codes must be specified.

This parameter is not supported for all locators.

String
location_type
(Optional)

Specifies the preferred output geometry for PointAddress matches. The options are the street side location, which can be used for routing, or the rooftop or parcel centroid for the address. If the preferred location does not exist in the data, the default location will be returned instead. For geocode results where Addr_type=PointAddress, the X,Y attribute values describe the coordinates of the address along the street, while the DisplayX and DisplayY values describe the rooftop, or building centroid, coordinates.

This parameter is not supported for all locators.

  • ADDRESS_LOCATION —Returns geometry for geocode results that could represent an address location such as rooftop location, parcel centroid, or front door.
  • ROUTING_LOCATION —Returns geometry for geocode results that represents a location close to the side of the street. This is the default.
String

Code sample

GeocodeAddresses example (Python window)

The following Python window script demonstrates how to use the GeocodeAddress function in immediate mode using multiline geocoding.

import arcpy
arcpy.env.workspace = "C:/ArcTutor/Geocoding/Atlanta.gdb" 

# Set local variables:
address_table = "customers"
address_locator = "C:/ArcTutor/Geocoding/Atlanta"
address_fields = "Street Address;City City;State State;ZIP Zip"
geocode_result = "geocode_result"

arcpy.GeocodeAddresses_geocoding(address_table, address_locator, address_fields, 
                                 geocode_result, 'STATIC')
GeocodeAddresses example (Python window)

The following Python window script demonstrates how to use the GeocodeAddress function in immediate mode using singleline geocoding.

import arcpy
arcpy.env.workspace = "C:/ArcTutor/Geocoding/Atlanta.gdb" 

# Set local variables:
address_table = "customers"
address_locator = "C:/ArcTutor/Geocoding/Atlanta"
address_fields = "'Single Line Input' SINGLELINE"
geocode_result = "singleline_geocode_result"
arcpy.GeocodeAddresses_geocoding(address_table, address_locator, address_fields, 
                                 geocode_result, 'STATIC')

Environments

  • Current Workspace
  • Output CONFIG Keyword
  • Output Coordinate System
  • Scratch Workspace

Licensing information

  • ArcGIS Desktop Basic: Limited
  • ArcGIS Desktop Standard: Yes
  • ArcGIS Desktop Advanced: Yes

Related topics

  • Geocoding a table of addresses in ArcMap
  • An overview of the Geocoding toolbox

ArcGIS Desktop

  • Home
  • Documentation
  • Support

ArcGIS Platform

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

About Esri

  • About Us
  • Careers
  • Esri Blog
  • User Conference
  • Developer Summit
Esri
Tell us what you think.
Copyright © 2019 Esri. | Privacy | Legal