Author Image

CEO & Co-founder of Visivo

Visivo vs Metabase: Code, Review, and Pricing

Metabase is click-first BI; Visivo is BI as code. Compare the semantic layer, git review, AI, and per-user vs flat pricing, plus where each one fits better.

Visivo vs Metabase: a comparison of code-first and click-first BI, review, and pricing

Metabase and Visivo are both open source BI tools with a hosted cloud, but they start from opposite ends. Metabase is click-first: anyone can ask a question with a point-and-click query builder, and code and git come later, on paid plans. Visivo is code-first: the project is YAML in a repository from day one, and a visual builder edits that same YAML. Which one fits depends less on features than on who builds your dashboards and how much you need to review their changes.

This post compares the two honestly, including where Metabase is the better pick. Pricing was checked against each vendor's public pricing page on November 6, 2026.

Want to try Visivo while you read? Install the open source CLI with curl -fsSL https://visivo.sh | bash (or pip install visivo), or start free in Visivo Cloud with $30 of credit and no card.

The short version

  • Pick Visivo if your dashboards are built by data or engineering people who want everything in git, every change reviewed before it ships, joins declared once in a semantic layer, and tests on the numbers a chart will show.
  • Pick Metabase if most of your users are non-technical and want to answer their own questions by clicking, you need a source Visivo does not connect to (such as MongoDB, SQL Server, or Oracle), or you need embedding, row-level permissions, SSO beyond Google sign-in, or a SOC 2 report today.

Side by side

VisivoMetabase
Open source coreYes, CLI and viewer (GPL-3.0)

Yes, AGPL, with paid features under a commercial license

Pricing modelFlat per workspace, unlimited members

Base price plus a fee per user; open source is free for unlimited users

Paid plansPlatform: $500 / month (or $5,000 / year)

Starter: $100 / month with 5 users, then $6 per user. Pro: $575 / month with 10 users, then $12 per user. Enterprise from $20,000 / year

Free start

Hosted free tier, $0 forever, $30 of starting credit, no card

Free to self-host; free trial of Starter and Pro

How people build

YAML project, plus a visual builder that saves to the YAML

Point-and-click query builder or SQL editor, in the app

Git and review

On every plan: every edit is a draft, then commit; cloud branches map to git branches

Remote Sync on Pro and Enterprise: library content as YAML in git, reviewed in pull requests

Semantic layer

Metrics, dimensions, and relations (declared joins between models)

Models, metrics, segments, and measures; each metric is attached to one data source

Data sources10 source types, plus dbt™ models18 official connectors
AI

Built-in agent that writes drafts for review; MCP server in local visivo serve

Metabot on your own model key, and an MCP server, on every plan

SSO and permissions

Sign in with Google or email; Viewer, Editor, Maintainer, and Admin roles

SSO and row- and column-level permissions on Pro

EmbeddingIn development (beta)

Multi-tenant and white-label embedding on Pro

Who builds the dashboards

This is the question that should decide it.

Metabase is built so that someone who does not write SQL can still get an answer. You pick a table, add filters and a summary in the query builder, and save the result as a question. Questions go on dashboards. People who do write SQL get a SQL editor next to it. Everything lives in the Metabase app, which is why it is quick to adopt across a company.

Visivo treats analytics as a project in a repository. Sources feed models, models carry metrics and dimensions, insights turn them into charts, and charts land on dashboards. Every object is defined once and referenced by name, so a change to a model flows to every chart that depends on it. Non-engineers can still build: the visual builder lets them drag and configure the same objects in the browser, and each edit saves back to the YAML as a reviewable diff. But the project, not the app, is the source of truth.

If your bottleneck is "too many people waiting on the data team for simple numbers", Metabase is aimed squarely at that. If your bottleneck is "nobody trusts the numbers because anyone can change anything", Visivo is aimed at that.

Git and review

Metabase added git to its paid plans. Remote Sync, on Pro and Enterprise, stores content as YAML files in a git repository. The workflow in Metabase's docs is: build in a development Metabase in read-write mode, push to a branch, review the YAML in a pull request, merge, and let a production Metabase in read-only mode pull the change. Since Metabase 65 it syncs the Library (published tables, metrics, dashboards, documents, and more) and transforms. Table metadata does not sync, and the current branch is set for the whole instance, so parallel branches need parallel Metabase instances.

In Visivo, review is the normal path on every plan, including the free one. Every edit, by a person in the visual builder, an engineer in YAML, or the AI agent, lands as a draft. You see the pending changes, then commit or discard them. In Visivo Cloud, a branch maps to a git branch in your linked repository, so commits push to that branch and merging the default branch deploys it. Because the project is plain YAML, the usual git tools (diffs, pull requests, CI) work on all of it.

Visivo also ships a test step. visivo test runs assertions against the values your insights compute, and alerts can post to Slack or email when a test fails. Wire it into CI and a pull request that breaks a number fails before anyone sees the dashboard.

The semantic layer

Metabase has real semantic-layer pieces: models that curate a table for others to query, segments, measures, and metrics. A Metabase metric is built in an editor much like the query builder, and it is attached to one data source. Metabase's docs advise against joins in metric definitions and suggest building a transform that joins the tables first, then defining the metric on the result.

Visivo's semantic layer has three parts. Metrics are aggregate definitions. Dimensions are row-level fields. Relations declare how models join. Declare a relation once, and an insight can put a metric from one model against a dimension from another without anyone writing that join again:

sources:
  - name: warehouse
    type: duckdb
    database: local.duckdb

models:
  - name: orders
    sql: SELECT * FROM orders
    source: ${ref(warehouse)}
    metrics:
      - name: revenue
        expression: SUM(amount)
    dimensions:
      - name: order_month
        expression: DATE_TRUNC('month', ordered_at)
  - name: customers
    sql: SELECT * FROM customers
    source: ${ref(warehouse)}

relations:
  - name: orders_to_customers
    join_type: left
    condition: ${ref(orders).customer_id} = ${ref(customers).id}

insights:
  - name: revenue-by-segment
    props:
      type: bar
      x: ?{ ${ref(customers).segment} }
      y: ?{ ${ref(orders).revenue} }

Metrics can also live at the project level and combine metrics from several models. The Metric reference covers the syntax, and relations as a data model explains the reasoning.

AI: both have it

Metabase's AI is broad. Metabot answers questions in plain language, and Metabase's pricing page lists AI on your preferred model and an MCP server on every plan, including open source. Most teams bring their own AI provider key; Metabase also sells its own AI service at $3.75 per million tokens.

Visivo's agent works inside the project. It reads existing objects, validates a proposed change against the schema, and writes it as a draft that a person reviews and commits. It cannot commit, deploy, or delete on its own. Local visivo serve exposes an MCP server at /api/mcp/, so Claude Code or another MCP client can use the same project tools. Locally you can bring your own model key; in Visivo Cloud, agent conversations draw on credit.

The difference is in what the AI changes. Metabase's AI helps people ask questions. Visivo's agent helps people change the project, and puts those changes through the same review as everyone else's.

Price: per user vs one flat number

Metabase open source is free for unlimited users if you host it yourself, and that is a genuinely good deal. Visivo's CLI is free and open source too, and Visivo Cloud has a free hosted tier: $0 forever, $30 of credit to begin, no card.

For paid hosting, the models differ. Metabase Starter is $100 a month with 5 users included, then $6 per user. Pro is $575 a month with 10 users included, then $12 per user, and it is the plan with SSO, row- and column-level permissions, embedding, and Remote Sync. Metabase counts everyone who signs in as a user, including the users of your embeds. Yearly billing saves 10%.

Visivo Platform is $500 a month for the workspace, or $5,000 a year billed annually, however many people you invite. On Visivo, the AI agent and builds draw on a credit balance that Platform discounts by 20%. Reading dashboards, exploring, and inviting people cost nothing.

Plan fees alone, billed monthly, before usage on either side:

PeopleMetabase StarterMetabase ProVisivo Platform
5$100$575$500
10$130$575$500
25$220$755$500
50$370$1,055$500
100$670$1,655$500
250$1,570$3,455$500

The honest reading: Metabase Starter costs less than Visivo Platform up to 71 people. A team of 25 pays $220 a month. If Starter has what you need, that is the cheaper hosted option for most small and mid-size teams.

The comparison changes once you need Pro features. Pro starts above Platform's $500 and adds $12 for each person past ten. And the git workflow that Visivo includes on every plan is a Pro feature in Metabase. Past about 70 people, every paid Metabase plan costs more than Visivo Platform, and the gap grows with each person you add. A flat price also removes the quiet cost of per-user pricing: deciding who is worth a login. See the Visivo pricing page for every tier.

Who should pick Metabase anyway

Be honest about fit. Metabase is the better choice if:

  • Most of your users are non-technical and need to answer their own questions by clicking, without anyone writing code first.
  • You want free BI for a whole company and can host it yourself. Metabase open source has no user limit.
  • You need a source Visivo does not support. Metabase's official connectors include MongoDB, SQL Server, Oracle, Databricks, and Athena.
  • You need scheduled email or Slack subscriptions to dashboards. Visivo does not schedule deliveries.
  • You need embedding, row- and column-level permissions, or SSO beyond Google sign-in today. Metabase sells them on Pro. Visivo's embedding is in beta, and it signs in with Google or email.
  • You need a SOC 2 report. Metabase states SOC 2 Type II and SOC 1 certification. Visivo is not yet SOC 2 certified.

Who should pick Visivo

Visivo is the better choice if:

  • You want BI as code from the first day, with sources, models, metrics, charts, and dashboards in one YAML project in git.
  • You want every change reviewed, including a person's drag-and-drop edit and the AI agent's edits, on every plan and not only on a premium tier.
  • You want joins declared once as relations in the semantic layer, instead of pre-joined tables for each metric.
  • You want tests on the numbers. visivo test asserts on the values a chart will show, and alerts tell Slack or email when one fails.
  • You share dashboards widely. Past about 70 people, a flat $500 a month with unlimited members beats per-user pricing.
  • You build on dbt™. Visivo pulls in your dbt™ models and connects to ten source types, including Snowflake, BigQuery, Postgres, Redshift, ClickHouse, and DuckDB. See sources and dbt™.

Try Visivo

Install the CLI and build your first dashboard locally:

curl -fsSL https://visivo.sh | bash
visivo init
visivo serve

Or start free in Visivo Cloud: no card, $30 of credit to begin, and Platform at $500 a month when your team is ready. The pricing page has every tier, and the product overview walks through each capability.

Install command copied