How to Publish a GIS Dashboard with ArcGIS Online
Publishing a GIS dashboard with ArcGIS Online is one of the most powerful ways to share spatial data with decision-makers, field teams, or the public — without requiring them to know anything about GIS. A well-built dashboard turns layers of geographic data into a live, interactive interface: maps, charts, filters, and indicators all updating in real time from a single source of truth.
This guide walks you through the complete workflow, from preparing your data to publishing a polished, shareable dashboard.
What Is ArcGIS Dashboards?
ArcGIS Dashboards (formerly Operations Dashboard) is a web application builder within the ArcGIS Online ecosystem. It lets you compose a canvas of visual elements — maps, charts, gauges, lists, and indicators — all driven by hosted feature layers in ArcGIS Online.
Dashboards are commonly used for:
- Real-time field operations monitoring
- Public-facing situational awareness portals
- Internal KPI tracking tied to geographic data
- Environmental and infrastructure reporting
Unlike a static map, a dashboard updates automatically as the underlying data changes, making it suitable for both live and periodically refreshed datasets.
Prerequisites
Before you begin, make sure you have:
- An ArcGIS Online organizational account (a free public account has limited publishing capabilities)
- Data ready to publish — this can be a spreadsheet with addresses or coordinates, a shapefile, a GeoJSON file, or an existing feature service
- A basic understanding of ArcGIS Online’s content management system (My Content)
If you are on a free account, you can still follow most of this guide, but sharing options and some layer types may be restricted.
Step 1: Prepare and Upload Your Data
The foundation of any dashboard is a hosted feature layer in ArcGIS Online. This is a cloud-hosted dataset that the dashboard widgets will read from.
Option A: Upload a Spreadsheet with Location Data
If your data is in a CSV or Excel file with latitude/longitude columns (or addresses that can be geocoded):
- Go to My Content in ArcGIS Online.
- Click New Item and select your file.
- During the upload wizard, choose Publish this file as a hosted feature layer.
- Map your location fields (latitude, longitude columns) or enable address geocoding.
- Complete the upload. ArcGIS Online will create a hosted feature layer automatically.
Option B: Upload a Shapefile or GeoJSON
- Compress your shapefile components (.shp, .shx, .dbf, .prj) into a single ZIP archive.
- In My Content, click New Item and upload the ZIP file.
- Choose Publish as hosted feature layer in the wizard.
- Set coordinate system and layer name, then publish.
For GeoJSON, the process is identical — ArcGIS Online accepts .geojson files directly.
Option C: Connect to an Existing Feature Service
If you already have a feature service (from ArcGIS Enterprise, a public REST endpoint, or a previously published layer), you can reference it directly inside the dashboard without re-uploading anything.
Step 2: Create a Web Map
Most dashboard map widgets are built on top of a web map rather than a raw feature layer. The web map lets you control symbology, pop-ups, and layer visibility before the dashboard inherits those settings.
- In ArcGIS Online, go to Map from the top navigation.
- Click Add and add your hosted feature layer to the map.
- Style your layer — choose a color scheme, set symbol sizes, and configure pop-up fields to display the attributes relevant to your audience.
- Set the default extent (zoom level and center) to the geographic area your dashboard will focus on.
- Save the web map with a descriptive title. This web map will serve as the data source for your map widget inside the dashboard.
A well-configured web map saves time later: pop-up configurations, renderer choices, and field aliases set here carry over directly into the dashboard.
Step 3: Open ArcGIS Dashboards
There are two ways to launch the dashboard builder:
From the App Launcher: In ArcGIS Online, click the waffle menu (nine dots) at the top right. Select Dashboards from the list of apps. Click Create Dashboard.
From My Content: Navigate to My Content, click New Item, and choose Dashboard.
Give your dashboard a title and, optionally, a summary and tags. Tags make it easier for others to discover the dashboard if you share it with your organization.
Step 4: Add and Configure the Map Widget
The Map widget is typically the centerpiece of any GIS dashboard.
- Inside the dashboard editor, click the + (Add) button on the canvas.
- Select Map.
- In the widget configuration panel, choose the web map you created in Step 2.
- Adjust the map widget’s position and size on the canvas by dragging its edges.
Once added, you can configure additional map options within the widget settings:
- Map tools: Enable or disable zoom controls, home button, legend, and search bar.
- Navigation: Lock the extent so users cannot pan outside your area of interest.
- Basemap selector: Optionally allow users to toggle between basemaps (streets, imagery, topographic, etc.).
The map widget also supports map actions — interactions that filter or highlight other widgets on the canvas when a user clicks a feature on the map. This is covered in Step 6.
Step 5: Add Data Widgets
Beyond the map, dashboards typically include one or more of the following widget types. Each one is configured to pull data from a layer or web map you have already set up.
Indicator
An Indicator displays a single aggregated number — a count, sum, average, or minimum/maximum — in large, prominent text. It is ideal for showing total records, a running sum, or any KPI at a glance.
Configuration steps:
- Add an Indicator widget and select your feature layer or map as the data source.
- Choose the statistic type (Count, Sum, Average, etc.) and the relevant field.
- Add a label and, optionally, reference data to show change over time.
Chart
The Chart widget supports bar charts, line charts, pie charts, histograms, scatter plots, and more. Charts are ideal for showing distribution, trends, or comparisons across categories in your dataset.
Configuration steps:
- Add a Chart widget and select your layer.
- Choose the chart type and map your category field to the X axis and your value field (with aggregation) to the Y axis.
- Configure sort order, colors, and axis labels.
List
A List widget displays records from your layer as a scrollable, formatted list. You can control which fields appear, how records are sorted, and what happens when a user clicks a list item.
Gauge
A Gauge displays a value within a defined range, similar to a speedometer. It is well-suited for showing utilization rates, completion percentages, or any metric with a known minimum and maximum.
Filter
A Filter widget (also called a Category Selector or Date Picker) lets users interactively filter data across the entire dashboard. When a user selects a value in the filter, all connected widgets — map, charts, lists, indicators — update to reflect only the filtered records.
Configuration steps:
- Add a Category Selector widget.
- Select the layer and the field to filter on.
- In Actions, connect this filter to the other widgets you want it to control.
Step 6: Set Up Actions and Interactions
Dashboard actions are what make a GIS dashboard feel dynamic and interactive. They define what happens when a user clicks or selects something in one widget — and how other widgets respond.
Common action types:
- Filter: Clicking a bar in a chart filters the map and other widgets to show only matching records.
- Zoom to: Clicking a feature in a list zooms the map to that feature’s location.
- Flash: Clicking a chart element causes matching map features to flash, drawing attention to them.
- Pan to: Clicking a list item pans the map to that record without changing the zoom level.
To set up an action:
- Open the settings for a widget (e.g., your chart).
- Navigate to the Actions tab.
- Click Add Action and choose the action type.
- Define the target widget (which widget should respond) and the field that links the two datasets.
Well-configured actions are what separate a static dashboard from an exploratory, interactive data tool.
Step 7: Configure the Layout and Theme
ArcGIS Dashboards offers a grid-based layout system. Widgets snap to a configurable grid, and you can resize and rearrange them freely.
Layout tips
- Place the map widget in the largest portion of the canvas, typically the center or right side.
- Group summary indicators (counts, KPIs) along the top or left sidebar.
- Position filters at the top or in a dedicated sidebar so users find them intuitively.
- Use a Header widget at the top of the canvas to display the dashboard title, logo, and last updated timestamp.
Theme
Under Settings > Theme, you can choose between light and dark themes, or define a custom color palette for the dashboard background, widget backgrounds, and text. A consistent theme improves readability and gives the dashboard a professional appearance.
You can also configure the header background color and upload a logo image to brand the dashboard for your organization.
Step 8: Configure Sharing Settings
A dashboard is only useful if the right people can access it. ArcGIS Online provides layered sharing options.
Important: Both the dashboard itself and the underlying layers and web map must be shared at the same access level. A publicly shared dashboard that references a private layer will show an error to non-authenticated users.
Sharing levels:
- Private (default): Only you can see the dashboard. Use this while building and testing.
- Organization: Accessible to all members of your ArcGIS Online organization when logged in.
- Public (Everyone): Accessible to anyone with the link, including non-ArcGIS users. No login required.
To share:
- Navigate to My Content.
- Locate the dashboard item and click Share.
- Select the appropriate audience.
- Repeat for the web map and feature layer(s) used in the dashboard.
For public dashboards, also verify that your feature layer’s query capability is enabled. Go to the layer’s item page, click Settings, and confirm that Allow others to query this layer is checked.
Step 9: Publish and Share the Dashboard URL
Once sharing is configured, your dashboard is live. To share it:
- Copy the dashboard URL from your browser’s address bar while viewing the dashboard in full-screen mode.
- Or, from My Content, click the dashboard item and copy the View link.
You can embed the dashboard in a website using an <iframe>:
<iframe
src="https://www.arcgis.com/apps/dashboards/YOUR_DASHBOARD_ID"
width="100%"
height="600px"
frameborder="0"
allowfullscreen>
</iframe>
Replace YOUR_DASHBOARD_ID with the alphanumeric ID from your dashboard’s URL.
Step 10: Keep Your Data Fresh
A dashboard is only as useful as the data behind it. There are several approaches to keeping your data updated:
Manual Updates
Re-upload a new CSV or shapefile to ArcGIS Online and overwrite the existing hosted feature layer. The dashboard reads from the same layer, so it will immediately reflect the new data.
Append Features via ArcGIS API
Use the ArcGIS REST API or ArcPy to append or update records in the hosted feature layer programmatically. This is common in automated workflows where a script runs on a schedule and pushes new data to ArcGIS Online.
ArcGIS Velocity (Real-Time Feeds)
For truly real-time data (IoT sensors, GPS tracking, emergency feeds), ArcGIS Velocity ingests streaming data and writes to a feature layer that the dashboard reads continuously.
Scheduled Refresh
If your dataset comes from an external database or API, use tools like ArcGIS Data Pipelines, Python with the ArcGIS API for Python, or even Power Automate to refresh the feature layer on a defined schedule (hourly, daily, etc.).
Common Issues and How to Fix Them
Dashboard shows “Unable to load” for some widgets Check that the feature layer is shared at the same level as the dashboard. A common cause is a public dashboard pointing to a layer still set to Private or Organization.
Filters are not working across widgets Verify that the actions are configured correctly and that the linking field (used to match records between widgets) is consistent across the datasets.
Map is not updating when the feature layer is refreshed The dashboard map widget caches tiles. Force a refresh by clearing the browser cache or adding a short cache-busting parameter. For live data, confirm that the feature layer’s time settings allow real-time refresh.
Charts show incorrect totals Check the statistic type in the chart configuration. A Count statistic on the wrong field, or a Sum on a non-numeric field, will produce unexpected results.
Slow dashboard performance Large feature layers with thousands of records can slow the dashboard. Consider applying a definition query to limit records, enabling generalization, or using a summary table layer for aggregated chart data instead of querying the raw feature layer.
Final Thoughts
ArcGIS Online Dashboards lower the barrier to consuming spatial data dramatically. By separating the data preparation (feature layers, web maps) from the presentation layer (dashboard widgets and actions), the platform gives GIS professionals control over what gets published while giving non-GIS audiences an intuitive window into the data.
The workflow is consistent regardless of your use case: prepare a clean hosted feature layer, build a web map with thoughtful symbology, compose the dashboard canvas with connected widgets and actions, configure sharing, and distribute the URL.
Start with a simple map and two or three widgets. Add interactions and additional panels as your audience’s needs become clearer. The best dashboards are built iteratively, shaped by feedback from the people who use them most.
Published on mapsandlocations.com | Written for GIS professionals and spatial data practitioners
