Taking web maps offline allows you to view, collect, and update features when you are disconnected from the internet. Once you're reconnected, you can synchronize your map, send any updates you have, and get map updates from other users.
You can create a web map in an ArcGIS Enterprise portal for use offline in ArcGIS apps such as ArcGIS Collector, ArcGIS Survey123, ArcGIS Pro, and custom apps built with ArcGIS Runtime SDK.
You have the following two options for taking a map offline. Some apps may support one or the other, or both.
- On demand—Field users can download any portion of the map whenever they need it. The field user specifies the area they want to take offline along with the details of the basemap required.
- Create map areas—Map authors can create map areas to package data for specific areas ahead of time. Map areas speed up and simplify the map download process for field workers.
Enable the layers and map for offline use
To take a web map offline, all the layers, including the basemap and reference layers, must be enabled for offline use. You can enable the following types of map layers for offline use:
- ArcGIS Server feature services (from ArcGIS Server 10.3 or later or, if using map areas, 10.6.1 or later)—Choose the Query and Sync options to enable offline use. If you want the data to be editable, also choose any combination of Create, Delete, and Update.
- Hosted feature layers—Check the Enable Sync check box on the Settings tab of the item page.
Note:
The default Esri basemaps included in your portal are not enabled for offline use. You can take similar basemaps offline by adding an Esri basemap from ArcGIS Online to your web map.
You must use the same spatial reference for the map and all cached services in the map, including the basemap.
If you want to create map areas for offline use of your map, ensure that if you only allow editors to edit their own features in a feature layer, you also allow editors to see all features in the layer. For hosted feature layers, this means selecting the Editors can see all features option if Editors can only edit their own features (requires tracking) is also selected.
Maps that contain the same hosted or ArcGIS Server feature layer multiple times do not support offline use. For example, you might add the same layer twice and apply a filter or different style to each one. To reference the same data in a web map you take offline, you can do the following:
- For hosted feature layers, create hosted feature layer views. This provides distinct layers that can be added to the map. Set a view definition and apply different styles as needed.
- For ArcGIS Server feature layers, publish separate feature services that have unique names. You can then add the feature layers to the same web map to apply filters and styles.
After the layers are enabled for offline use, the Offline section appears on the Settings tab of the map's item page with the Enable offline mode toggle key on. If you don’t want your map to be taken offline, click off the Enable offline mode toggle key and click Save.
Use an Esri basemap offline
You can take an Esri basemap from ArcGIS Online offline with an ArcGIS Enterprise web map. To do so, you must have an account as a member of an organization in ArcGIS Online and complete the following steps:
- In the Tiled Basemaps or Vector Basemaps groups in ArcGIS Online, find the basemap you want to use and open its item page.
- On the item page, in the URL section, click Copy next to the text box containing the layer's URL.
- Sign in to your ArcGIS Enterprise portal.
- Click Content and go to the My Content tab.
- Click Add Item and choose From the web.
- Choose ArcGIS Server web service.
- In the URL text box, paste the basemap link you copied in step 2. Click the Title text box so that the URL text box is no longer selected.
The service information is retrieved from ArcGIS Online. It is detected to be secure, and the Username and Password text boxes appear below the URL text box.
- Provide the user name and password for your account that is a member of an organization on ArcGIS Online and choose Store credentials with service item.
- Click Add Item.
The item page for your new item appears.
- To make your basemap available across your maps, create a map that uses the new layer as the basemap and share it with your organization's basemap gallery. For details on making the map, see Use your own basemap. For details on sharing it with the basemap gallery, see How do I make a layer available as a basemap in my organization's basemap gallery?
Note:
The map that is shared with the organization's basemap gallery should only be used for offline use and not for general map viewing.
- Using Map Viewer, open the map you wish to take offline and update it to use the basemap in one of the following ways:
- If you added it to the basemap gallery, click Basemap, and click your newly created basemap in the basemap gallery.
- To add the layer as the basemap for only this map, see Use your own basemap.
- Save your changes to the map.
Create, edit, and manage map areas
Once you enable a web map for offline use, it's recommended that you create map areas for web maps that will be used offline to simplify the experience of offline field workers. Map areas allow you to package data from specific areas of a web map to make it easier and faster to download maps for offline use. Map areas can be used in ArcGIS Collector, ArcGIS Survey123, and ArcGIS Runtime SDK custom apps.
When you create a map area, the data in the specified area is bundled into one or more downloadable packages. Feature layers are bundled into SQLite database files (.geodatabase).
When layers in your map are updated, corresponding map area packages must be refreshed. You can set a refresh schedule to refresh feature layer packages at a specified interval and time—for example, every Monday at 9:00 a.m.—or you can refresh individual or all layer packages manually. If layers are added to or removed from the web map, you must update the entire map area to update the data. In some cases, you may also need to re-create or delete map areas.
Note:
You cannot share a web map that contains a map area with groups that allow members to update all items, and portal administrators cannot change ownership of a web map that contains a map area.
To create, edit, and manage map areas for a web map, you must be the owner of the map and have privileges to create content.
Create a map area
You can create up to 16 map areas for your web map. The number of map areas you create depends on the needs of your organization and its field workers. Before creating a map area, be sure to configure the advanced offline settings for your map. If you modify these settings after you create map areas, you will need to re-create the map areas to use the updated settings.
Do the following to create a map area:
- Ensure that all the layers in your map are enabled for offline use.
- On the web map's item page, click the Settings tab and click Offline at the top of the tab.
- In the Offline section, ensure that the Enable offline mode toggle key is on.
- Under Map Areas, click Manage Areas.
- In the Manage Areas window, click Create Area.
- Do any of the following to navigate to the part of the map where you want to create a map area.
- Use the zoom buttons to zoom in or out.
- If your map has bookmarks, click the Show bookmarks button and click a bookmark to navigate to the that area of the map.
- To navigate to a specific place or address, enter keywords in the search box. Keywords can include addresses, street intersections, places, points of interest, longitude and latitude coordinates, and feature IDs.
- To draw a shape representing the map area, click one of the buttons on the Sketch toolbar.
- To draw a box around the area to take offline, click the Sketch rectangular map area button and draw a box on the map.
- To draw a polygon to define the area you need to take offline, click the Sketch polygon map area button and draw the polygon on the map.
- To move the map area shape, select it and drag it to a new location on the map.
- To change the shape of a rectangular map area, click the rectangle to select it, hover over a vertex until the pointer changes, and drag the vertex to the desired position. Repeat this action with any of the vertices until you're satisfied with the area of the rectangle.
- To change the shape of a polygon area, follow these steps:
- Click the polygon to select it and click the Reshape map area button on the Sketch toolbar.
The polygon's vertices appear.
- Click a vertex to select it.
- To move a selected vertex, drag it to a new position.
- To delete a selected vertex, press the Backspace button on your keyboard.
- Repeat steps b through d with any of the vertices until you're satisfied with the area's shape.
- Click the polygon to select it and click the Reshape map area button on the Sketch toolbar.
- In the Name box, type a descriptive name for the map area.
- Under Update packages for download, set the interval and time that you want your map area packages to be refreshed to capture any changes to feature layer data. If you don't want to set an automatic refresh schedule, select Never from the drop-down menu.
- To schedule creation of an updated map area package for read-only offline use, switch on the Enable scheduled updates toggle. You can also set the interval and time that you want your map area packages to update. Note that this interval is the same as the interval that you set in the previous step.
- Click Save.
Your new map area appears in the Map Areas list with a badge indicating the area is being packaged. Packaging can take several seconds or minutes, depending on the size of the data being packaged. Once packaging successfully completes, you can view a list of created packages by clicking the arrow for the map area.
- To create more areas for this map, click Create new area and repeat steps 6 through 15. You can create up to 16 map areas per web map.
Edit a map area
Once you've created a map area, you may want to change its name, shape, level of detail, or the schedule for refreshing feature layer packages (if set).
Do the following to edit a map area:
- On the web map's item page, click the Settings tab and click Offline at the top of the tab.
- In the Offline section, ensure that the Enable offline mode toggle key is on.
- Under Map Areas, click Manage Areas.
- If necessary, type part of the map area name in the Filter Map Areas field to help you find the map area you want to edit.
- Click the arrow for the map area you want to edit, and at the top of the map area pane, click the Options button , and click Edit.
- In the Edit Map Area pane, change any of the settings, or change the shape of the map area as needed.
- Click Save when you're finished.
Manage map areas
You can refresh, re-create, or delete map area packages at any time.
If your data changes frequently, set a refresh schedule for a map area and ArcGIS Enterprise will automatically refresh the map area's feature layer packages at the interval and time you specify. Apps can synchronize with the portal to get these updates when they have connectivity and need updates at any time. When the apps synchronize, they can also push edits they've made into the editable feature layers in the offline map.
You can additionally enable scheduled updates that control how often an app can get updated map areas for read-only use. In this scenario, you define when the updated packages are available for download. This is a one-way update; clients can only download updated packages (not synchronize any edits they've made), and they can only download the updates after the day and time you specified for the package to update. These scheduled updates provide several performance and scalability benefits over synchronization, and allow updates to be pushed to thousands of users efficiently.
Note:
If your offline web map contains an editable ArcGIS Server feature service that references versioned data, you cannot enable scheduled updates that generate updated packages for read-only use. If you need to include this data in these update packages, publish a second feature service to the ArcGIS Server site, do not enable editing, and use that service in the offline web map.
Refreshing a package updates the data it contains to reflect any changes made to the map data since the package was last created or refreshed. Consider the following when deciding how and when to refresh map area packages:
- If layers are added to or removed from the map, you must update the map area. In this case, you must update the entire map area to update the data accordingly.
- You should refresh packages if the data in one or more feature layers has changed significantly since the last time it was packaged.
- If you have numerous clients connecting at the same time who need to download map updates for reference purposes only, you can schedule when updated packages are generated. This is a more efficient way to provide updates to clients that don't need to edit the data. The packages are generated (ideally) when portal use is low. The clients can connect and download the updated package without the added resources required to synchronize between clients and the portal.
In some situations, you must re-create a map area. When you re-create a map area, all existing packages are deleted and new packages for all layers in the map are created. You must re-create a map area in the following cases:
- Fields have been added to or removed from a layer in the map.
- Domains or feature templates in the map have been modified.
Re-creation of a map area is always a manual process.
When a map area is no longer needed, you can delete it. Deleting a map area deletes all existing packages for the map area. Even if you scheduled updates to the map area, no new map area package will be created once you delete a map area from a web map. However, apps that have downloaded the map area can continue to synchronize data as long as the feature layers exist.
To manage existing map areas, do the following:
- On the web map's item page, click the Settings tab and click Offline at the top of the tab.
- In the Offline section, ensure that the Enable offline mode toggle key is on.
- Under Map Areas, click Manage Areas.
- To update one or more map areas, check the box next to the map area or areas you want to update and click Update on the context menu.
- To re-create one or more map areas, do the following:
- Check the box next to the map area or areas you want to re-create and click Recreate on the context menu.
- Click Recreate to confirm that you want to re-create the map area or areas you selected.
- To schedule creation of an updated map area package for read-only offline use, switch on the Enable scheduled updates toggle. You can also set the interval and time that you want your map area packages to update. Note that this interval is the same as the interval at which the package is refreshed to capture changes to feature layer data.
- To delete one or more map areas, check the box next to the map area or areas you want to delete and click Delete on the context menu.
Note:
Areas are deleted immediately and cannot be recovered.
Choose the right advanced offline options for your project
When authoring a map for offline use, you can control how data will be initially downloaded and subsequently synchronized to offline devices by adjusting the advanced offline options. These settings do not affect edits made by users on mobile devices; those are always synchronized back to the original data.
Note:
You can configure advanced offline options if your map meets the requirements for offline use, plus the following requirements:
- There is at least one editable feature layer in the map.
- All editable feature layers in the map are either hosted feature layers or ArcGIS Server 10.4 or later feature services.
The advanced offline options work out of the box in ArcGIS Collector. Developers building their own apps with ArcGIS Runtime SDK can take advantage of these advanced options using unsupported JSON. For example, if you're building an app using ArcGIS Runtime SDK for .NET, you could use the UnsupportedJson property.
To adjust the advanced offline settings, complete the following steps:
- Ensure that all the layers in your map are enabled for offline use.
- On the web map's item page, click the Settings tab and click Offline at the top of the tab.
- In the Offline section, ensure that the Enable offline mode toggle key is on.
- Click Advanced Options.
- Under Control feature and attachment delivery, specify how you want to deliver attachments and features to offline devices when the map is downloaded for the first time and each time data updates are synchronized from the map to the device. By default, devices will download and get updates to both features and attachments for editable layers and read-only layers.
- Under Editable features, choose an option for delivering features and attachments in editable layers. You can deliver both features and attachments, features only, or neither.
- Under Read-only features, choose an option for delivering features and attachments in read-only layers. You can deliver both features and attachments or features only.
Tip:
Choose the options that make sense depending on what users need to see offline, as well as any concerns or limitations related to device storage, cellular data usage, and download and synchronization speed, especially in areas of poor connectivity. For example, you can choose to deliver only feature updates if offline users don't need to see attachments, or you can have attachments and features delivered for editable layers but not read-only ones.
- Under Use a tile package for the offline basemap, choose one of the following to specify what should be used as a basemap on offline devices:
- Device will use the basemap defined by the web map—If you choose this option, the basemap that is currently in the map will be used offline.
- Device will use a tile package it already has—If you choose this option, the offline map will use a tile package that is already on the device. Using a tile package as a basemap allows you to download a larger and more detailed basemap for offline use when required. Before choosing this option, ensure the tile package covers the area or areas you plan to work with offline.
- Click Save to save your changes.