BlogBusiness Intelligence

Metabase for Self-Service Analytics: Setup, Use Cases, and Limitations

Eric Chen
Eric Chen
BI Solutions Architect
·January 5, 202811 min read

Metabase is an open-source BI tool designed for self-service analytics — non-technical users can explore data with a question-based interface without writing SQL, while technical users have a full SQL editor and data modelling layer. This guide covers Metabase architecture, the semantic layer, dashboard and question setup, embedding, and the trade-offs between Metabase and Tableau or Power BI.

What Metabase Is

Metabase is an open-source business intelligence tool designed primarily for self-service analytics — enabling non-technical users to explore data and build dashboards without writing SQL. Unlike Tableau or Power BI, which are designed for analytical power users, Metabase targets the broader organisation: business users who need answers from data but are not willing or able to learn a complex tool.

The core proposition: connect Metabase to your data warehouse, define some basic table and column descriptions, and business users can build charts and dashboards using a guided question interface. Technical users still have full SQL access when needed. The result is a single tool that serves both audiences without forcing SQL on everyone.

Architecture

**Metabase Server**: A JVM process (Java/Clojure) that handles the application layer — query generation, caching, rendering, and the API that the frontend calls. Can run on a single VM, Docker, or Kubernetes.

**Application Database**: Metabase stores its configuration — users, questions, dashboards, collections, permissions — in a relational database. H2 (embedded) for development; PostgreSQL or MySQL for production deployments. Always use an external database in production — H2 does not handle concurrent writes safely.

**Data Sources**: Metabase connects to databases via JDBC. Supported sources: PostgreSQL, MySQL, SQL Server, Redshift, BigQuery, Snowflake, Databricks, MongoDB, and many others. Each connection is configured with credentials. Metabase generates and executes queries against these sources at query time — data does not move to Metabase.

**Metabase Cloud**: Managed hosting — Metabase operates the infrastructure. Application database, backups, and upgrades managed. Appropriate for organisations that want to avoid self-hosted operations overhead.

The Question Interface

Metabase's Question builder is the primary self-service interface. Users navigate a wizard:

1. Pick a data source (table or saved question)

2. Filter rows (equals, contains, date range, relative date "last 30 days")

3. Group by dimensions (summarise by date, category, user attribute)

4. Choose a metric (count of rows, sum, average, distinct count)

5. Visualise (bar chart, line chart, table, number, map)

The Question builder generates SQL automatically. No SQL required from the user. For business users who understand "show me orders from last month grouped by region" but not how to write that query, the Question interface is genuinely accessible.

For technical users, the native query editor accepts full SQL and returns tabular results that can be visualised and saved as questions.

The Data Model: Semantic Layer

Metabase's semantic layer (called the Data Model) allows admins to annotate tables and columns for business-user consumption:

- **Table display name and description**: Rename "fact_orders" to "Orders" with a plain-English description

- **Column display name**: Rename "acq_channel_cd" to "Acquisition Channel"

- **Column type**: Flag columns as Name, Category, City, State, URL, Email, JSON — tells Metabase how to filter and display them appropriately

- **Foreign key relationships**: Tell Metabase that orders.customer_id links to customers.customer_id — enables automatic joins in the Question builder

- **Hidden columns**: Remove technical columns (surrogate keys, ETL timestamps) from the Question builder

A well-configured Data Model makes the Question builder significantly more useful — users see business terminology, Metabase can suggest relevant joins, and irrelevant columns are hidden.

Dashboards and Collections

Questions are saved and assembled into Dashboards — collections of charts with optional filter controls that apply to multiple questions simultaneously. A dashboard filter on Date Range, applied to five different questions, lets users explore a time period across all metrics simultaneously.

Collections organise questions and dashboards — analogous to folders. Access control is at the collection level: users or groups can have view or curate access to specific collections. Pinned content appears at the top of collections.

**Alerts**: Schedule email alerts when a question's result changes — new rows meet a filter condition, a metric exceeds a threshold, or a question returns rows. Useful for operational monitoring without building a separate alerting pipeline.

**Subscriptions**: Schedule dashboards as emails or Slack messages on a cron schedule. Recipients receive a rendered dashboard image without needing to log into Metabase.

Embedding

Metabase supports embedding questions and dashboards in external applications — customer portals, internal tools, product interfaces:

**Public embedding**: Share a public URL or embed via iframe without requiring Metabase login. Content is public — appropriate only for non-sensitive data.

**Signed embedding**: JWT-signed embed URLs with user-level parameters passed in the token. Embed a dashboard with customer_id locked to the logged-in customer's ID — each customer sees only their data, without a Metabase login requirement. Requires Pro or Enterprise.

**Interactive embedding**: Full Metabase interface embedded in an application, with SSO — users interact with the full Question builder and dashboards within your product. Requires Enterprise.

Metabase vs Tableau vs Power BI

**Self-service accessibility**: Metabase's Question builder is genuinely simpler for non-technical users than Tableau or Power BI. Business users can build their own charts without training. Tableau and Power BI require more technical knowledge.

**Analytical depth**: Tableau and Power BI far exceed Metabase for complex analysis — calculated fields, table calculations, parameter-driven views, sophisticated LOD expressions. Metabase's SQL editor reaches parity for technical users, but the Question builder hits ceiling quickly for complex requirements.

**Performance and scale**: Metabase pushes queries to the underlying warehouse. At scale, query performance depends entirely on the warehouse. No in-memory engine for large models. Tableau and Power BI can extract data for faster interactive performance on large datasets.

**Governance**: Metabase has collection-level permissions. Tableau Server and Tableau Cloud have row-level security, content governance, certified data sources, and detailed access control at workbook/data source level. For regulated environments, Metabase's governance is insufficient.

**Cost**: Open-source Metabase is free to self-host. Pro ($500/month) and Enterprise add SSO, embedding, and advanced permissions. Tableau and Power BI are per-user licensed at higher cost. For small teams with simple requirements, Metabase's cost profile is significantly lower.

**Best fit**: Metabase excels for small to mid-size organisations, product analytics, internal operational dashboards, and cases where you want broad business-user access without per-user licensing. Tableau and Power BI excel for analytical power users, governed enterprise environments, and complex visualisation requirements.

Our BI strategy practice advises on BI tool selection and architecture across Tableau, Power BI, Metabase, and Looker — contact us to discuss your BI tool requirements.

Get your data architecture audit in 30 minutes.

A former Microsoft data architect audits your data foundation, identifies your top priorities, and sends you a written plan. Free. No pitch.

Book a Call →