is there a method/tool that can auto increment based on spatial location.

I have tried a auto increment by "sort" based on (polygon centroids) X,Y coordinates but this doesn't really work that well if the polygons are irregular in location.

What I want is an unique ID for each property starting from 1 (top of map) to n (bottom of map) but going from left to right and not jumping around.

For example (see below) - I want "14" to be "13", "18" to be "14", "20" to be "15" and so on going down the map.

enter image description here

  • Draw the line and run near tool on it with location. Compute distance from line start to points(nearx, neary).. Sort by using Results.
    – FelixIP
    Jan 18, 2018 at 6:20
  • 2
    Possible duplicate of Logically asign values to polygons
    – Luuklag
    Feb 16, 2018 at 11:19

1 Answer 1


The Sort tool has a spatial_sort_method that can do this:

Specifies how features are spatially sorted. The sort method is only enabled when the Shape field is selected as one of the sort fields.


UL — Sorting starts at upper-left corner.

However, it needs an Advanced level license:

Sorting by the Shape field or by multiple fields is only available with an Desktop Advanced license.

The same can be accomplished using a Basic level license but that needs ArcPy code to be written.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.