Geocoding in Pro (woes)

01-31-2020 01:17 PM
MVP Esteemed Contributor

ArcGIS Pro 2.4.3

In my geocoding travels I have discovered a problem with project files.  After several iterations of geocoding tables, the geocoding functionality seems to go south.  That is to say, it slows way down, or something else goes so wrong that I delete the aprx and start over.  It happened to me on a regular basis at my last job where I was developing locators, and now in my new position, I'm about to re-create my project.

Today I have geocoded a few tables with the same locator and got reasonable performance:  Tens of thousands of records per hour, with a 14k record table taking about 9 minutes. Not great, but I'll take it.  Now, I just re-opened the project and tried gecoding a table of about 4K records.  I hit the quit button (three times now) at 100 records per hour....

The locator today is an old style composite on a network drive, not published, and the tables are in an Egdb, writing the  results to a network fgdb.  The same sort of thing happened to me with published locators, and new style locators in a mapped drive.

Shana Britt

Brad Niemand

can't wait to retire....
0 Kudos
1 Reply
Esri Regular Contributor


Whenever you access a locator from a network drive or write results out to a network drive, the performance is going to be slower than when the locator is accessed locally and the results are written out locally when geocoding or processing any data. If the locator only lives on the network drive, try saving the locator as a locator package that is stored on the network drive for others in the organization to copy locally or just add to the project and it will get extracted locally.

Here are the best practices for getting the best batch geocoding performance using a local locator on your desktop.

  1. Use the latest version of ArcGIS Pro.
  2. Use locators created with the Create Locator tool
  3. In most cases it is best to create a multirole locator over a composite locator. See Combine multiple data layers into a single locator—ArcGIS Pro | Documentation for more details about multirole locators.
  4. Set the number of threads that the locator will use on the machine where the geocoding job will run.
    1. Open the Task Manager to determine the number of available cores there are on the machine.
    2. Set the number of threads property to Auto, which is one less than the number of cores on the machine.
  5. Store the locator and the table to be geocoded on a SSD drive or the fastest drive on the system.
  6. Publish the locator as a service and use the service for geocoding. This is the best way to share the locator within an organization.
    1. If the locator is published to an ArcGIS Enterprise portal, configure the service to use multiple threads.
    2. If there is a portal locator that is not available on the portal, ask your portal administrator to add the locator as a portal utility service, and configure the locator for batch geocoding.