ArcGIS Online provides the resources you need to effectively share your information with the world through online, interactive maps. Sharing your data through a map layer is a powerful option because anybody with a web browser, mobile device, or desktop viewer can access it. While sharing your data is important, how you share is even more important. Below are some best practices for using layers in maps that perform well on the web and on your mobile devices.
Understand when to use tiles and features
Different types of layers can be added to your map. These layer types provide optimized functionality, from rapid display to complex queries and multiuser editing. The correct type of layer effectively communicates your message in the map. It can also help by efficiently storing your layer and will quickly load your map under high demand.
If your data contains a large number of features, publish your data as a hosted tile layer. Tiles support fast visualization of large datasets and can easily remain updated with your feature data when published from a hosted feature layer. If you want users viewing your map to interact with the hosted tile layer, you can enable pop-ups on the hosted tile layers. If pop-ups have been configured on the hosted feature layer used to publish a hosted tile layer, the hosted tile layer will automatically have the same pop-up configuration. These tiles are ideal for complex polygon data and other large datasets. When published from a hosted feature layer, hosted tile layers reflect any changes made to the data.
If your data is updated frequently and the features require editing, publish your data as a hosted feature layer. Features expose the geometry, attributes, and symbol information for vector GIS features. They are useful when you need to expose data for display, query, and editing on the web. When published as a hosted feature layer, your data can be updated and edited as often as you need. Emergency management is a typical example of data that changes frequently. During an active event, emergency responders can communicate with the public by updating disaster boundaries, adding new shelter locations, and so on. Presenting this data as a hosted feature layer allows the responders and citizens to quickly see the latest emergency information.
Consider how to store your features
If you have a small amount of data and you will be the only editor, you can add the data directly to the map as a feature collection. Common file formats such as CSV, shapefiles, and GPX can be added to a map as feature collections. This is a fast and low-cost way to store and manage your data. For example, if you have a spreadsheet of regional offices, all you need to do is drag and drop it into the map. If you don't have data stored in a file, you can create your own data in Map Viewer by adding a map notes layers. Map notes are best when you only have a few features to add. Feature collections are saved in the map, and any changes you make are reflected in the map the next time it's opened.
If you decide to use shapefiles in Map Viewer, be aware that the shapefile must be less than 10 MB in size and have fewer than 4,000 point features or 2,000 line or polygon features to add to Map Viewer. If the file is too large, you can generalize features to reduce the size of the shapefile and, therefore, improve web display. You can generalize the features using a desktop application such as ArcMap, or you can have Map Viewer perform the generalization when you add the file to your map. Generalizing reduces the precision of the shapefile layer to approximately 1 meter in Web Mercator and removes vertices within 10 meters in Web Mercator. This should maintain an informative and accurate display of your features while reducing the overall size of your data and allowing your layer to quickly display in the map.
Generalizing doesn't work well on coincident polygon features intended for large-scale display, because it creates some slivers in the polygons. For those layers, publish a hosted feature layer from the shapefile and use that layer in Map Viewer instead.
If your data requires multiple people to edit it, you should publish it as a hosted feature layer. An advantage of using ArcGIS Online is that you don't have to install any server software or administer additional resources. The layers (published as services) run in a cloud environment, administered by Esri, in which the server automatically scales up to meet demand. You can publish features using the website, ArcMap, or ArcGIS Pro. From ArcMap and ArcGIS Pro, you can also update and republish your data. From the website, if you published your hosted feature layer from a shapefile or file geodatabase (and sync is not enabled), you can overwrite the existing data in the layer and maintain the URL and layer properties. If these operations need to be performed frequently, you can automate the process via scripts. You can also create multiple views of your hosted feature layers. Hosted feature layer views allow you to control which fields and features are available to specific audiences without the need to duplicate your data.
Control who can update your data
If you want everyone who has access to the hosted feature layer to be able to update the data, enable editing, and choose the type of edits you want others to make. For example, you can restrict editing to adding features only or updating existing features only. You can also allow everyone to add, update, and delete features. Be aware that if your hosted feature layer is shared publicly with editing enabled, the general public will be able to edit the data. If you have more complex editing needs, you can take advantage of hosted feature layer views to apply specific editing permissions for each audience. Hosted feature layer views are useful when, for example, you want your field workers to have editing access to a layer, but you also want to share the layer publically for people to view it or add observations. You can have multiple views into your data, each with its own set of editing capabilities, symbology, and filtering. This allows you to tailor each hosted feature layer view based on your needs.
As the owner of the features stored in the map, you can perform edits in Map Viewer using the editing tools that come with Map Viewer. When working with a hosted feature layer, the owner of the features, administrators of the organization, and members of a group with item update capability that the layer has been shared with can also choose to open the layer with full editing control even if editing is disabled. To open the layer with full editing control even if editing is disabled, open the item page, click Open in Map Viewer, and select Add layer to new map with full editing control from the drop-down menu. You can also choose this option from the item title drop-down menu in the My Content tab of the content page. This ensures that only authorized or trusted members of the organization, such as you, the map owner, and administrators, can edit your data.
Optimize your maps for high demand
If your map is picked up by social media and is viewed by thousands or millions of users at once, you will want your map to load as quickly as possible. Follow these guidelines for optimizing the layers in your map to reduce the time it takes to load the map during high-demand activity (such as when thousands of clients access it at once).
- Use hosted tile layers instead of hosted feature layers in your maps. Tiles offer the fastest drawing time for large datasets, and you can choose to have the tiles updated automatically when edits are made to the feature layer used to publish the tiles.
- If your data has more than 4,000 point features or 2,000 line or polygon features, or is larger than 10 MB, publish it as a hosted feature layer and make sure editing is disabled. When editing is enabled, the browser makes larger requests to include full geometry of the hosted feature layer, which makes the layer slower to draw. If your data needs to be edited, create a view of your hosted feature layer. The view can remain read-only with editing disabled while your primary feature layer is shared with the specific individuals who will be making edits.
- Remove any filters on your hosted feature layers, and set a feature or field definition instead.
- If the data in your publicly available hosted feature layer is not updated frequently and editing and sync are not enabled on the layer, consider adjusting the layer cache to improve performance.