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.
| Area | Decision | Acceptance check |
|---|---|---|
| Metadata | Which production-ready application database holds Metabase configuration and saved content? | A backup is restored in isolation and a named dashboard is available. |
| Data access | Which role, schemas, and row or column restrictions apply to each connection? | A test user can answer the intended question but cannot query excluded data. |
| Publishing | Who can promote a question or dashboard to a shared collection? | A sample publication has a named definition owner and review date. |
| Performance | Which 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.
Create questions using restricted test accounts. Exercise filters, exports, query timeouts, and permissions. Ask a domain owner to review the numerical definition before a dashboard moves into the shared area.
Review unused and high-impact dashboards, connection health, metadata backups, and access changes. Put metric-breaking source changes into the change process so dashboard users are warned before a number changes meaning.
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.

