Licensing

ApexMaps draws the license line at one rule: a map that answers a question is free, and a map that becomes an application is licensed. Everything below follows from that rule rather than from a feature-by-feature argument.

Free vs. licensed features

Free, alwaysLicensed
choropleth, bubble, and marker series, and the automatic basemapPoint clustering (cluster)
Every one of the 13 built-in projections, with spec objectsProjections you register yourself (registerProjection)
The geometry registry, all 26 packs, provenance and attributionDrilldown and the breadcrumb (drilldown)
Tooltips, legends, labels, data labels, states, and themesEditorial annotations (annotations)
Zoom, pan, pinch, hover, click and box selection, the camera APIarc and line route series, including flow beads
Joins, including fuzzyJoin, and the join diagnosticsLinked selection across maps (link: { group })
Scales, palettes, size legends, responsive rulesPattern fills (fill.pattern)
On-screen zoom controls and globe rotationImage fills (fill.image)
PNG and SVG exportStory mode (chart: { context: 'story' })
The whole performance pathPresentation mode, map-to-chart morphing, time playback, and the WebGL tier, none built yet
The accessibility layer

fuzzyJoin and accessibility are free by decision, not by omission. fuzzyJoin is free because cleaning up someone else's data is not a premium experience, it is the cost of using real data. Accessibility is never gated, in any tier, permanently: a watermark over a screen-reader affordance is indefensible, and in some markets it disqualifies the product from procurement.

Without a valid key, every licensed feature above still works, in full, with a watermark on the map, so you can evaluate it in your own app, with your own data, before buying anything. A valid key removes the watermark. The watermark is recomputed on every render and every updateOptions(), so turning a licensed feature off removes it immediately, and a late setLicense() clears it with no reload.

ApexMaps.setLicense('APEX-xxxxxxxx') // before rendering; applies to every map on the page

One license key covers the whole Apex family, so an existing ApexCharts, ApexGrid, or ApexStock customer does not buy a second one for maps. Each library still needs its own call, because each bundles its own license manager: ApexMaps.setLicense() and ApexCharts.setLicense() are separate calls, so a page with both a chart and a map calls both, with the same key.

Community and Commercial tiers

ApexMaps uses the same dual-license model as the rest of the ApexCharts family.

Community License (free)

Free for individuals, non-profits, educators, and organizations with less than $2 million USD in annual revenue (for non-profits, an annual operating budget under $2 million USD). Personal, educational, and small-business commercial use is covered, along with modifications and redistribution with attribution. It does not cover use by an organization at or above the revenue threshold, use inside a competing mapping or charting product, or sublicensing under different terms.

Commercial License (paid)

Required once an organization reaches $2 million USD in annual revenue. It covers the Pro, Premium, and OEM SKUs, and includes use in internal tools and commercial applications, modifications, app-level distribution, and a 12-month subscription with updates and support. It does not cover redistributing ApexMaps itself inside a toolkit, SDK, or platform, or use by developers who are not themselves licensed.

OEM / redistribution license (paid)

Needed specifically when you embed ApexMaps into a product or platform that other people configure or interact with: a no-code dashboard, a developer platform, an embedded BI tool, or an SDK. It is not required if your application only renders static maps that end users cannot configure or interact with. It covers redistribution rights for one application or product, plus a 12-month subscription with updates and support.

Installing ApexMaps (npm install apexmaps) is treated as agreeing to whichever of these applies to your usage. See pricing for current terms and to purchase a key.

Geometry data licenses

The license above covers ApexMaps the software, not the geographic data. Boundary data is published by third parties under its own terms, and those terms travel with the data rather than with the ApexMaps license. Every pack, and any geometry you register yourself, carries its provenance, readable at runtime through ApexMaps.mapMeta(id) and ApexMaps.catalogue(), and required attribution renders on the map automatically.

SourceUsed forLicenseAttribution required
Natural Earth 5.1.1World countries and coastline, admin-1 for 15 countriesPublic domainNo
US Census Bureau TIGER/LineUS states, counties, nation outlinePublic domainNo
Eurostat GISCO NUTS 2021EU NUTS levels 0 to 3CC BY 4.0, EuroGeographics terms applyYes, and it renders automatically

GADM is deliberately not used. It is licensed for non-commercial use only, and bundling it would put every commercial user in breach. If you register it yourself with ApexMaps.registerMap(), satisfying its license is your responsibility, not ApexMaps'.

Boundary depictions follow the policies of the publishers named above and are not a statement of position by ApexCharts on any territorial dispute. mapMeta(id).boundaries records which policy a given pack encodes.