Metabase

Deploy Metabase for governed self-service analytics, saved questions, and dashboards connected to your organization’s databases.

On this page

Fit Metabase to the analytics job

Metabase gives people a browser workspace for questions, SQL queries, saved results, and dashboards. It suits a team that wants analysts to publish trusted views while business users answer routine questions without direct database tooling. The useful part is a shared vocabulary and a clear boundary around data ready for use. A polished dashboard cannot repair an unclear metric or a slow underlying query.

Decide who the first audience is. Analysts may need SQL and modelled datasets; operational managers may need a small set of reviewed dashboards; support teams may need tightly filtered records. Those are different data-model and permission problems. If every group lands in one broad collection with a powerful credential, the deployment becomes difficult to review and easy to misuse.

Metabase stores its settings, users, permissions, saved questions, dashboards, and related metadata in an application database. That database differs from the databases it reads for analysis. Treat both as production dependencies. Losing the metadata store can mean losing the work that made reporting understandable, even if the source data is still intact.

Set boundaries around data connections

List every database connection before deployment. For each, name the owner, host or network path, database role, schemas or tables allowed, expected query audience, and whether it points at a reporting replica or an operational system. Give Metabase credentials the least access that supports intended questions. A shared administrator credential turns an analytics application into an uncontrolled route to production data.

Where reporting queries could affect live workloads, use a suitable replica, warehouse, or purpose-built reporting store. Test expensive likely dashboard filters and exports. Check connection limits and timeouts with the database team. A dashboard that runs quickly for one user can cause harm when a whole team opens it at the start of a working day.

Data definitions should travel with the connection. Give datasets human names, document joins and refresh expectations, and identify who can approve a change. An illustrative metric called active customer needs an agreed time window, exclusion rules, and source. Without them, two saved questions can return different totals while both look convincing.

Identity, permissions, and collections

Map authentication to the way people already join and leave the organisation. Use the current Metabase documentation to select the right integration rather than inventing a local account process. Retain a controlled administrator recovery route, protect it carefully, and test offboarding before someone leaves with broad access.

Permissions have layers. A person may see a collection, run a saved question, query a database, or access a row and column through a chosen data model. Review them together. Sensitive-data policy often depends on the last layer. Hiding a dashboard folder does not make an unrestricted database query safe.

Collections need an editorial owner. Separate working drafts from reviewed shared material, keep obsolete dashboards out of default navigation, and set review dates for high-impact questions. This avoids a familiar failure: a broken or superseded dashboard stays bookmarked and becomes the unofficial answer because nobody knows who owns it.

Operate the application and metadata store

Production operation includes application configuration, the application database, connection secrets, mail where used, logs, backups, and version changes. Keep configuration in a controlled deployment method and passwords outside screenshots and ad hoc shell history. Monitor availability from a user perspective as well as process health: a running web process is not useful if the metadata store or primary data connection is unavailable.

Back up the Metabase application database on a schedule that matches the value of saved work. Restore it into an isolated environment and confirm that users, collections, permissions, and a known dashboard return. Document what is outside that restore, such as source-system data or a separately managed identity provider. Recovery questions are much easier when those lines are clear.

Read release-specific upgrade guidance before changing versions. Capture a backup, identify database migrations, test representative dashboards and authentication, and arrange a rollback decision. If the application serves operational reporting, tell dashboard owners about maintenance windows. Treat a major metric-model change with the care given to an application interface change.

Working decisions for a production instance

Close these items with evidence from your own data systems.

AreaDecisionAcceptance check
MetadataWhich production-ready application database holds Metabase configuration and saved content?A backup is restored in isolation and a named dashboard is available.
Data accessWhich role, schemas, and row or column restrictions apply to each connection?A test user can answer the intended question but cannot query excluded data.
PublishingWho can promote a question or dashboard to a shared collection?A sample publication has a named definition owner and review date.
PerformanceWhich data source handles common dashboard load?Representative concurrent filters finish within the agreed operating expectation.

Questions to settle with data owners

Can Metabase connect directly to the production database?

It can be technically possible, but that does not make it right. Start with workload, query risk, network boundary, and the database team's policy. A read-only role on a reporting target is often easier to govern than broad access to a transactional system.

Who owns a dashboard after its author changes teams?

Assign ownership to a team or role as well as a named editor. Keep metric definition, source dataset, access group, and review date near the dashboard. During offboarding, transfer or retire material instead of leaving it under an inactive account.

What should be tested after an upgrade?

Test sign-in, a restricted user view, a SQL question, a visual question, a scheduled or shared item if used, and access to each important data source. Record version, migration result, backup point, and the decision to proceed.

Build the reporting layer in stages

Inventory source systems and choose a narrow first reporting domain. Define approved datasets, metric terms, source owner, connection method, and the group that will see the resulting collection.

Handover evidence

Keep these records with the platform rather than in one administrator's notes.

Connection register

Each connection records its owner, credential boundary, approved schemas, network path, and whether it can reach a production workload.

Permission test

A restricted account has verified collection visibility and the data it can and cannot retrieve.

Metadata recovery

A dated test shows how to restore the application database and identifies dependencies outside the backup.

Sources and further reading

Talk to our team.

Tell us what you're working on, whether it's a deployment, an audit, a security test or a cyber range. You'll speak with an engineer who can help you scope it.

  • 30-minute call: free, with no obligation.
  • NDA on request: we can sign before you share details.
  • Clear next steps: a scope and plan after the call.