Step-by-step guide to migrating from Looker to Apache Superset while keeping BigQuery as your data warehouse. Cost savings, architecture, and best practices.
Looker has been the default BI platform for enterprise teams for over a decade. It's powerful, feature-rich, and deeply integrated into the modern data stack. But it's also expensive—often running $50,000 to $500,000+ annually depending on user count and deployment model. More importantly, Looker locks you into a proprietary platform. Your dashboards, data models, and configuration live inside Looker's ecosystem with limited portability.
Apache Superset changes the equation. It's open-source, runs on your infrastructure or a managed service, and costs a fraction of Looker. For teams already running BigQuery as their data warehouse, Superset offers a compelling alternative: keep your data in BigQuery, move your BI layer to an open-source platform you control, and reduce licensing costs by 60–80%.
This guide walks through the migration step-by-step—from assessment through cutover—so you can move your Looker dashboards, metrics, and workflows to Superset without losing data continuity or analytics capability.
Before you migrate, you need to understand how Looker and Superset differ architecturally. These differences shape your migration strategy.
Looker is built around a semantic layer. You define LookML models that sit between your warehouse and dashboards. These models specify dimensions, measures, filters, and relationships. When a user interacts with a dashboard, Looker translates that into SQL and sends it to BigQuery.
Superset takes a more direct approach. You connect Superset to BigQuery, write SQL queries or use the visual query builder, and create dashboards. Superset doesn't enforce a modeling layer—though you can layer one on top using tools like dbt or Cube if you want that abstraction.
This difference has implications:
Both platforms connect to BigQuery, but the setup differs slightly. With Looker, you configure a connection in the admin UI, and Looker manages the authentication and query execution. With Superset, you install the BigQuery Python driver, configure a database connection with service account credentials, and Superset handles the rest.
The good news: BigQuery connections in Superset are rock-solid. The Google BigQuery documentation for Apache Superset is comprehensive, and the community has documented adding BigQuery databases to Superset on GKE for teams running Kubernetes.
A successful migration starts with a clear inventory of what you're moving.
Export a list of all Looker assets:
You can do this manually by navigating Looker's admin panel, or use the Looker API to programmatically export metadata. The Looker API endpoint /api/4.0/dashboards returns dashboard metadata in JSON; /api/4.0/looks returns saved looks.
Since you're keeping BigQuery as your warehouse, confirm:
Migration effort depends on complexity:
Factor in testing, training, and a parallel-run period where both systems are live.
Once you've assessed what you're moving, set up your Superset environment.
You have three main choices:
For a Looker-scale migration, managed or Kubernetes-hosted Superset makes sense. You'll need HA (high availability), backup/restore, and version management.
Regardless of deployment, configuring BigQuery is straightforward:
Superset will introspect your BigQuery datasets and tables, making them available for querying. The official BigQuery documentation for Superset has detailed setup instructions, and if you're running on GKE, the GitHub discussion on adding BigQuery to Superset on GKE covers Kubernetes-specific configuration.
Superset's query cache is critical for performance. Configure it:
If you were using Looker PDTs, replicate that behavior in BigQuery using:
Now for the core migration: moving your dashboards from Looker to Superset.
Unfortunately, there's no automated Looker-to-Superset converter. You'll need to recreate dashboards manually or semi-manually. Here's the process:
This is manual work, but it's also an opportunity to simplify. Many Looker dashboards accumulate clutter over time. Use the migration as a chance to audit and rebuild only the dashboards that drive decisions.
If you have complex LookML logic—custom dimensions, measures, or table calculations—you'll need to translate that to SQL.
For example, a Looker dimension might be:
dimension: revenue_bucket {
type: tier
tiers: [0, 1000, 5000, 10000]
sql: ${TABLE}.revenue ;;
}
In Superset, you'd write this as a SQL expression:
CASE
WHEN revenue < 1000 THEN '0-1000'
WHEN revenue < 5000 THEN '1000-5000'
WHEN revenue < 10000 THEN '5000-10000'
ELSE '10000+'
END AS revenue_bucketComplex LookML—especially derived tables and filters—requires careful translation. Document your LookML logic before you start, and test each translated query in BigQuery to ensure it produces the same results.
If you want to replicate Looker's semantic layer, consider integrating dbt with Superset. dbt lets you define dimensions, measures, and relationships in YAML, which Superset can expose via its native dbt integration.
This approach:
If you were using Looker's semantic layer heavily, dbt + Superset replicates that pattern while keeping you in open-source tooling.
Looker's RBAC (role-based access control) is granular. Superset's is simpler but still functional.
Looker roles map roughly to Superset roles as follows:
| Looker Role | Superset Equivalent | Notes |
|---|---|---|
| Admin | Admin | Full system access. |
| Developer | Editor | Can create/edit dashboards and datasets. |
| Analyst | Editor | Same as Developer in Superset. |
| Viewer | Viewer | Read-only access to dashboards. |
| Explore User | Editor | Can create ad-hoc queries in SQL Lab. |
Superset doesn't have Looker's fine-grained "Can see user's dashboard" permissions. Instead, it uses dataset and dashboard-level access. You can restrict which datasets a user can query and which dashboards they can view.
If you need row-level security—e.g., sales reps only see their own region's data—Superset supports this via SQL-based RLS rules. You define a filter expression that Superset appends to every query for a given user or role.
For example:
WHERE region = '{{ current_user.region }}'This requires your BigQuery data to have a region column, and your Superset user objects to have a region attribute. It's less elegant than Looker's LookML-based RLS, but it works.
Both Looker and Superset support SAML and SSO. When migrating, configure Superset to use your existing SSO provider (Okta, Azure AD, etc.) so users log in with the same credentials.
This reduces friction during cutover and simplifies user management.
Moving from Looker to Superset is a business event, not just a technical one. Plan the cutover carefully.
Run both systems in parallel for 2–4 weeks:
This approach lets you catch discrepancies and build confidence before fully switching.
For each migrated dashboard, compare key metrics between Looker and Superset:
This validation step is tedious but essential. It's where you catch bugs before users do.
Superset's UI differs from Looker's. Users need training:
Hold a kickoff meeting, create documentation, and offer office hours for questions. The smoother the transition, the faster adoption.
One of the biggest wins of migrating to Superset is cost. Let's quantify it.
Looker: Typically $50–100 per user per month for cloud-hosted Looker, or $100K–500K+ annually for large enterprises.
Superset: Open-source (free) + infrastructure costs. If using a managed Superset service like D23, expect $500–5,000 per month depending on query volume and user count. If self-hosting, you pay for compute (Kubernetes cluster, database, etc.)—often $2K–10K per month.
Savings: For a typical mid-market company with 50–100 BI users, expect to save $200K–400K annually by switching from Looker to Superset.
Superset queries BigQuery directly, with minimal overhead. In most cases, Superset is faster than Looker because there's no semantic layer translation. Query latency is typically:
For cached queries, both systems are sub-second.
If self-hosting Superset on Kubernetes:
Total: ~$2.5K–5.5K/month vs. $50K–100K/month for Looker.
Once you've migrated the basics, Superset offers capabilities that go beyond Looker.
Superset integrates with LLMs to convert natural language to SQL. Ask "What's my revenue by region?" and Superset generates and runs the query. This is faster than Looker's explore UI for ad-hoc analysis.
Managed Superset services like D23 offer this out-of-the-box, configured for your data schema.
Superset dashboards can be embedded in your product with a single iframe or API call. If you're building a SaaS product and want to embed analytics for customers, Superset is more flexible than Looker.
D23's embedded analytics capabilities make this especially straightforward—configure once, embed across your product.
Superset's REST API lets you programmatically create dashboards, run queries, and manage users. This is useful for:
Translating LookML and recreating dashboards takes longer than expected. Solution: Audit your Looker instance upfront, prioritize dashboards by business impact, and don't try to migrate everything at once.
Superset queries BigQuery directly, so slow queries become visible. Solution: Optimize your BigQuery schema (indexes, clustering, partitioning) before migrating. Test query performance in BigQuery before building dashboards.
Without Looker's semantic layer, teams may create inconsistent metrics. Solution: Use dbt or Superset's native datasets to define canonical metrics. Document your metric definitions.
Small filter or calculation mismatches can go unnoticed until users complain. Solution: Systematically validate each migrated dashboard against Looker. Automate this with a test suite if possible.
Users familiar with Looker may struggle with Superset's different UI. Solution: Provide hands-on training, create documentation, and offer support during the transition.
If you're evaluating Superset vs. other Looker alternatives, here's how it stacks up:
Superset vs. Tableau: Tableau is more polished and has stronger data governance. But it's more expensive ($2K–10K per user annually). Superset is cheaper and more flexible for custom SQL.
Superset vs. Power BI: Power BI integrates tightly with Microsoft products (Excel, Azure, etc.). But if you're BigQuery-centric, Superset is simpler. Apache Superset is increasingly recognized as a Looker alternative for teams prioritizing cost and flexibility.
Superset vs. Metabase: Metabase is simpler and better for ad-hoc exploration. Superset is more powerful for production dashboards and custom SQL. For Looker-scale deployments, Superset is the better choice.
Superset vs. Preset: Preset is a managed Superset offering. It's convenient but more expensive than self-hosted Superset. D23 is another managed option with added features like AI-assisted queries and MCP integration.
After cutover, focus on maintaining and scaling your Superset deployment.
Set up alerts for:
If using a managed service like D23, these are typically handled for you.
Migrating from Looker to Apache Superset on BigQuery is achievable and rewarding. You'll reduce costs by 60–80%, gain flexibility, and maintain or improve performance.
The migration requires planning and effort—especially for complex Looker instances—but the payoff is substantial. You're moving from a proprietary, expensive platform to an open-source, community-driven alternative that's increasingly recognized as a Looker alternative for modern BI.
Start with a clear audit of your Looker instance, set up Superset with BigQuery, and migrate dashboards in phases. Run both systems in parallel, validate accuracy, and train users. After cutover, focus on optimization and governance.
If you want to accelerate the migration and avoid infrastructure overhead, D23 offers managed Superset with BigQuery integration, AI-powered text-to-SQL, and expert data consulting. Whether you self-host or use a managed service, Superset is a proven alternative to Looker that works at scale.
Your data stays in BigQuery. Your BI platform becomes open-source, cost-effective, and under your control. That's the Superset advantage.