Geocoding by Polygons in ArcGIS Pro
Geocoding is the process of plotting point locations from a table by matching attribute values in one (or more) vector layers. This tutorial describes how to create a feature locator from a polygon vector layer and use it to geocode.
Included in this tutorial:
What is Geocoding
Preparing to Geocode
Geocoding by Polygons:
Step 1: Creating a Locator
Step 2: Geocoding with your Locator
Step 3: Reviewing and Rematching Results (if necessary)
Software version in examples: ArcGIS Pro 3
Tutorial Data: The tutorial includes demonstration with sample data available here and this source table.
Credits: L. Meisterlin & D. Wexler (2026)
What is Geocoding?
Geocoding allows you to use descriptive location information such as coordinates, addresses, or location names in a source table to create point-level vector data (with an attribute table comprising the source table information) and can be used for additional geoprocessing and spatial analysis.
To accomplish this, geocoding requires one or more reference layers: vector datasets with attributes that can be matched to the location information in your source table.
When matching attribute values are found, a point is created based on the location and geometry of the matching reference feature.
Preparing to Geocode
To prepare a table of locations for geocoding, ensure that it is in a GIS-readable table format. There are a number of acceptable data formats you can use for geocoding. Examples include a delimited CSV, Excel tables, or a geodatabase table which contains the relevant location information.
Cleaning the location records and checking for consistency across text entries can help the geocoding process. This means ensuring there is uniformity in how your data treats abbreviations (e.g., “Avenue” vs. “Ave’) or other location markers. Additionally, make sure there are no extra spaces, no special characters, and that none of the required information is left blank.
Before geocoding, examine the contents and structure of the source table (your list of locations to be geocoded) as well as the reference datasets you will use to identify matching locations.
In this tutorial, we geocode block-level records in the source table based on a reference layer of block polygons. As such, we will need to know which field(s) in the polygon reference layer uniquely identifies each block.
Lastly, confirm the reference layer’s CRS. Geocoding will result in a new point-level vector dataset, plotted at the centroids of the reference polygons, in the CRS of this reference layer.
Geocoding by Polygons
Step 1: Creating a Locator
The first step to geocoding is creating a locator–a small script to automate the geocoding process. A locator contains instructions for how to interpret the attribute fields in the reference layer to (hopefully) identify matching values between this reference layer and any new tables of location information.
Accessing the Create Locator Tool
Create Locator and other Geocoding Tools
Access the Create Locator tool by navigating through the Geoprocessing Toolboxes > Geocoding Tools > Create Locator or by searching the tool’s name.
Notice the other locator-creation tools available. They differ by specific parameters but can be quite helpful in different circumstances.
TIP: If your polygon-based locator does not work as well as you expect, use the Add Polygon Fields to Locator tool to augment your initial locator.
The Create Locator Tool’s Parameters
The specific parameters for a geocoding locator depend greatly on the structure of your reference data layer(s).
The example in this tutorial generates a locator to interpret the polygons in our reference layer of census blocks as “zones.” Each zone is identified in the reference layer by the values in the attribute field called BCTCB2010. (The values in this field will be compared to the location information in the source table to find potential matches.)
Create Locator tool parameters compared to reference layer information
To summarize the parameters:
Primary Table Role options
Country or Region: This parameter is more consequential when location-labeling systems can influence how text fields are interpreted by the locator. For example: countries employ different conventions for how to number buildings along streets.
Primary Table(s): Specify your reference layers.
Role: Each reference layer’s table will serve a specific purpose or “role” within the locator’s instructions for geocoding. You might have reference layers that represents zip code tabulation areas, street segments, and county boundaries–all combined into one geocoding process to identify addresses. In our example (above), our simple geocoding locator interprets the block polygons as distinct zones.
Field Mapping: With at least one primary table assigned a role, you will be able to edit and assign attributes within the Field Mapping portion of the dialogue box. Here, specify which attribute fields within the reference layer should be compared to the source table’s list of locations for possible matches. In our example, the BCTCB2010 field includes block identifiers included in our source table.
Output Locator: Specify a name and location for saving your locator. Notice that by saving the locator, you can reuse it many times.
Other parameters: Several other parameters allow you to further customize the locator. For example, you can include alias name tables which are helpful in regions where multiple placenames are used to identify the same location.
Step 2: Geocoding with your Locator
You can access the Geocode Table tool within the Geoprocessing Toolbox > Geocoding Tools > Portal > Geocode File or by searching for the tool’s name.
Alternatively, you can access a step-by-step wizard (if you are new to geocoding in ArcGIS Pro) that will populate the parameters of the tool for you interactively. To access the Geocode Table Wizard, right-click on the source table’s name in the Contents panel and click Geocode Table.
accessing the Geocode Table Wizard
the Geocode Table tool
Whether you use the wizard or directly access the Geocode File tool, the parameters are similar:
Input Table: This is the source table of locations you want to geocode (plot as points).
Input Locator: Specify the locator file created in Step 1 above. (You do have the option to use Esri’s geocoding service with credits.)
Input Address Fields: Indicate here whether your source table contains its location information in one or multiple fields.
The specific parameters related to the address field(s) differ based on the Input Address Fields option (One field or Multiple fields). Whether based on a single field or multiple fields, here you indicate which field(s) in the source/input table corresponds to the locator’s reference information.
Output: Specify a name and location for the output feature points layer.
Preferred Location Type: The Geocode Table wizard offers “Address Locations” (points) and routing information as “location types.”
Output Fields: By default, the geocoding process will replicate all fields of the input/source table as attributes in the resulting point dataset. You can narrow these outputs with this drop down.
< Geocoding_08.png><caption: output settings in the Geocode Table Wizard>
When the dialogue box opens up, it should be filled in based on the selections we made throughout the guided workflow of the Geocode Table Wizard. Double check your selections look adequate and make any changes if necessary. Now, you may run the Geocode Table tool.
Step 3: Reviewing and Rematching Results (if necessary)
After running the Geocode Table tool, by default your output is automatically added to your project. In addition to the source table’s fields, the new attribute table also includes fields related to the geocoding operation: Match_type, Match Address, Address Type and Score.
The Score attribute describes the quality of the match (between your source table’s values and the reference layer’s values) from 0-100. Generally, scores above 85 are considered a good match. If you have any locations with a score that is particularly low, or if you have points which did not successfully match, you can attempt to rematch addresses by right clicking on your newly geocoded layer, hover over Data and then select Rematch Addresses. This will allow you to interactively evaluate and rematch (where appropriate) all entries in your geocoded layer.
Accessing the Rematch Addresses interface