This blog will go over the labeling features that are available to help you design your map. Labeling in Map Viewer allows you to create one or many label classes that can use fields and Arcade to generate descriptive text for your features in the map.
What are label classes?
Label classes are a powerful way to specify:
- Create one or many label classes for a single layer.
- Supports using a field or an arcade expression.
- Filter based on feature values to show/hide labels.
- Text styling and placement.
- Set a visible scale range for each of the label classes.
Building a Label Class
To start creating a label class, open the label panel and click + Add new label class. This will select the first field in your layer. You can switch the field chosen by clicking on the field drop-down. The button next to the field drop-down will open the Arcade editor. When using the Arcade editor and your organization has enabled access to allow use of AI assistants by members of your organization, you can use prompts to help build an expression to build and format your label class. All labels are stored in the web map as an Arcade expression. The Arcade editor can be used to format your numeric fields by defining the number of decimal places you may want to show. It can also be used to create multiline labels. For example, with this map, I am combining the Primary Energy Source and the Total Energy Capacity(MW).
Using this snippet sets the power type, assigns the output to a new line, and adds the unit of measurement.
Label Filtering
Next, I can define a filter for this label. In this map, I only want to see power plants that have a total capacity greater than or equal to 10 MW. The label filtering experience uses the same experience as feature filtering and feature layer effects. All you need to do is select the field and define the value, or use the histogram to set that value or range.
Label styling
Now for the fun part, styling our labels. The label styling panel in Map Viewer offers over 150+ fonts for use. The font selection will also look to see what other fonts are used within the map, and if they are available in ArcGIS Online, they will be recommended, so the label font selection can look consistent with other operational or base map layers. Here I am selecting a font that is used with the basemap, which makes my label styling match the rest of the map.
Next, I configure the color I want to use. The color picker supports saving colors that are used in sketch, feature styling, labeling, and background. This makes it easier to have a consistent color used in one panel and reuse it in another without having to re-enter color codes. Here I am picking a green to match the symbol color used in the feature styling.
Enabling a background on your labels for points and polygons can help make your labels stand out and not blend into the map. Here I am going to use a white fill with 50% transparency for the background, along with the same green used before for the outline.
Label placement
Depending on the geometry type being labeled, you will have varying options for label placement.
Points
For points, 9 defined placement options allow for additional offsets to be defined. Looking at the gif below, we can see how the label placement moves by choosing between the Above, Center, and Below options, along with using the XY Slider to define the offset.
Lines
Lines have 3 defined placement options that support the placement above, center, and below. There is no XY offset exposed for lines at this time
Lines also have 2 additional properties to define your label placement. Allow overrun, which is off by default, will allow label text that is longer than the line feature to not be visually constrained by the feature length, and allow the label to show at any line length. Repeat interval allows the spacing between label placements to be controlled along the line. 0 is the default spacing value, and increasing the number of points will add more spacing.
Polygons
Polygons are currently only placed at the centroid within the feature, along with using the XY slider to set an offset from that centroid.
Scale Range
Jumping back to the power plant layer, we are going to look at the visible scale range for labels. This is supported across points, lines, and polygons. This is useful for setting a proper scale range to help your labels not get cluttered at scales that may not make sense. The scale range will match what is set on your layer, but can be adjusted within the layer’s visible scale range. They will not show if the layer is not visible.
Label Priority and deconfliction.
With the October 2025 update to ArcGIS Online, you now have additional control over your labels’ drawing priority and
deconfliction.
For label priority, the model for what is drawn on the map goes:
- Top-layer labels will be displayed when conflicting with lower-layer labels.
- If a layer has multiple label classes, the top label class will be displayed when conflicting with another lower label class in a feature within the same layer.
Prior to this release, you would be able to reorganize your layers in the layer list, but the label classes within a layer required more work to adjust their priority. Now you can use the drag handles like you see on the layer list and the pop-up elements to reorder your label classes. In the below gif, you can see that as the Hectares label classes(red text) move from the top to the bottom of the list, the number of labels viewable decreases, allowing for the date to take priority. Shifting the class back to the top, the Hectare label class takes top priority and draws more predominantly in the map.
With the new option to control whether you want deconfliction enabled or not within your label class. By default, all maps authored prior to this release were using label classes with deconfliction enabled. This meant that if a label class conflicted with another feature’s label, one would be removed. Being able to disable deconfliction will allow for labels to always draw in the map, even if they touch another label or are within the margins of another label class. Setting deconfliction to disabled can be helpful in cases where the class is authored for large-scale and labels are still fairly dense and/or overlap, but you want to see all the labels combined with another label class authored for small-scale features, where deconfliction can help reduce map noise. Below is a quick GIF showing how disabling your deconfliction can help in certain authoring scenarios. This map shows historical fires where multiple fire areas overlap with one another. Setting the deconfliction to disabled at these smaller scales, we can now see more of our features having data available for labeling.
I hope this review of labeling functionality in Map Viewer was helpful and look forward to seeing what you create!
Article Discussion: