
ArcGIS API for Python
Python web frameworks
Web frameworks
- Features
- Ease of use
- Ease of management
- Quality of support
- Affordability
- Market presence
Take the quiz to check if ArcGIS API for Python and its alternatives fit your requirements.
Pay-as-you-go
Small
Medium
Large
-
What is ArcGIS API for Python
ArcGIS API for Python is a Python library for automating, analyzing, and administering ArcGIS Online and ArcGIS Enterprise resources through Python. It targets GIS analysts, data scientists, and developers who need to work with web GIS content such as feature layers, web maps, users, groups, and hosted data. The library provides higher-level Python abstractions over ArcGIS REST APIs and integrates with common Python data tools for spatial analysis and visualization.
Deep ArcGIS platform integration
The API provides first-class objects for ArcGIS concepts such as GIS connections, items, feature layers, web maps, users, and groups. This reduces the amount of direct REST request handling needed compared with general-purpose Python web frameworks. It is well suited for automating ArcGIS Online/Enterprise administration tasks and repeatable GIS workflows.
Pythonic geospatial analysis tools
The library supports spatially enabled data frames and geospatial analysis workflows that align with common Python data practices. It includes utilities for querying, editing, and analyzing feature services and for working with raster and imagery services in ArcGIS environments. This makes it practical for notebook-based analysis and operational scripting around web GIS data.
Supports automation and DevOps
ArcGIS API for Python can be used in scripts and CI/CD pipelines to publish content, manage services, and update web GIS items. It supports token-based authentication patterns used by ArcGIS deployments and can run in headless environments. This helps teams standardize deployment and maintenance tasks for ArcGIS web GIS assets.
Not a web framework
Despite being used in web GIS workflows, the product is not a Python web framework for building general web applications. Teams still need a separate web framework to implement HTTP routing, templating, middleware, and application lifecycle concerns. This can create confusion when comparing it to traditional Python web frameworks.
ArcGIS ecosystem dependency
Most functionality assumes access to ArcGIS Online or ArcGIS Enterprise and their service models. Portability to non-ArcGIS GIS stacks is limited because many objects and workflows map directly to ArcGIS item types and REST endpoints. Licensing, deployment constraints, and organizational ArcGIS configuration can affect what the API can do.
Version and environment constraints
Compatibility can depend on specific ArcGIS Online/Enterprise versions and the Python environment used (for example, conda-based GIS distributions). Some capabilities require particular server roles, privileges, or enabled services, which can limit use in restricted environments. Upgrades may require coordination with ArcGIS platform upgrades to avoid breaking changes.
Plan & Pricing
Pricing model: Mixed — ArcGIS API for Python library: free to install and use; ArcGIS Location Platform (services accessed via the API) and ArcGIS Online are pay-as-you-go / subscription-based for service transactions.
Free tier / free plan:
- ArcGIS API for Python library: free (distributed as a conda/pip package; included with ArcGIS Pro; no standalone license required).
- ArcGIS Developer / ArcGIS Location Platform: Essentials / developer free tier available (monthly free usage quotas for many services).
Usage-based examples (official ArcGIS Location Platform pricing & free tiers):
- Basemap tiles: 2,000,000 free tiles per month, then $0.15 per 1,000 tiles. (Alternate session model: 1,000 free sessions per month then $4.00 per 1,000 sessions).
- Geocoding (not stored): 20,000 free then $0.50 per 1,000 results; stored geocodes $4 per 1,000.
- Routing (general routes): 20,000 free then $0.50 per 1,000; specialized route types have different rates (e.g., stop-optimized $50 per 1,000).
- GeoEnrichment: $1 per 1,000 attributes (ArcGIS Location Platform pricing table).
- Other services (Places, Basemap sessions, feature/file storage, etc.) have their own per-transaction or per-storage USD rates and monthly free quotas as documented on ArcGIS Location Platform pages.
Free trial: ArcGIS platform products such as ArcGIS Pro advertise a 21-day trial; the ArcGIS API for Python itself is not offered as a time-limited trial (it is free). For service usage, developers get monthly free quotas rather than a short-term trial.
Discounts / purchasing notes:
- ArcGIS Location Platform is pay-as-you-go; for larger/enterprise needs Esri indicates purchasing options (Esri Store / contact Sales / Developer Bundle / Enterprise agreements) — contact Esri sales for volume/commitment pricing and bundled licensing.
Notes / caveats:
- The ArcGIS API for Python is a client library — many of its capabilities that incur costs depend on ArcGIS services (ArcGIS Location Platform or ArcGIS Online/Enterprise). Billing for those services is either USD pay-as-you-go (Location Platform) or ArcGIS Online credits for ArcGIS Online subscriptions.
- Where specific per-operation prices apply, they are documented on the ArcGIS Developer / ArcGIS Location Platform service pages (basemaps, geocoding, routing, geoenrichment, etc.).
(Extracted only from official Esri / developers.arcgis.com pages.)
Seller details
Esri
Redlands, California, USA
1969
Private
https://www.esri.com/
https://x.com/Esri
https://www.linkedin.com/company/esri/