OSI-licensed only · self-hostable

Open-Source Highcharts Alternatives (2026)

Highcharts is a widely used JavaScript charting library. Its source is public, but it is licensed by Highsoft rather than under an OSI licence, and commercial use requires purchasing a licence. If you want a library you can ship in commercial products without a licence fee, the options below are all permissively licensed.

Every library is under an OSI-approved licence (Apache-2.0, MIT, ISC), checked against its repository. They are libraries, not servers: all are bundled into your front end, so the self-host label here just means you ship them yourself.

Licences checked against each repository on November 7, 2026.

What you're replacing

  • •Line, bar, pie and area charts in a web app
  • •Interactive tooltips, zoom and legends
  • •Large or real-time datasets
  • •Chart styling and export that match your brand

At a glance

ToolBest forLicenceRuns as
Apache EChartsBroadest chart catalogueApache-2.0Server
Chart.jsSimple, common charts quicklyMITServer
Plotly.jsScientific and statistical chartsMITServer
D3Fully custom visualisationsISCServer
Observable PlotConcise exploratory chartsISCServer
uPlotFast time-series chartsMITServer
RechartsComposable charts for ReactMITServer
Billboard.jsD3-based reusable chartsMITServer

1. Apache ECharts

Apache-2.0

Best for: Broadest chart catalogue

A charting and visualisation library with a very large set of chart types, including maps, graphs, heatmaps and gauges, rendered with Canvas or SVG.

Strengths

  • + Huge range of built-in chart types
  • + Canvas and SVG renderers
  • + Backed by the Apache Software Foundation

Trade-offs

  • − Large bundle unless you tree-shake
  • − Config object API has a learning curve

2. Chart.js

MIT

Best for: Simple, common charts quickly

A simple, flexible charting library drawing charts on HTML canvas, with core chart types and a plugin system.

Strengths

  • + Easy to learn
  • + Responsive by default
  • + Large plugin ecosystem

Trade-offs

  • − Canvas-only rendering
  • − Fewer advanced chart types out of the box

3. Plotly.js

MIT

Best for: Scientific and statistical charts

An open-source JavaScript graphing library that supports statistical, scientific, 3D and financial charts, built on D3 and WebGL.

Strengths

  • + Wide set of scientific chart types
  • + 3D and WebGL support
  • + Built-in interactions

Trade-offs

  • − Large bundle size
  • − Defaults look different from Highcharts

4. D3

ISC

Best for: Fully custom visualisations

A low-level toolkit for bespoke data visualisations, providing scales, shapes, layouts and data binding rather than ready-made charts.

Strengths

  • + Total control over output
  • + Huge ecosystem and examples
  • + Permissive ISC licence

Trade-offs

  • − Not a chart-in-a-line-of-config library
  • − More development effort per chart

5. Observable Plot

ISC

Best for: Concise exploratory charts

A JavaScript library for exploratory data visualisation with a concise, layered grammar of marks.

Strengths

  • + Short code for common charts
  • + Built on D3 ideas
  • + ISC licence

Trade-offs

  • − Less suited to dashboards needing heavy interactivity
  • − Fewer chart widgets than Highcharts

6. uPlot

MIT

Best for: Fast time-series charts

A small, fast chart library for time series, built on Canvas 2D and designed for large datasets.

Strengths

  • + Very small footprint
  • + Handles big time series
  • + MIT licence

Trade-offs

  • − Time-series focus only
  • − Minimal built-in UI

7. Recharts

MIT

Best for: Composable charts for React

A charting library built on React components and D3 submodules, with a declarative, composable API.

Strengths

  • + Natural fit for React codebases
  • + Declarative components
  • + SVG output

Trade-offs

  • − React only
  • − Performance limits on very large datasets

8. Billboard.js

MIT

Best for: D3-based reusable charts

A reusable chart library based on D3, with a simple API and a wide range of chart types.

Strengths

  • + Simple API on top of D3
  • + Many chart types and options
  • + MIT licence

Trade-offs

  • − Smaller community than ECharts or Chart.js
  • − Fewer commercial support options

New open-source tools, weekly

One email a week with the open-source projects, launches and releases added to TechLogHub. Unsubscribe in one click.

Get the TechLogHub digest

One email a week: new and trending developer tools, fresh comparisons, and what shipped. Unsubscribe in one click.

How to choose

If you need…Start with
A broad chart catalogue incl. maps and gaugesECharts
Simple charts with little codeChart.js
Scientific or 3D chartsPlotly.js
Fully custom visualsD3
Large real-time time seriesuPlot
A React codebaseRecharts

Often called open source, but aren't

Public source code, but under licences the Open Source Initiative doesn't approve. Fine to use; read the terms first.

  • Highcharts (Highsoft licence (not OSI))

    The source is public, but it is released under Highsoft's own licence and commercial use needs a paid licence, so it does not qualify as open source.

Open-source Highcharts alternatives: FAQ

Quick answers to common questions

Is Highcharts open source?

No. Its source code is public, but Highsoft licenses it under its own terms and commercial use requires a paid licence.

What is the best free Highcharts alternative?

For breadth of chart types, Apache ECharts. For simplicity, Chart.js. Both use permissive licences that allow commercial use.

Can I use these in a commercial product?

Yes. Apache-2.0, MIT and ISC all allow commercial use. Keep the copyright notices as each licence requires.

Is migrating from Highcharts hard?

Chart configuration formats differ, so expect to rewrite chart definitions. ECharts and Billboard.js use option objects, which makes the mapping more direct than D3.

Do these libraries have stock or Gantt charts?

Highcharts ships Stock and Gantt packages. Among these, ECharts covers candlestick and many financial views, while Gantt charts usually need custom work or an additional library.

Maintain an open-source Highcharts alternative?

List it on TechLogHub and we'll review it for this page.

Submit a project