Analysis widget

The Analysis widget allows you to add spatial analysis and geoprocessing tools to an app. Spatial analysis tools perform fundamental GIS operations, such as creating viewsheds, creating buffers, interpolating, and routing. Spatial analysis is a type of geoprocessing, but geoprocessing also includes tools that perform data management operations such as sorting, merging, and appending spatial data. You can add 29 built-in spatial analysis tools, all of which are also available in Map Viewer, and custom geoprocessing tools from your ArcGIS organization.


Use this widget to support app design requirements such as the following:

  • Many storm drains are connected to lakes, rivers, and oceans, making anything entering a drain a potential pollutant downstream. You want to provide a tool (Create Watersheds) that can help determine where the water entering a storm drain originated.
  • A development company plans to construct a new mixed-use development in a city. The development must be located within a quarter mile of shops, restaurants, and a light rail stop. You want to provide a tool (Create Buffers) that can determine if potential sites fit this criteria.
  • Foresters need to map tree disease transmission. You want to provide a tool (Find Hot Spots) that can identify regions with statistically significant amounts of diseased or healthy trees.

Usage notes

To use any of the built-in tools, the Analysis widget must be connected to a Map widget. However, you do not need to connect a Map widget if you only add custom tools that do not require layer input.

When you include this widget in an app, the run time widget panel has two tabs. The Tools tab lists any tools you add in the widget's settings. The History tab logs all tools the user runs and shows their statuses (for example, Running, Complete, Cancelled). From the history tab, you can click the options button next to each tool to view details, open the tool, or remove the tool. Click View details to view the results of that analysis. Click Open tool to view a tool's configuration window with the same parameters you previously used.

Web maps keep track of their analysis history, including successful and unsuccessful analyses run outside of Experience Builder (such as in Map Viewer). You can import a web map's analysis history in the widget's settings. Any tools imported from the map's analysis history appear at the top of the History tab and are unremovable at run time.


After opening a tool, the user fills in the tool's parameters, which are a set of options or settings, such as the input layer to process and where to save the output dataset. Every tool has a unique set of parameters, which can be required or optional. Red circles indicate if a parameter is required. The information button next to each tool parameter offers more information about each parameter.

Tools have both input and output parameters. Every built-in tool requires the user to specify at least one input layer to be analyzed. There are two ways to specify input data:

  • Select layers from the connected Map widget. If the Map widget contains a web map, its layers are available to choose.

  • Browse for layers in My Content, ArcGIS Online, or an organization's portal.

The output parameters are the name of the result layer and the name of the folder in My Content where the result is saved.

The optional parameters under Environment settings offer additional control over a tool's results. For example, you can specify an output coordinate system or limit an analysis to a specific geographic extent.

Every geoprocessing tool also has a unique set of parameters. A tool creator can choose to use over 100 parameter data types to supply inputs and return outputs, but not all are supported by Experience Builder. View a full list of ArcGIS Experience Builder-supported geoprocessing data types.


This widget's built-in spatial analysis tools consume credits. Every tool has an Estimate credits button, which you can use to see how many credits an analysis will consume before you run it, located above the Run and Back buttons. The button indicates if an analysis does not consume credits.

To use the Analysis widget, the user must be signed in with an ArcGIS account that has privileges to perform analysis. If you include the Analysis widget in an app and share the app publicly, the widget prompts users to sign in to an account with privileges.


The Analysis widget includes the following settings:

  • Select a Map widget—Select a Map widget. Click the import button to import spatial analysis tools from the connected web map's analysis history.

  • Add tools—Add tools to the widget panel.

    • Add a spatial analysis tool—Add one or more of the 29 built-in spatial analysis tools.
    • Add a custom web tool—Add a custom geoprocessing tool. You can add geoprocessing tools as utility services.
  • Tools—You can hover over individual tool to reveal two buttons, one for opening the tool's configuration panel and one for removing the tool. You can click and drag to reorder tools.

    Built-in spatial analysis tools have the following settings:

    • Output—For every tool, you can choose to add result layers to the map automatically once an analysis is complete and allow the user to export results. If you turn on Allow export results, the Export button is available on the View details menu on the History tab.
    • Option—For every tool, if you import spatial analysis from the connected web map's analysis history and there is a past instance of the tool, the Preset tool from a map history setting appears. Turn on this setting to preset the tool with the parameters from that past analysis.

    Custom geoprocessing tools have the following settings:

    • Input—All of the tool's input parameters are listed here. You can provide a run time label for each input parameter. Depending on the type of parameter (for example, GPFeatureRecordSetLayer, GPDate), you may be able to select input methods, provide default values, and more. View a full list of supported data types in the table below.
    • Output—All of the tool's output parameters are listed here. You can provide a run time label for each output parameters. Depending on the type of parameter (for example, GPFeatureRecordSetLayer, GPString), you may be able to allow the end user to export results or add result layers to the connected map automatically. Check the Ignore this output box to remove that output from the results.
    • Option—Provide help documentation for your custom tool. By default, the widget reads the tool's service htm .
  • Display tool history from map—Display tools from the map's analysis history in the History tab at run time.

Spatial analysis tools

The following table describes the built-in analysis tools that the widget currently supports. Click a tool name to view its documentation.

Summarize dataAggregate PointsCalculates the total number of point features within designated areas, and any specified statistics for the points within the areas.
Summarize dataJoin FeaturesAdds attributes from one layer to another based on specific spatial and attribute relationships.
Summarize dataSummarize Center and DispersionFinds the central feature, central tendency, and standard derivational ellipse of a set of features.
Summarize dataSummarize NearbyFinds features that are within a specified distance of features in the input layer using a line distance or travel mode.
Summarize dataSummarize WithinCalculates statistics in areas where an input layer overlaps a boundary layer.
Find locationsCreate ViewshedUses the Esri Elevation Analysis service to identifies areas that are visible from specified observer points.
Find locationsCreate WatershedsUses a hosted digital elevation model (DEM) to create water catchment areas.
Find locationsChoose Best FacilitiesFinds the set of facilities that will best serve demand from surrounding areas.
Find locationsFind by Attributes and LocationCreates a new layer of the features or parts of features that meet specified spatial or attribute criteria.
Find locationsFind CentroidsCreates point features that represent the geometric center (centroid) of multipoint, line, and polygon features.
Find locationsFind Similar LocationsEvaluates the similarity between candidate locations and a reference location based on a set of criteria and ranks the candidate locations from most to least similar.
Find locationsTrace DownstreamUses a hosted digital elevation model (DEM) to trace downstream flow paths.
Enrich dataEnrich LayerSupplements point, line and polygon features with demographic and landscape data from the ArcGIS GeoEnrichment Service or a custom GeoEnrichment service.
Analyze patternsCalculate DensityCreates a density map (polygon) from point or line features by spreading known quantities of a phenomenon (represented as attributes or the points or lines) across the map.
Analyze patternsFind Hot SpotsIdentifies statistically significant spatial clustering of high values (hot spots) and low values (cold spots) or data counts using the Getis-Ord Gi* statistic.
Analyze patternsFind OutliersIdentifies statistically significant hot spots, cold spots, and spatial outliers using the Anselin Local Moran's I statistic.
Analyze patternsFind Point ClustersIdentifies clusters of point features from surrounding noise based on their spatial distribution.
Analyze patternsInterpolate PointsPredicts values at new locations based on values measured at a set of point locations.
Use proximityCalculate Travel CostMeasures the travel time or distance between pairs of points using either straight lines or network-based travel modes.
Use proximityCreate BuffersCreates an area that extends a specified distance around each input point, line, or polygon feature.
Use proximityFind ClosestUses either a line distance or a travel mode to measure between input features and near features.
Use proximityGenerate Travel AreasUses Esri Service Areas to calculate the area that can be reached within a specified travel time or travel distance along a street network.
Use proximityPlan RoutesDetermines how a fleet of vehicles can visit a set of stops in the least amount of time.
Manage dataDissolve BoundariesFinds polygons that overlap or share a common boundary and marges them to form a single polygon.
Manage dataExtract DataPackages layers into datasets that can be used in ArcGIS Pro, Microsoft Excel, and other products. The tool creates an item in your content containing the data from the layers. You can then download the data from the item.
Manage dataGenerate TessellationsCreates a grid of cells with an area and shape that cover a specified extent.
Manage dataOverlay LayersCombines two layers into a single layer using one of three methods: Intersect, Union, or Erase.
Manage dataMerge LayersCopies features from two layers of the same feature type (point, line, or polygon) into a new layer.

Geoprocessing data types

Every geoprocessing tool has a unique set of parameters, which are the set of options or settings that the user configures at run time, such as the input data to process and output dataset. Geoprocessing tools can work with many different types of data as inputs and outputs. However, Experience Builder currently only supports some data types. The following table lists the types of data that the Analysis widget currently supports as input and output parameters.

Data typeInputOutputNotes
BasicGPBooleanYesYesOutput displays as a string.
BasicGPDoubleYesYesOutput displays as a string.
BasicGPLongYesYesOutput displays as a string.
BasicGPStringYesYesOutput displays as a string.
BasicGPLinearUnitYesYesOutput displays as a string.
BasicGPFeatureRecordSetLayerYesYesOutput as a feature layer which can be used by other widgets.
BasicGPDateYesYesOutput displays as a string.
BasicGPRecordSetYesYesInput can only be from a layer selection, not a .json or .txt file. Output is a table object which can be displayed in a Table widget.
BasicGPDataFileYesOutput is a file link.
BasicFieldYesYesOutput displays as a string.
BasicGPRasterDataLayerYesYesOutput is a file link.
GPMultiValuesGPBooleanYesOutput displays as a string.
GPMultiValuesGPDoubleYesYesOutput displays as a string.
GPMultiValuesGPLongYesOutput displays as a string.
GPMultiValuesGPStringYesYesOutput displays as a string.
GPMultiValuesGPLinearUnitYesOutput displays as a string.
GPMultiValuesGPDateYesOutput displays as a string.
GPMultiValuesGPDataFileYesOutput is a file link.
GPMultiValuesGPRasterDataLayerYesOutput is a file link.
GPMultiValuesGPFeatureRecordSetLayerOutput as a feature layer which can be used by other widgets.
GPMultiValuesFieldYesOutput displays as a string.
GPValueTableGPBoolean, GPString, GPLong, GPDouble, GPDate, GPLinearUnitYesYesOutput displays as a string.
GPValueTableGPDataFileYesOutput is a file link.
GPValueTableGPFeatureRecordSetLayerYesYesOutput displays as meta info.
GPValueTableGPRecordSetYesYesOutput displays as meta info.
GPValueTableGPRasterDataLayerYesOutput is a file link.
GPCompositeOption of any basic typeYes

Interaction options

The Analysis widget supports data actions, which you can configure on the Action tab of the widget's settings.

Data actions allow the user to perform data processing tasks, such as exporting results, adding results to a map, and viewing results in a table. For example, if you include an Analysis widget and Table widget in an app and turn on the View in table action in the Analysis widget's settings, at run time the user can click View in table to view the results of an analysis in the Table widget.

Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.