This article introduces basemap sessions for ArcGIS Location Platform developers. It provides a new way to optimize usage costs when building mapping applications that use a high volume of basemap tiles.
What is a basemap session?
A basemap session is a timeframe (up to 12 hours) during which a single user of a single application can access unlimited tiles from the ArcGIS Basemap Styles service. A session is created when an application loads and displays a style in a map.
There is only a single basemap usage charge for the duration of the session, regardless of the number of styles and tiles loaded and the number of times a user zooms, pans, and explores the map.

What is basemap usage?
Basemap usage is the type of consumption that occurs when accessing basemaps from a basemap service. It is measured by the number of tiles consumed or basemap sessions created.
The type of usage that occurs depends on the type of basemap usage model you implement in your application.
The tile usage model consumes tiles directly from the application. With this model, it can be difficult to predict basemap tile usage and costs. Tile usage depends on many factors, such as the client API you are using, the number of basemap styles you want to display, and the number of pan, zoom, and/or tilt operations performed by each user.
The session usage model allows you to more easily predict and manage basemap usage and costs. There is a single cost for creating a basemap session, and no further costs for consuming tiles during the duration of the session (up to 12 hours).
To learn more about usage models, go to Basemap usage in the Mapping and location services developer guide.
When should you use basemap sessions?
You should use basemap sessions to optimize usage costs when your application:
- Consumes a high volume of basemap tiles.
- Needs to support many user interactions, such as panning, zooming, or browsing to unknown locations.
- Switches between different basemap styles.
- Is used for an extended period of time.
How can you estimate basemap session costs?
The key to estimating the cost is knowing the:
- Average number of users.
- Length of time the application will be used.
- Number of times the application will be started and the map will be displayed (loaded).
- Number of days it will be accessed.
What is the price difference between basemap sessions and basemap tiles?
When using the basemap tile usage model, usage is metered for each tile consumed. Each month you get 2M free basemap tiles, and the cost is $0.15/1000 tiles afterwards.
When using the session usage model, you are only charged for the number of sessions created. You get 1,000 basemap sessions for free, and the cost after that is $4 per 1,000 sessions.
Learn more about costs and pricing at the ArcGIS Location Platform product website.
How do you use basemap sessions?
To use basemap sessions you need to implement the session usage model in your applications. This is a programming pattern that creates a temporary session token for each session. This is different than using the tile usage model that uses an access token to access styles and tiles directly.
The general workflow is to:
- Get an access token with basemap privileges.
- Start a basemap session when an application needs to display a map.
- Use the temporary session token to access basemaps from the Basemap Styles service.
- When the session expires, create a new session.
—
The following application uses basemap sessions. It creates a session when the application starts and the map is loaded. There are no additional charges for accessing basemap tiles during the session. The session is valid for 12 hours (43200 seconds). Once a session is started, it can only load styles from the same style family it was created for (ArcGIS or Open). If the application is closed or restarted, a new basemap session needs to be created.
To learn how to build this application, go to Basemap usage in the Mapping and location services developer guide.

Which services support basemap sessions?
At present, only the ArcGIS Basemap Styles service supports sessions.
Which APIs support sessions?
To start and manage a session you can use:
- The Basemap Styles service REST API
- ArcGIS REST JS
Note: At this time, the ArcGIS Maps SDKs do not provide native support, but you can access the REST API directly or use ArcGIS REST JS in JavaScript applications.
Where can you learn more?
To learn more about building applications with basemap sessions, go to the new Basemap Usage page in the Mapping and location services developer guide.
You can also learn more about ArcGIS Location Platform by exploring Esri’s website, checking out our latest blog, or by signing up for an account to start experimenting with the technology.
Also, stay in the loop with the latest in developer technology by subscribing to the Esri Developer Newsletter!
Article Discussion: