Skip To Content

Join Features

Join Features The Join Features tool will transfer attributes from one layer or table to another based on spatial and attribute relationships. Optionally, statistics can be calculated for the joined features.

Workflow diagram

Join Features workflow diagram


An analyst has crime data throughout their city. To analyze and study the impact of these crimes, the analyst needs to understand the relationship that the crime locations have with the various city jurisdictions such as school districts, police beats, neighborhoods, and so on. By using the Join Features tool, additional information about each location can be appended to each crime, and the impact on various jurisdictions can be further studied and analyzed.


If your portal is configured to use Living Atlas content, you can use the state and county Living Atlas layers, which include population data that can be joined to your crime data.

Usage notes

The Join Features tool is designed to transfer and append information from one layer to another. The information that is transferred is based on the type of spatial relationship defined or based on a common attribute that is shared between the two datasets.


You can add a layer that is not in Map Viewer to the tool pane by selecting Choose Analysis Layer in the drop-down menu.

When joining features, you can join features based on a spatial relationship, an attribute relationship, or a combination of the two.


Choose a spatial relationship Choose a spatial relationship

The spatial relationship that will determine if features are joined to each other. The available relationships depend on the geometry type (point, line, or area) of the layers being joined. Available spatial relationships are as follows:

  • Identical to
  • Intersects
  • Completely contains
  • Completely within
  • Within a distance of

Choose the fields to match Choose the fields to match

The attribute relationship that will determine if features are joined to each other. Features are matched when the field values in the join layer are equal to field values in the target layer.

The join operation determines how joins between the target and join layers will be handled if multiple features in the join layer are found to have the same relationship to the target layer. The following are the two join operations from which to choose:

  • Join one to one—This option joins the features in the target layer to a single feature in the join layer. The count of joined features will be added by default. Optionally, if statistics are added using the Add statistics parameter, matched joined features will be summarized to each feature in the target layer. If the matching record is defined using the Define which record is kept parameter, you can choose to either keep the first matching record (default) or to keep a matching record based on an expression. An expression can use either a numeric field (option for largest or smallest record) or a date field (option for newest or oldest).
  • Join one to many—This option joins all the matching features in the join layer to the target layer. The result layer will contain multiple records of the target feature.

Example of joining one to many and one to one
An example of one to one and one to many attribute joins. In this example the one to one joins include the default record, the sum of Occupants, and the maximum from Occupants.

If Use current map extent is checked, only the features visible within the current map extent will be analyzed. If unchecked, all features in both the target layer and the join layer will be analyzed, even if they are outside the current map extent.


Summary statistics can only be calculated if a Join one to one operation is specified.

Joins cannot be created using ID fields, such as FID, OID, or ObjectID. If the values from an ID field have to be used in a join, you can create a new integer field and calculate the field based on the ID.

How Join Features works


Standard deviation is calculated using the following equation:

Standard deviation equation
Standard deviation variables


Statistics are calculated for only those features that meet the specified spatial or attribute relationship used in the Join one to one operation. You can calculate numeric and string statistics. By default, only the Count is calculated. Using the table above, numeric statistics were calculated on the field Occupants and string statistics were calculated on the field Building_Name for the values of Apartments for the field Type.

Numeric StatisticResults of Occupants of Type Apartment


Count of:

[130, 8, 250] = 3


130 + 8 + 250 = 388


Minimum of:

[130, 8, 250] = 8


Maximum of:

[130, 8, 250] = 250


388/3 = 129.333

Standard Deviation

Standard deviation
= 121.0014

The count statistic counts the number of nonnull values. The counts of [0, 1, 10, 5, null, 6] = 5.

Similar tools

Use Join Features to transfer attributes from one layer or table to another based on spatial and attribute relationships. Other tools may be useful in solving similar but slightly different problems.

Map Viewer analysis tools

Use the Enrich Layer tool to get demographic and landscape information for the people, places, and businesses associated with your point, line, or area data locations.

ArcGIS Pro analysis tools

Join Features performs the functions of the Spatial Join, Add Join, and Summary Statistics tools.