Cloud Parts

Evidence

BI as code: reports written in Markdown with SQL blocks and chart components. It began as a static site generator that ran every query at build time; the current version runs queries when a page loads.

What it is
Static read models (data apps built ahead of time)
Type
Open source
Made by
Evidence Technologies, Inc.
License
MIT
Facts checked
9 October 2026

What it is

An Evidence report is a Markdown file. SQL blocks in it fetch data, and components such as line charts, tables and big numbers render the results, so a report lives in git and gets code review like any other code. The original version, now called legacy Evidence, was built on Svelte and SvelteKit and was a static site generator. Source queries in sources/ ran in each database’s own dialect during npm run sources, page queries ran in DuckDB, and npm run build ran everything once and wrote a static site to build/, with every permutation of every parameterized page pre-rendered. You hosted it on any static host (Netlify, Vercel, GitHub Pages, Cloudflare Pages) and rebuilt on a schedule to pick up new data. If a query broke, the build stopped and the old site kept serving; build:strict failed the build on any query or component error. In the browser, filters and inputs re-ran queries on DuckDB-Wasm over the shipped data.

From 2025 Evidence changed course. Evidence Studio, the hosted product, and Evidence Core, the MIT-licensed framework, run SQL on the server against one warehouse through a direct connector (Snowflake, BigQuery, Databricks, ClickHouse, Postgres, MotherDuck, Cube and others) and re-run queries on page load, with no build step. The page syntax moved from Svelte to Markdoc, and self-hosting means running the evidence serve Docker image rather than uploading static files. The legacy build commands in the project template now just print that they are deprecated. Evidence is listed here for the build-time model it was designed around, which legacy projects still use.

Why teams pick it

  • Reports are Markdown and SQL in git: pull requests, diffs, loops and templated pages instead of drag-and-drop dashboards
  • Legacy builds produce plain static files: fast page loads, any static host, and no database credentials or connections at view time
  • A failed query stops the build instead of breaking the live site, which keeps serving the last good version
  • The current version keeps the code-first workflow and adds live queries on hundreds of millions of rows, plus access controls and row-level security in Evidence Studio

Watch out for

  • Static (legacy) Evidence is deprecated: new projects get live, server-side queries instead, and old projects need evidence migrate and manual fixes to move to the new syntax
  • Legacy builds were capped at about 2 million rows, needed a full build for every data or content change, and pre-rendered every page permutation, so docs suggested single-page-app mode past 1,000 pages
  • Every viewer of a static build sees the same snapshot: no per-user data or access rules unless you build them yourself
  • Self-hosting the current version gives you only HTTP basic auth and direct connectors; SSO, access rules, models and the AI agent are Evidence Studio features

Alternatives

What all data apps built ahead of time have in common →

How it fits with other technologies

See it in a real stack

No architecture uses Evidence yet. Drop it into the playground and wire it up yourself.Open playground →
Where it came from2021–2026

Adam McAskill and Sean, who had spent five years building the data science group at a Canadian private equity firm, set up the modern data stack (Fivetran, dbt, BigQuery) at many portfolio companies and found the BI layer its weakest part. Drag-and-drop tools were slow to build with, hard to version control and test, and produced grids of charts without context. They admired how newspaper graphics teams such as the New York Times coded their data products by hand, and wanted a framework that let analysts do the same.

They launched Evidence on Hacker News in August 2021, as part of Y Combinator’s Summer 2021 batch, describing it as “a static site generator for data analysts”, “like Jekyll or Hugo for SQL analysts”. Pages were Markdown, SQL inside them ran against BigQuery, Snowflake or Postgres, and the framework was a set of conveniences around SvelteKit. The core would stay open source, and a paid cloud version would add hosting and access control.

Building ahead of time kept reports fast and safe, but it capped data at about 2 million rows and made every change wait for a build. In June 2025 Evidence launched Evidence Studio, with a new query engine that runs queries server-side, and said it would sunset its earlier cloud product by the end of the year. The open-source framework followed: Evidence Core queries a warehouse live, and the legacy static builds are deprecated.

Why it’s built this way

A static site generator instead of a BI server
Running queries once at build time made pages load fast, let them be hosted anywhere and meant a broken query stopped the build instead of breaking the live report.
Markdown and SQL, not drag and drop
The founders saw analysts wanting software practices: version control, testing, loops that generate a section per region and reusable components.
Built on Svelte and SvelteKit
It was the framework the New York Times had used for recent data graphics such as its Covid risk maps, and Evidence started as convenience features around it.
Later: queries on page load
Static builds meant a build per change and a ceiling of about 2 million rows. Evidence Studio’s server-side engine was built to query arbitrarily large datasets with fast responses, and brought live connections, access control and row-level security with it.

Timeline

  1. 2021

    Launch HN in August: a static site generator for SQL analysts (YC S21)

  2. 2025

    Evidence Studio launches in June with server-side queries

  3. 2025

    The earlier Evidence Cloud hosting product is set to close by the end of the year

  4. 2026

    Last releases of the legacy npm packages, in February

Sources10 · facts checked 9 October 2026

Improve this page on GitHub