Vega and Vega-Lite
Vega and Vega-Lite are free, open-source grammars for building interactive data visualizations.
What Vega and Vega-Lite is
Vega and Vega-Lite are free, open-source grammars for building interactive data visualizations. Vega uses declarative JSON specifications that render as web views with Canvas or SVG, using inline, URL-loaded, or runtime-bound data in JSON, CSV, TSV, DSV, and TopoJSON formats. It provides data loading and transformation, scales, map projections, axes, legends, graphical marks, and event-driven interactions. Vega-Lite offers a higher-level grammar with concise JSON for analysis and presentation, including aggregation, binning, filtering, sorting, layered and multi-view displays, and interactive selections. Visualizations run in browsers, while server-side tools can produce PNG and SVG, with command-line PDF rendering. Vega-Embed adds charts to web pages, and Vega works as a JavaScript module or in Node.js through its View API. Integrations include Altair, JupyterLab, Observable, and Kibana.
Good
- Free under BSD-3-Clause
- Interactive browser visualizations
- Supports multiple data formats
- Server-side PNG, SVG, and PDF output
- JavaScript and Node.js support
Watch out
- Not CSP-compliant by default
- Server-side PNG needs node-canvas
- Requires JSON specification work
Who it suits
These grammars suit developers, analysts, and teams building custom web visualizations from structured data. They are useful for exploratory analysis, presentation, and embedded dashboards.
Verdict
Vega provides detailed control, while Vega-Lite offers a more concise route to common analytical charts. The CSP default and node-canvas dependency matter for particular deployments.
Plans and prices
From Vega and Vega-Lite's own pricing page, checked 11 Oct 2001.
| Plan | Price | What it gives you |
|---|---|---|
| Vega and Vega-Lite | Free | Open source visualization grammars · Vega uses a BSD-3-Clause license |
The facts
Each one read from Vega and Vega-Lite's own pages, with the date it was checked.
What it does
- Analysis features
- Vega-Lite supports data transformations such as aggregation, binning, filtering, and sorting, plus layered and multi-view displays and interactive selections.checked 11 Oct 2001
- Dashboard type
- interactivechecked 23 Sep 2001
- Data sources
- Inline data,URL-loaded data,runtime-bound data; JSON,CSV,TSV,DSV,TopoJSONchecked 23 Sep 2001
- Ecosystem integrations
- The Vega-Lite ecosystem lists integrations including Altair’s Python API, a Vega-Lite JavaScript API, JupyterLab, Observable, and Kibana.checked 11 Oct 2001
- Embedded dashboards
- Yeschecked 23 Sep 2001
- Features
- Vega supports data loading and transformation, scales, map projections, axes, legends, graphical marks, and reactive interactions driven by input events.checked 11 Oct 2001
- Intended audience
- The project describes its goal as supporting use cases from exploratory data analysis to communication through custom visualization design.checked 11 Oct 2001
- JavaScript and Node.js
- Vega can be imported as a JavaScript module and used in Node.js projects with its View API.checked 11 Oct 2001
- License
- The Vega repository identifies its license as BSD-3-Clause.checked 11 Oct 2001
- Online editor
- The Vega-Lite ecosystem identifies Vega-Editor as an online editor for Vega and Vega-Lite that can output a Vega specification from a Vega-Lite specification.checked 11 Oct 2001
- Rendering
- Vega can render interactive browser visualizations or static PNG and SVG images server-side, and its command-line utilities can also render PDF files.checked 11 Oct 2001
- Security constraint
- Vega is not compliant with standard Content Security Policy by default because its expression language uses the Function constructor; an alternative expression interpreter is available for CSP-compliant use.checked 11 Oct 2001
- Server-side dependency
- Server-side PNG generation and accurate font metrics require node-canvas, which is not included by default in the vega package.checked 11 Oct 2001
- Support
- The project directs users to the Vega discussion forum and Slack organization for help and sharing examples.checked 11 Oct 2001
- Vega-Lite
- Vega-Lite is a higher-level grammar with concise JSON syntax for creating visualizations for data analysis and presentation.checked 11 Oct 2001
- Web integration
- Vega-Embed adds Vega or Vega-Lite visualizations to web pages and can load specification files from a URL.checked 11 Oct 2001
- What it does
- Vega is a declarative JSON grammar for creating, saving, and sharing interactive visualizations rendered as web views using Canvas or SVG.checked 11 Oct 2001
Money
- Free plan
- Yeschecked 23 Sep 2001
Where it runs
- Platform
- webchecked 23 Sep 2001
Alternatives to Vega and Vega-Lite
- 1

Datawrapper
Free planOpen sourceAndroidiOSWebAPI9.3From $21 a month - 2

Infogram
Free planAndroidiOSWebAPI8.8Free plan - 3

Klipfolio
AndroidiOSWebAPI8.3From $120 a month - 4
AnyChart
Free planAndroidiOSWebAPI8.0From $41.58 a month - 5
StatSilk
Free planAndroidiOSWebAPI8.0From $41.25 a month - 6

Kibana
Free planWeb7.8From $99 a month
