Address Geocoding with ArcGIS Pro using tribal-owned casino data as a case study

This article will walk you through a complete geocoding workflow in ArcGIS Pro, using tribal-owned casino data as a case study. By performing geocoding, rematching, and reverse geocoding, you'll gain hands-on experience with real-world challenges related to address accuracy. This exercise highlights how to correct geocoding issues, ensuring data integrity while maintaining the non-invasive use of public information about tribal enterprises.

Prerequisite: Please read the article https://support.tribalgis.com/article/26-address-geocoding-with-arcgis-pro

Software requirement(s):

  • Excel
  • ArcGIS Pro 3.3.x
  • ArcGIS Online or ArcGIS Enterprise account

Download (s):

You can download the datasets used in this article for training purposes here https://tribalgis-my.sharepoint.com/:u:/p/sarques/ES67XMBVHz1IqDvKDfjDRVcBA_I98XKBFwzDac6kKmTGLg?e=TMpktA

The Tribal-Owned Casinos in the USA dataset provides a short listing of casinos operated by tribes across the country. The dataset "Tribal_Owned_Casinos_USA.xlsx" includes essential information such as the casino name, the tribe that owns it, location details (address, city, state, ZIP code), geographic coordinates (latitude and longitude), year of establishment, and primary amenities. This data could serve as a valuable resource for understanding the distribution of tribal-owned enterprises and their contributions to local economies, tourism, and cultural preservation.

The modified dataset "Tribal_Owned_Casinos_Modified_USA.xlsx" includes a mix of:

  • Incorrect ZIP codes.
  • Missing house numbers or street names.
  • Missing geographic coordinates, which will require rematching using the Rematch Addresses tool.

Important Note: The dataset was created using publicly available information.

Part 1 - Geocoding workflow for the original dataset Tribal_Owned_Casinos_USA.xlsx

1 - Prepare the Dataset

  • Download the original dataset and ensure the address fields (e.g. street, city, state, ZIP code) are well-structured for geocoding.
  • Ensure the dataset contains the correct details for each casino, including address and geographic coordinates.

2 - Create an Address Locator

  • Open ArcGIS Pro and create a new project. Choose a meaningful name. I named mine "Casino_geocoding".

Since we do not have a reference dataset (e.g. street centerline data, address points, parcel data (cadastral data), building footprints), we'll use Esri's World Geocoding Service to geocode the addresses from our Excel file. This method is simple and efficient, especially when you don't have access to local reference datasets.

To geocode a table of addresses using the ArcGIS World Geocoding Service, an ArcGIS Online for organizations subscription is required. If you are signed in with an ArcGIS Online for organizations account, the ArcGIS World Geocoding Service is available in geoprocessing tools automatically.

  • Click on the Map tab, select Add Data and Geocode Table. Browse to where your Tribal_Owned_Casinos_USA.xlsx is located. Click on your .xlsx to open it, select Sheet1$ and click OK.

  • Once the Geocode Table window opens, follow the steps. Alternatively, you can choose to skip the guided workflow and fill in inputs manually directly in the tool. We'll follow the guide workflow. Begin by clicking Start at the bottom right.

  • For Input Locator, click on the drop-down menu and choose ArcGIS World Geocoding Service. Click Next.

  • For Input Table, make sure that Sheet1$ is displayed. Select More than one field as the next option. Our data is structured with multiple fields. Click Next.

  • The tool will try to map the fields in our data to corresponding fields in the locator. The tool mapped Address, City and State. Let's add the ZIP_Code to the corresponding field in the locator. Click on the drop-down menu next to the ZIP field and select ZIP_Code. Click Next.

You can ignore unnecessary fields but make sure to correctly map essential fields like Address and City.

  • For Output accept the project geodatabase as output location or choose a different one if needed. If you named your ArcGIS Pro's project Casino_geocoding, the project geodatabase will have the name Casino_geocoding.gdb. I named my output Tribal_Owned_Casinos.
  • For Preferred Location Type, choose Address Location.

The options for this parameter are 'Routing location', the side of street location which can be used for routing, or 'Address location', 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 Output Fields, choose All. Click Next.
  • For Country, choose United States.

  • For Limit by Category (optional), select Address, Postal, and Coordinate System. Click Finish.

Category limits the types of places for which the service searches, thus eliminating false positive matches and potentially speeding up the search process. Not all category values are supported for all locations and countries.

  • Verify your parameters and click Run to execute the tool. The geocoder will process the addresses and convert them into geographic locations (points) on the map.

  • You'll get a summary showing the number of addresses that were successfully geocoded, as well as any unmatched addresses. 19 addresses matched so we don't need to start the rematch process. Select No. The output will be added to your Map and you Contents pane.

If some addresses are not geocoded successfully, ArcGIS Pro will let you know how many were unmatched. In the Contents pane, you can right-click on the geocoded layer, select Data and choose Rematch Addresses to manually correct or match any addresses that were not successfully geocoded.

3 - Review the Results

  • Most addresses should be successfully geocoded since the data is clean.
  • Verify that the output shows correctly mapped locations for each casino.
  • If there are any unmatched or partially matched addresses, you'll handle those later using the Rematch Addresses tool (explained in the next workflow for the modified dataset).

You can double check you results by looking at the Attribute Table Status field.

Here are typical values you might see in the Status field:

  • "M": Matched - The address was successfully geocoded.
  • "U": Unmatched - The address could not be geocoded.
  • "T": Tied - The address ha multiple possible matches, and none was automatically chose.

Both Status and Match Type (Attribute Table) provide important information when reviewing geocoding results.

Status usually refers to whether the address was matched ("M" for matched, "U" for unmatched.

Match Type further specifies how the address was matched, such as automatically (A), manually (M), or to a candidate (CM).

Status/Match Type Description What it Means What to Do
A Automatic Match The address was successfully matched automatically with high confidence No action is usually required. The match is reliable, but you can review it if needed.
CM Candidate Match The address was matched to a candidate, but manual review or confirmation is needed. Review the list of candidate matches and select the best one manually.
M Manual Match The address was manually matched by the user. No further action is needed. This indicates a manual match you've already confirmed.
T Tied Multiple possible matches exist (tied candidates) that need manual selection. Review the tied candidates and choose the correct match.
U Unmatched The address could not be matched to any location in the reference data. Review the unmatched address, correct it, or manually place the point on the map.
PP Parcel Point/Partial Parcel The address was matched to a parcel location, often the centroid of a parcel. Review the match for accuracy. If parcel-level precision is acceptable, keep it; otherwise manually adjust the location.
SP Street Point The address was matched to a specific point on a street. Typically, no action is needed. This match provides good precision for street-level geocoding.
R Rejected The address was manually rejected by the user during the rematch process. No further action is needed unless you want to revisit the rejected address.




4 - Visualize the Geocoded Results

  • Add the geocoded feature class to your map.
  • Use symbology to show the locations of each casino across the U.S.
  • Analyze spatial patterns, such as clustering of casinos or proximity to major highways...

  • Save your project.

Part 2 - Geocoding workflow for the modified dataset Tribal_Owned_Casinos_Modified_USA.xlsx (Rematch and Reverse Geocoding)

1 - Prepare the Modified Dataset

  • Download the modified dataset, which contains intentionally incorrect or incomplete addresses (e.g. missing ZIP codes, incorrect street addresses...).

  • This dataset will help you practice using the Rematch addresses tool to manually correct geocoding errors.

2 - Create an Address Locator

  • Open your "Casino_geocoding" project if necessary or create a new project.
  • Click on the Analysis tab and select Tools.

  • In the Geoprocessing pane, search for the Create Address Locator tool.

Which one to choose for the original dataset?

Since we are dealing with addresses, the Create Feature Locator is not the tool we need. It would only be relevant if we were geocoding based on casino names or other location-based attributes (rather than addresses).

The Create Composite Address Locator tool is not necessary here unless we are planning to geocode across multiple datasets (e.g. combining streets and place names).

Now that we have geocoded the original dataset (Part 1) and created addresses points, we can use these as our reference dataset for the modified dataset. For our casino study, we should use the Create Locator tool. This tool is ideal for creating a locator from a single reference dataset, which matches our need for geocoding addresses of casinos. The dataset contains complete street addresses for each casino (address, city, state, ZIP code).

  • In the Primary Table field, add the geocoded addresses points from the original dataset. This will serve as a reference dataset to match the modified addresses.
  • Choose the appropriate locator style (Role) based on your reference data (e.g. Point Address or Dual Range if working with street network or parcel data). We'll choose Point Address here.
  • In the Field Mapping section, ensure you map appropriate fields from your address points dataset: Street Address (or a similar field), City, State, and ZIP Code. The tool may have mapped some automatically.

You may have to check your geocoded address points from the original dataset and inspect the fields (open the Tribal_Owned_Casinos's Attribute Table). Ensure that you have fields that match. If your geocoded points have different field names, you may need to rename or map them correctly in the Create Locator tool. For example, in the field for House Number From I selected Match_addr.

  • Click Run to create your address locator, which will now be ready for geocoding. It will be located in the catalog pane under Casino_geocoding.atbx and in the Locators folder.

3 - Geocode the Modified Dataset

  • Click on the Analysis tab and select Tools.

  • In the Geoprocessing pane, search for the Geocode Addresses tool.

  • For Input Table, this time use Tribal_Owned_Casinos_Modified_USA.xlsx as the input table. Browse to the folder where you downloaded it and make sure that Sheet1$ is displayed.
  • For the Input Address Locator select the address locator that we just created form the drop-down menu. This is the locator that will be used to match the addresses from the modified file.
  • For Input Address Fields: The geocode addresses tool will automatically attempt to map the fields from the Excel file to the fields required by the address locator (e.g. Street Address, City, State, ZIP Code). Ensure that each field in your Excel file is correctly mapped to the appropriate field in the locator.
  • In the Environments tab, choose the same Output Coordinate System as the Tribal_Owned_Casinos reference.

  • Run the tool.
  • In your Contents pane, right click on "Tribal_Owned_Casinos_Geocoded" to open the Attribute Table. After running the geocoding tool, you'll likely see a number of unmatched or low confidence addresses due to the incomplete or incorrect data.

Here are typical values you might see in the Status field:

  • "M": Matched - The adddess was successfully geocoded.
  • "U": Unmatched - The address could not be geocoded.
  • "T": Tied - The address ha multiple possible matches, and none was automatically chose.

All the addresses in "Tribal_Owned_Casinos_Geocoded" are unmatched (i.e. the Status field is "U"). We will use the Rematch Addresses tool to manually resolve these unmatched addresses.

4 - Handle Unmatched or Tied Addresses (Rematch Addresses Tool)

Unmatched Addresses: These are addresses that the locator couldn't find any match for. For example, a casino with an incorrect ZIP code.

Tied Addresses: These are addresses that have multiple candidates but no clear winner, often because of ambiguous or missing details.

  • In the Contents pane, right click on "Tribal_Owned_Casinos_Geocoded", select Data and Rematch Addresses.

  • Select each unmatched address and manually adjust the search parameters or input the missing/correct information (e.g. correct ZIP codes or street names).

If the Rematch Address option is missing, the layer may not have been correctly geocoded, or there may be and issues with the geocoded feature class.

When you ran the Geocode Addresses tool earlier, check the Geoprocessing History or messages to ensure the process completed successfully. Look for any warnings or errors that might have occurred.

  • Once the Rematch Addresses pane opens, you can manually rematch the addresses by selecting each unmatched record. When you display one of the unmatched addresses in the list, the pane should display options for you to rematch this specific address.
  • Check for Candidate Matches. When you select an address, the Candidates section will display any potential matches that the locator found. If you see a list of candidate, review them and choose the best match based on the address details (such as street, name, city, etc.).
  • If no candidates are found (which is our case), we will need to either correct the address fields or manually place the point on the map.

  • If the address has incomplete or incorrect information (e.g. missing Zip code or house number), try adjusting the address fields. Update the information and search for candidates again. You can use the "Tribal_Owned_Casinos" reference layer to help with the process.


  • If no candidates are found or the address can't be corrected with additional information, you can manually place the point on the map.

  • Open the Attribute Table to analyze the geocoded results.

  • Save your Edits.

Both Status and Match Type (Attribute Table) provide important information when reviewing geocoding results.

Status usually refers to whether the address was matched ("M" for matched, "U" for unmatched.

Match Type further specifies how the address was matched, such as automatically (A), manually (M), or to a candidate (CM).

Status/Match Type Description What it Means What to Do
A Automatic Match The address was successfully matched automatically with high confidence No action is usually required. The match is reliable, but you can review it if needed.
CM Candidate Match The address was matched to a candidate, but manual review or confirmation is needed. Review the list of candidate matches and select the best one manually.
M Manual Match The address was manually matched by the user. No further action is needed. This indicates a manual match you've already confirmed.
T Tied Multiple possible matches exist (tied candidates) that need manual selection. Review the tied candidates and choose the correct match.
U Unmatched The address could not be matched to any location in the reference data. Review the unmatched address, correct it, or manually place the point on the map.
PP Parcel Point/Partial Parcel The address was matched to a parcel location, often the centroid of a parcel. Review the match for accuracy. If parcel-level precision is acceptable, keep it; otherwise manually adjust the location.
SP Street Point The address was matched to a specific point on a street. Typically, no action is needed. This match provides good precision for street-level geocoding.
R Rejected The address was manually rejected by the user during the rematch process. No further action is needed unless you want to revisit the rejected address.





5 - Reverse Geocoding

  • Once you've corrected the unmatched addresses, you can practice reverse geocoding

Reverse geocoding is especially useful for applications where you have coordinates but need to determine the nearest address (e.g. emergency response or field data collection).

  • Open the Reverse Geocode tool in the Geoprocessing pane.
  • Input Feature Class or Layer: This should be the feature class or layer containing the points (coordinates) that you want to reverse geocode into addresses. We'll choose "Tribal_Owned_Casinos_Geocoded" to check if the point match the expected addresses after the rematch process.

If the layer already contains address information (which it does here), reverse geocoding will just confirm the locations. If you are using the points to check for new or updated addresses, reverse geocoding can help verify that.

  • Input Address Locator: choose the address locator you created earlier or an online locator. The locator will be used to convert the points (coordinates) into readable addresses.
  • Output Feature Class: This will be the output of the reverse geocoding process, a new feature class where each point will have a corresponding address derived from its coordinates. Choose where to save the new feature class. I'll save it into Casino_geocoding.gdb. I named the new output "Tribal_Owned_Casinos_RG".
  • Feature Type (optional): The tool refers to the type of location you want the reverse geocoding process to return.
Feature Type Description When to Use
Point Address Returns a precise street address point, such as a house or building number. Use when you need an exact address with house/building number, street name, and associated details.
Parcel Returns the parcel associated with the point. Use when you want to identify the land parcel that the point falls within, often used for property-based analyses.
Street Address Returns the closest street address, including house/building number and street name. Use when you want to retrieve a standard address for the point (house number, street, city, etc.).
Street Intersection Returns the closest intersection of two or more streets. Use when you are interested in finding nearby intersections rather than specific addresses.
Street name Returns the name of the street closest to the point. Use when you only need to know the street name near your points, without requiring full address information.
Locality Returns the locality (such as city, town, or neighborhood) for the point. Use when you are primarily interested in the broader locality or neighborhood rather than specific street-level details.
Postal Returns the postal code (Zip code) associated with the point. Use when you want to identify the postal code (e.g. ZIP code) where the point is located.
Point of interest Returns the closest point of interest (POI), such as landmarks, businesses, or facilities. Use when you want to identify nearby notable places or landmarks (e.g. casinos, parks, schools) instead of addresses.
Distance marker Returns distance marker information, often used along highways (e.g. mile markers). Use when you are working with points along highways or routes and want to return distance marker information ( e.g. mile markers).
Subaddress Returns the specific unit within a building, such as apartment or suite number. Use when you need detailed location information like an apartment, floor, or suite within a larger building.

  • Preferred Location Type: This parameters allows you to specify the type of location to retrieve when reverse geocoding.

  • Run the tool to generate addresses from the geographic locations.


6 - Visualize and Compare Results

  • Add both geocoded feature classes (from the original and the modified datasets) to your map.
  • Compare the accuracy and completeness of the geocoded results. Use symbology to differentiate between addresses that were matched on the first pass and those that required manual intervention.
  • Visualize and analyze the locations, highlighting the importance of data quality for accurate geocoding.

7 - Save and Export the Results

  • After you've completed the rematching and reverse geocoding steps, save the final geocoded feature class.
  • Export your results for further analysis, reporting, or sharing with colleagues.

Summary of the workflow

Original Dataset

  • Clean data means most addresses will be matched successfully in the initial geocoding step.
  • Minimal use of the Rematch Addresses tool, as most addresses should geocode without issues.
  • Final map and analysis of well-matched casino locations across the U.S.

Modified Dataset

  • Inaccurate data will result in more unmatched and tied addresses, requiring manual correction using the Rematch Addresses tool.
  • Greater focus on identifying and fixing errors, practicing real-world scenarios.
  • Use of Reverse Geocoding to convert coordinates back into addresses.

This exercise highlights the importance of data quality in the geocoding process and provides hands-on experience with addressing common issues like unmatched addresses and reverse geocoding.


We hope that this article has been helpful! If you have any feedback or questions, please feel free to send us an email or connect with us for a chat. The NTGISC team is here to assist you further!


https://pro.arcgis.com/en/pro-app/latest/help/data/geocoding/tutorial-geocode-a-table-of-addresses.htm

https://desktop.arcgis.com/en/arcmap/latest/manage-data/geocoding/commonly-used-address-locator-styles.htm

https://resources.arcgis.com/en/help/main/10.1/index.html#//00250000000v000000

https://pro.arcgis.com/en/pro-app/latest/help/data/geocoding/tutorial-geocode-a-table-of-addresses.htm

https://pro.arcgis.com/en/pro-app/latest/tool-reference/geocoding/create-locator.htm

https://pro.arcgis.com/en/pro-app/latest/help/data/geocoding/fundamentals-of-creating-a-locator.htm

https://pro.arcgis.com/en/pro-app/latest/help/data/geocoding/create-a-locator.htm

Did this answer your question? Thanks for the feedback There was a problem submitting your feedback. Please try again later.

Still need help? Contact Us Contact Us