Embedding introduction
You can embed Metabase tables, charts, and dashboards—even Metabase’s query builder—in your website or application.
Here are the different ways you can embed Metabase.
Embedding SDK with React (BETA)
With the Embedding SDK, you can embed individual Metabase components with React (like standalone charts, dashboards, the query builder, and more). You can manage access and interactivity per component, and you have advanced customization for seamless styling.
When to use the Embedded analytics SDK: you want the most control over how you embed Metabase in your React app.
Interactive embedding
Interactive embedding is the only kind of embedding that integrates with SSO and data permissions to enable true self-service access to the underlying data.
When to use interactive embedding: you want to offer multi-tenant, self-service analytics. With interactive embedding, people can create their own questions, dashboards, models, and more, all in their own data sandbox.
Static embedding
Also known as signed embedding, static embedding is a secure way to embed charts and dashboards.
When to use static embedding: you don’t want to give people ad hoc query access to their data for whatever reason, or you want to present data that applies to all of your tenants at once. For example, say you want to showcase some benchmarking stats: if you just want to make those stats available exclusively to your customers, you could use a signed embed.
Public links and embeds
If you’d like to share your data with the good people of the internet, admins can create a public link or embed a question or dashboard directly in your website.
When to use public links and embeds: public links and embeds are good for one-off charts and dashboards. Admins can use them when you just need to show someone a chart or dashboard without giving people access to your Metabase. And you don’t care who sees the data; you want to make those stats available to everyone.
Comparison of embedding types
Action | Embedding SDK | Interactive | Static | Public |
---|---|---|---|---|
Display charts and dashboards | ✅ | ✅ | ✅ | ✅ |
Display interactive filter widgets | ✅ | ✅ | ✅ | ✅ |
Export results* | ✅ | ✅ | ✅ | ✅ |
Restrict data with locked filters | ❌ | ❌ | ✅ | ❌ |
Restrict data with sandboxes | ✅ | ✅ | ❌ | ❌ |
Use the drill-through menu | ✅ | ✅ | ❌ | ❌ |
Self-serve via query builder | ✅ | ✅ | ❌ | ❌ |
View usage of embeds with usage analytics | ✅ | ✅ | ❌ | ❌ |
Actions on dashboards | ✅ | ✅ | ❌ | ❌ |
Embed individual Metabase components | ✅ | ❌ | ❌ | ❌ |
Manage access and interactivity per component | ✅ | ❌ | ❌ | ❌ |
* Each embedding type allows data downloads by default, but only Pro and Enterprise plans can disable data downloads.
Switching from static to interactive embedding
Interactive embedding requires authentication via single sign-on (SSO), so you’ll need to set that up both in your Metabase and in your application’s server. Check out our Interactive embedding quick start.
Further reading
- Strategies for delivering customer-facing analytics.
- Publishing data visualizations to the web.
- Multi-tenant self-service analytics.
- Customizing Metabase’s appearance.
Read docs for other versions of Metabase.