Skip to content

Data Formulator

Open-source tool for exploring data through AI-assisted charts and natural-language questions.

Stars
17.6k
Forks
1.7k
Licence
MIT
Language
Python
Last update
6 days ago
Type
App

What it is

Data Formulator is a Microsoft Research project that lets you explore data by combining clicks in a visual workspace with plain-language questions answered by AI agents. You can start from files, screenshots, text, CSVs, or databases, and it produces visualizations. Its Data Threads feature lets you branch into different questions while keeping the path you took visible.

  • Load a CSV or database table and ask questions in natural language to generate charts
  • Branch an analysis into several Data Threads to compare different questions side by side
  • Connect to URLs or databases with automatic refresh for near-live insights (v0.6 feature)
  • Create and share reports from explored charts (v0.7 feature)

Great for

  • Analysts who want to explore a dataset with charts and follow-up questions
  • People comparing several lines of analysis without losing track of earlier steps
  • Users who want to try AI-assisted charting on local data with a browser interface
  • Developers who want to read or modify an open-source AI data-visualization app

Not ideal for

  • Teams needing a fully governed production BI platform; the README does not describe that level of enterprise controls beyond mentioning governed data sources
  • Users who cannot send data to an AI model provider, since it supports models such as OpenAI, Azure, Ollama, and Anthropic via LiteLLM and the README does not detail a fully offline setup
  • People who need code-signed desktop installers, because the README says the preview builds are not code-signed or notarized
Step-by-step guide: how to use Data FormulatorInstall, first run, examples, tips and FAQs

How to get it

  1. 1

    Install with a package manager

    You'll need: Python (version not stated in the README excerpt) · uv or pip (optional, depending on install route) · Docker (only for the Docker option)

    Install and run via uv (recommended)

    uvx data_formulator

    Install via pip

    pip install data_formulator

    Run after pip install

    python -m data_formulator

    Run with Docker

    docker compose up --build
  2. 2

    Run it

    • Install with uvx data_formulator or pip install data_formulator
    • Start it with python -m data_formulator if you used pip
    • Open http://localhost:5567 in your browser
    • Load a data source and ask a question in natural language
  3. 3

    Get the most out of it

    • Run uvx data_formulator --help to see options such as custom port, sandboxing mode, and data storage location
    • Use the Data Thread to branch into alternative analyses and compare them
    • Try the Flint-powered chart types and styling tools added in 0.7 and 0.8
    • Use the Docker option if you want a containerized setup

Downloads

Strengths

  • Free and open source under the MIT license
  • Keeps exploration organized through branching Data Threads instead of a long chat log
  • Offers several install routes, including uvx, pip, Docker, and desktop preview builds

Trade-offs

  • The latest version is a beta (0.8b1), so features may change; the README calls the desktop builds automated previews
  • Requires an AI model provider configured by you, and the README does not explain costs or data-handling details
  • Desktop builds trigger OS security warnings because they are unsigned

How it compares

ProjectStarsTypeLevelUpdatedBest for
data-formulator (this)17.6kAppbeginner6 days agoAnalysts who want to explore a dataset with charts and follow-up questions
vanna23.8kLibraryintermediate9 months agoDevelopers adding a natural-language data question box to an internal app

Stats synced from GitHub. The assessment above was drafted with AI from the project's README on 2026-10-29 and may miss recent changes — check the README before relying on a command. MIT licence: free to use, modify and distribute, including commercially, as long as you keep the copyright notice.