Prepare a map for Indoor Viewer

Available with the ArcGIS Indoors Maps extension.

The Indoor Viewer app is configured to use a web map that contains either map image layers or feature layers. Maps that support Indoors—whether map image layers, feature layers, or mobile map packages—have layer requirements for feature classes in the Indoors geodatabase to support Indoors mobile apps and their functionality. These layers must conform to the ArcGIS Indoors Information Model, and are created and curated using ArcGIS Pro.

Before you prepare a map and share it to your ArcGIS organization for use in the Viewer app, you must create Indoors data that conforms to the Indoors model. This includes creating an Indoors database, loading data into the database, and optionally creating an indoor routable network in ArcGIS Pro.

You can create indoor data using an Indoors geodatabase created with the Create Indoors Database tool, or an indoor dataset created with the Create Indoor Dataset tool. An Indoors geodatabase contains all the required attributes and tables for mapping floor plans, space planning, routing, and workspace reservations, while the indoor dataset includes a simplified schema that is best suited for basic floor plan mapping.


The following new field data types are available in ArcGIS Pro 3.2: date only, time only, timestamp offset, big integer, and 64-bit object IDs. Although you can publish these data types to ArcGIS Enterprise 11.2 and ArcGIS Online, they are not fully supported and their use in web layers is considered beta functionality.

Required data layers

The following layers are required for indoor data visualization in Indoor Viewer:

  • Details
  • Units
  • Levels
  • Facilities

    This layer must be drawn on top of other indoor map layers to facilitate the 2D campus navigation experience in Viewer.

Include the Network_ND layer to support indoor routing and directions.

Include the following layers to support additional functionality in Viewer:

  • Events—List events and locate them on the map
  • Occupants—Search for occupants, find them on the map, and configure workspace reservations
  • <Category source> layers—Search and explore for additional features that are configured as categories
  • <Barrier> layers—Use in routing when there are temporary changes to the network
  • <Work order> layers—Integrate work orders
  • Reservations—Configure workspace reservations
  • Sites—Organize facility features by the site in which they are located

Optionally include the following tables to support workspace reservations:

  • Areas—Required if you are using the Indoor Space Planner app to assign occupants to spaces. This is necessary for displaying an occupant's hotel assignments in the info panel.
  • Area Roles—Required if you are configuring reservation managers who can book hotels and manage bookings for other people.

Layer names included in the indoor web map must exactly match these layer names to enable functionality in the Indoors web apps.

You can configure additional features that you want to interact with in the Viewer app as categories using the Create Indoors Category or Create Default Indoors Categories tools. These features can be from point or polygon layers in a floor-aware map and require a LEVEL_ID field that matches the LEVEL_ID field value of the associated feature in the Levels feature class.

The number of related items that are displayed for a feature in the info panel in Viewer is limited to the maximum number of features per layer. You can set this amount using the Maximum records returned by server parameter. This is important when displaying related items for a large feature such as a building.

Prepare the map

After creating your indoor data and optionally configuring categories, launch actions, or a routable network, you can create a map to share to your ArcGIS organization for use in Viewer. The Viewer web map must contain all of the required map image layers and feature layers.


You can use the Indoor Viewer map templates included in the product data to prepare a map for Indoor Viewer. You can update the source of layers in the map template to point to the corresponding layers in your Indoors workspace and share the map to your organization for use in Indoor Viewer.

Complete these steps to create a map and prepare it for use by Indoor Viewer:

  1. Start ArcGIS Pro.
  2. Sign in to your ArcGIS organization.
  3. Create a project and add a connection to your Indoors geodatabase or open an existing project that contains your Indoors geodatabase.
  4. Click the Insert tab and click the New Map button New Map to create a map, if necessary.
  5. Add the following layers to the map and set the visibility as follows:

    Layer nameRequiredLayer visibility (recommended)





    The Facilities layer is particularly important in Viewer. Its position in the table of contents, visibility, and symbology determines the visibility of other layers in the map. To show the floor plans of all buildings, you can turn off the visibility or set the transparency on the Facilities layer. In this scenario, the ground floor of all unselected buildings is shown on the map at all times. The visible level in the selected building is set by the floor picker. If layers are drawn below the Facilities layer in the table of contents, only the features on the currently visible levels are shown. If layers are drawn above the Facilities layer, they are shown for all levels on unselected buildings.







    <Category source> layers












    Keep the following in mind when adding and configuring layers:

    • If you want to be able to identify features in the Viewer app, but don't need the explore or search experience and don't need to route to them, add these features to the map as basic layers (points, lines, polygons, or multipatch 3D features). You can configure pop-ups for these layers in a later step.
    • Indoor Viewer supports adding feature layers to the web map. Customization to display name, symbology, or other layer properties made in ArcGIS Pro for work order layers in Indoor Viewer is not available to mobile users. If you are using a feature layer for work orders that requires customization in both Indoor Viewer and mobile apps, consider making these changes in the shared layer so that users of the web and mobile apps have a similar experience.
    • You can include the following optional tables in a map:
      • If you are using the Indoor Space Planner app to assign occupants to spaces, include the Areas table. This is necessary for displaying hotel or hot desk assignments for occupants in the info panel.
      • If you assigned reservation managers in Space Planner, include the Area Roles table.
  6. Configure the map as floor aware.

    Maps must be floor aware to be used in the Viewer app.

  7. Configure additional layers as floor aware.
  8. If you're using the Reservation layer method to configure office hotels and meeting rooms, add the Reservations feature class to the map.
  9. Set the visible scale range of the layers as necessary.
  10. Set the symbology properties of the layers as follows:

    Details and Units layers

    Set according to the USE_TYPE attribute.

    <Category source> layers

    Set according to the field that describes the feature type.

    Occupants and Events layers

    Use an empty point symbol (no color or outline, and point size 1).


    Use caution when applying symbols for category layers that have dense coverage. For example, offices are symbolized by the color of the unit polygon and shouldn't have individual point symbols.

  11. Turn on labeling for Units (NAME attribute), Occupants (KNOWNAS attribute), and any additional features that require a label.

    You can configure labels so that occupied office units display the occupant's name and unoccupied offices display the unit's name to visually identify which offices are vacant or available to assign in the app. To hide the unit name label for occupied offices, configure labels for the units layer as follows:

    1. Right-click the Units layer in the Contents pane and click Labeling Properties.

      The Label Class pane appears.

    2. Click the SQL query button SQL Query and click New expression.
    3. Create the following expression:
      Where Assignment Type is not equal to office
    4. Click Apply.

    Occupant labels may overlap with labels for adjacent units, which results in missing labels in the app. To avoid overlapping labels, you can stack occupant labels by creating an Arcade expression with the following steps:

    1. Right-click the Occupants layer in the Contents pane and click Labeling Properties.

      The Label Class pane appears.

    2. Click the Label expression button Label expression and create the following Arcade expression:
      Replace($feature.KNOWNAS, ' ', TextFormatting.NewLine)
    3. Click Apply.
  12. Set the display field in the layer properties for Occupants, if present, to KNOWNAS and all other map layers to NAME.

    The Viewer app uses the display field value for labeling certain items in the app, such as the info panel title. Setting this in ArcGIS Pro will help avoid confusion for app users.

  13. Configure pop-ups for any additional layers you want to identify on the map.

    Configure pop-ups for layers that you want to interact with on the map in Viewer. These basic layers don't support the explore or search experience, and action buttons, such as Directions, are not available.

  14. Ensure that the map has a coordinate system set for Current XY, such as WGS 1984 Web Mercator (Auxiliary Sphere), and Current Z, such as WGS84.

    Geographic and projected coordinate systems are supported in Viewer.

  15. Optionally, rename the map to make it easily identifiable, and complete all metadata fields.
  16. Set the display extent of the map to display all of the map data.
  17. Add any Esri-hosted or custom basemap services to the map.

    Configure a basemap to choose between an Esri-hosted basemap or a custom vector tile package basemap.

  18. Clear all feature selections.

The map is now ready to publish and share as a web map to your ArcGIS organization.

You can further configure the map in ArcGIS Pro to configure a basemap, publish category features as a feature layer, or enable additional app functionality such as searchable events, work orders, device location and sharing, hotel booking, app launch actions, and routing barriers. You can also use the Viewer map to create a 3D scene in ArcGIS Pro for use in the Viewer app.

Configure a basemap

A basemap is an important part of an indoor map that provides context and perspective for what's nearby. Keep in mind the scale of your map when choosing the basemap to use. Unlike image tile basemaps, vector tile basemaps are smaller and support higher levels of detail. The following workflow provides the necessary steps to configure a basemap for Indoors.

Use an Esri-hosted basemap

In ArcGIS Pro, you can add basemaps from the Basemap gallery in the Layer group on the Map tab. Depending on how your active portal is configured, the gallery can include the default Esri basemaps, maps shared to your organization's basemap gallery group, and basemaps you added to a project in ArcGIS Pro.

You can also add Esri vector basemaps to a map by completing the following steps:

  1. Copy the URL for the vector basemap you want to add.
  2. Click the Add Data drop-down arrow in the Layer group.
  3. Choose the Data From Path option.

    The Add Data From Path dialog box appears.

  4. Paste the URL.
  5. Click Add.

Related topics