Take web maps offline

Taking web maps offline allows you to view, collect, and update features when you are disconnected from the internet. Once you reconnect, you can synchronize your map, send any updates you have, and get map updates from other users.

Using ArcGIS Online, you can create a web map for use offline in ArcGIS apps such as ArcGIS Field Maps, ArcGIS Survey123, 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. Esri raster basemaps and Esri vector basemaps are automatically enabled for offline use. You can enable the following types of map layers for offline use:

  • Cached ArcGIS Server map services (also called tile layers) and cached ArcGIS Server image services (from ArcGIS Server 10.5.1 or later)—Check the Allow clients to export cache tiles check box when you publish the service from ArcGIS Pro.
  • ArcGIS Server feature services (from ArcGIS Server 10.6.1 or later if you use offline map areas)—Choose the Query and Sync options to enable offline use. To allow users to edit the data, also choose any combination of Create, Delete, and Update options.
  • Hosted feature layers—Check the Enable Sync check box on the Settings tab of the item page. To allow users to edit the data, also enable editing and choose the types of edits users can make in the feature layer.
  • Hosted tile layers—Check the Allow this layer to be downloaded and used in an offline map check box on the Settings tab of the item page.

    To determine whether vector hosted tile layers can be used offline in a specific ArcGIS app, see the documentation for that app.

Note:

You must use the same spatial reference for the map and all cached services in the map, including the basemap and hosted tile layers.

To create offline map areas 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 button on. If you don’t want your map to be taken offline, click off the Enable offline mode toggle button and click Save.

If the map you want to take offline contains a hosted tile layer, the source service definition file or tile package for the tile layer must exist in ArcGIS Online.

Note:

You can take ArcGIS tiles offline when using Esri software that supports offline use. Systematically requesting ArcGIS tiles for offline use through other apps or services is prohibited.

Create, edit, and manage offline map areas

Once you enable a web map for offline use, it's recommended that you create offline map areas to simplify the experience of offline field workers. Offline 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. Offline map areas can be used in ArcGIS Field Maps, ArcGIS Survey123, and ArcGIS Runtime SDK custom apps.

When you create an offline map area, the data in the specified area is bundled into one or more downloadable packages. Feature layers are bundled into mobile geodatabase files (.geodatabase), tile layers into tile packages (.tpk or .tpkx), and vector tile layers into vector tile packages (.vtpk). Package names reflect the names of the layers they contain.

When layers in your map are updated, corresponding offline map area packages must be refreshed. You can set a packaging 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. If layers are added to or removed from the web map, you must update the entire map area to update the packaged data. In some cases, you may also need to re-create or delete map areas.

Note:

You cannot share a web map that contains an offline map area with groups that allow members to update all items, and organization administrators cannot change ownership of a web map that contains an offline map area.

To create an offline map area for a web map that contains a secure public feature service, the service must be from an ArcGIS Server 10.8 or later site.

To create, edit, and manage offline map areas for a web map, you must be the owner of the map and have privileges to create content.

Create an offline map area

You can create up to 16 offline map areas for your web map. The number of offline map areas you create depends on the needs of your organization and its field workers. Before creating an offline area, be sure to configure the advanced offline settings for your map. If you modify these settings after you create offline map areas, you must re-create the map's offline areas to use the updated settings.

Note:

If you created offline map areas using ArcGIS REST API or ArcGIS API for Python before the June 2018 update of ArcGIS Online, you can still use them, but they can't be edited or refreshed. It's recommended that you delete the existing offline areas and create new ones using the steps below.

Do the following to create an offline map area:

  1. Ensure that all the layers in your map are enabled for offline use.
  2. On the web map's item page, click the Settings tab and click Offline at the top of the tab.
  3. In the Offline section, ensure that the Enable offline mode toggle button is on.
  4. In the Offline Map Areas section, click Manage Offline Areas.

    The Manage Offline Areas window appears.

  5. Click Create offline area.
  6. Do any of the following to navigate to the part of the map where you want to create an offline area.
    • Use the zoom buttons to zoom in or out in the map preview.
    • 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.
  7. To draw a shape representing the offline 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 Draw rectangle 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 Draw polygon and draw the polygon on the map.

      The map's basemap must be an ArcGIS Online hosted tile layer or a tile layer from an ArcGIS Enterprise 10.7 or later portal; otherwise, the Sketch polygon map area button will not be active.

  8. To move the offline area shape, select it and drag it to a new location on the map.
  9. To change the shape of a rectangular 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.
  10. To change the shape of a polygon area, follow these steps:
    1. Click the polygon to select it and click the Reshape map area button on the Sketch toolbar.

      The polygon's vertices appear.

    2. Click a vertex to select it.
    3. To move a selected vertex, drag it to a new position.
    4. To delete a selected vertex, press the Backspace key on your keyboard.
    5. Repeat substeps b through d with any of the vertices until you're satisfied with the area's shape.
  11. In the Name box, type a descriptive name for the offline map area.
  12. To change the quality and resolution of the downloaded raster or vector tile layers, open the Level of Detail section and move the slider to the right for more detail or to the left for less detail.

    Set a level of detail that is appropriate for the offline map area you create. If the level of detail is too great (for example, you set the level of detail to Streets but your offline map area is the size of Spain), you'll receive a warning indicating you must either reduce the offline map area or decrease the level of detail.

  13. Open the Packaging schedule section to set the interval and time that you want the offline 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.
    Note:

    Scheduled refreshes don't apply to tile layers. You must manually refresh tile layer packages as needed.

  14. To create offline map area packages for read-only use, open the Optimizations section and switch on the Enable scheduled updates toggle button.

    Read-only packages are created based on the schedule you set in the previous step.

  15. Click Save.

    Your new offline map area appears in the Offline 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.

Edit an offline map area

Once you have an offline 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 an offline map area:

  1. On the web map's item page, click the Settings tab and click Offline at the top of the tab.
  2. In the Offline section, ensure that the Enable offline mode toggle button is on.
  3. In the Offline Map Areas section, click Manage Offline Areas.

    The Manage Offline Areas window appears.

  4. If necessary, type part of the offline map area name in the Filter offline areas field to help you find the one to edit.
  5. Click the name of the offline map area to edit and change any of the settings or the shape of the offline map area as needed.
  6. Click Save when you finish editing.

Manage offline map areas

You can refresh, re-create, or delete offline map area packages at any time. You can also update the map area, which automatically refreshes its associated packages.

If you set a packaging schedule to refresh offline map area packages, the offline map area's feature layer packages are automatically refreshed at the specified interval and time. You also have the option to manually refresh individual packages. Refreshing a package updates the data it contains to reflect any changes made to the map data since the package was last created or updated.

You can additionally enable an option (Enable scheduled updates) that controls how often an app can get updated map areas for read-only use. When this option is enabled, 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 the Enable scheduled updates option that generates 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, add it to your organization, and use that service in the offline web map.

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 offline map area. In this case, you must update the entire offline map area to update the data in the packages accordingly.
  • If the data in one or more feature layers has changed significantly since the last time it was packaged—for example, if new data was appended, you should refresh the individual package.
  • If you have numerous clients connecting at the same time who need to download map updates for reference purposes only, switch on the Enable scheduled updates toggle button. This is a more efficient way to provide updates to clients that don't need to edit the data. The updates are generated based on the packaging schedule. 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 an offline map area. When you re-create an offline map area, all existing packages are deleted and new packages for all layers in the map are created. You must re-create an offline 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.

You cannot schedule re-creation of an offline map area; it is always a manual process.

When an offline map area is no longer needed, you can delete it. Deleting an offline map area also deletes all existing packages for that map area. Even if you scheduled updates to the offline map area, no new package will be created once you delete an offline map area from a web map. However, apps that have downloaded the offline map area can continue to synchronize data as long as the feature layers exist.

To manage an existing offline map area and its associated packages, do the following:

  1. On the web map's item page, click the Settings tab and click Offline at the top of the tab.
  2. In the Offline section, ensure that the Enable offline mode toggle button is on.
  3. In the Offline Map Areas section, click Manage Offline Areas.

    The Manage Offline Areas window appears.

  4. To update one or more offline map areas, check the box next to the offline map area or areas you want to update and click Update on the context menu.
  5. If necessary, type part of the offline map area name in the Filter offline areas field to help you find the one to manage.
  6. To schedule creation of updated map area packages for read-only offline use, switch on the Enable scheduled updates toggle button.
  7. You can also set the interval and time that you want your map area packages to be refreshed to capture changes to feature layer data.
  8. 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 and associated packages 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 feature services.

The advanced offline options work out of the box in ArcGIS Field Maps. 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:

  1. Ensure that all the layers in your map are enabled for offline use.
  2. On the web map's item page, click the Settings tab and click Offline at the top of the tab.
  3. In the Offline section, ensure that the Enable offline mode toggle button is on.
  4. Click Advanced Options.
  5. 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.

  6. 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.
  7. Click Save to save your changes.