This is a live X-Ray of a demo Metabase we maintain — not your instance.
We rescan Metalens Demo periodically, so counts and findings move as the demo instance grows. Your report will have the same shape — grade, factor breakdown, duplicate groups with SQL, broken card list, ownership panel — generated from your live Metabase in under two minutes.
Run X-Ray on my Metabase →Metalens Demo — X-Ray Report
Scanned on July 15, 2026
Fair — significant issues to address
Your Metabase instance is fundamentally sound in data volume and dashboard coverage, but the C+ health score reveals systemic organization problems—specifically 7 duplicate question groups and 4 unaddressed anomalies that will compound maintenance debt. The team should immediately audit and consolidate those duplicate groups this week, then assign ownership of the 4 anomalies to prevent them from becoming silent data quality issues that undermine trust in your executive dashboards.
Score Breakdown
Archive questions not accessed in 90+ days. Start with collections nobody owns.
Consolidate duplicate queries — keep one canonical version per metric.
Add descriptions to top-used questions. Organize orphan queries into collections.
Fix or remove broken cards from active dashboards — these are what stakeholders see.
Top Priority Actions
Archive 7 exact duplicate queries
7 groups of identical queries found. Keep one from each group, archive the rest.
Removes 7 redundant questions, making your instance cleaner and less confusing for team members.
Your core data model is 5 tables
Out of 13 tables, only 5 are referenced by 3+ queries. These are your real business tables.
Focus DWH migration, documentation, and optimization on these tables first. The rest are supporting or unused.
Duplicate Groups
7 groups of structurally identical queries.
Having these duplicates creates confusion about which version is authoritative, wastes time as users query inconsistent versions, and makes maintenance harder when metrics need updating across multiple copies. The team should immediately audit which copies are actually being used, archive or delete the unused ones, and establish a naming convention with clear version control to prevent future duplicates.
- AOV check (temp)
/* temp check, delete after Q3 review */ SELECT ROUND(AVG(total_amount), 2) AS aov FROM orders WHERE status NOT IN ('cancelled','returned') - Average Order Value
SELECT round(avg(total_amount), 2) AS aov FROM orders WHERE status NOT IN ('cancelled', 'returned')
- copy of copy of sessions
-- TODO figure out which sessions card is the right one select source, count(*) as sessions from web_sessions group by 1 order by 2 desc - Sessions by Source
SELECT source, count(*) AS sessions FROM web_sessions GROUP BY 1 ORDER BY 2 DESC
- monthly rev FINAL v2
-- copy of the revenue query, do not delete!! SELECT date_trunc('month', created_at)::date AS month, sum(total_amount) AS revenue FROM orders WHERE status NOT IN ('cancelled', 'returned') GROUP BY 1 O - Monthly Revenue
SELECT date_trunc('month', created_at)::date AS month, sum(total_amount) AS revenue FROM orders WHERE status NOT IN ('cancelled', 'returned') GROUP BY 1 ORDER BY 1
- New Customers per Week
SELECT date_trunc('week', signup_date)::date AS week, count(*) AS new_customers FROM customers GROUP BY 1 ORDER BY 1 - new customers weekly (old)
-- old version, the week boundary is wrong?? SELECT date_trunc('week', signup_date)::date AS week, count(*) AS new_customers FROM customers GROUP BY 1 ORDER BY 1
- Orders by Status
SELECT status, count(*) AS orders FROM orders GROUP BY 1 ORDER BY 2 DESC - Orders by Status v2
-- v2, checking numbers for the ops sync select status, count(*) as orders from orders group by 1 order by 2 desc
- Refund Rate by Month
SELECT date_trunc('month', o.created_at)::date AS month, round(100.0 * count(r.refund_id) / count(*), 2) AS refund_pct FROM orders o LEFT JOIN refunds r ON r.order_id = o.order_id GROUP BY 1 OR - refund rate FINAL (Tom)
/* keep until finance signs off the new one */ select date_trunc('month', o.created_at)::date as month, round(100.0 * count(r.refund_id) / count(*), 2) as refund_pct from orders o left join refunds
- Top 10 Products by Revenue
SELECT p.name, sum(oi.quantity * oi.unit_price) AS revenue FROM order_items oi JOIN products p ON p.product_id = oi.product_id GROUP BY 1 ORDER BY 2 DESC LIMIT 10 - top products (Marta)
-- marta's copy for the weekly deck select p.name, sum(oi.quantity * oi.unit_price) as revenue from order_items oi join products p on p.product_id = oi.product_id group by 1 order by 2 desc limit 15
Broken & Stale Cards
First 18 of 18 flagged for cleanup.
The cleanup strategy should involve reviewing the 20 inactive questions to determine which ones are still relevant business assets versus outdated analyses, then either archive or delete those that are no longer needed. A Metabase administrator or data team lead should own this effort since they have the technical access and organizational knowledge to make informed decisions about which questions support current business processes.
Most-referenced Tables
Tables ranked by how many questions and dashboards depend on them.
This is an e-commerce company selling products across categories to customers. The data model is highly normalized with a clear transactional structure centered around the orders table, which serves as a hub connecting customers, products, and fulfillment data (payments, refunds, reviews). For a data warehouse migration, prioritize orders, order_items, customers, and products as your core fact and dimension tables, followed by web_sessions for customer behavior analysis and payments for financial reporting.
Dashboards
Health of top-viewed dashboards (broken cards, stale cards, ownership).
The Executive Overview dominates usage with 493 views and healthy status, making it your primary business intelligence tool, while Finance Monthly and Marketing Performance show moderate engagement at 219 and 162 views respectively but both carry warning flags that should be investigated. Red flags include three dashboards with warning status (Finance Monthly, Marketing Performance, and Sales Deep Dive) suggesting potential data quality or maintenance issues, plus the Old KPI Dashboard from 2024 with only 15 views indicates possible duplication or obsolescence that warrants consolidation into active dashboards. The card distribution is reasonable across all dashboards, but the warning statuses on 4 of 5 dashboards suggest systematic issues worth addressing before relying on these for critical decisions.
Ownership
Who owns what — and which owners have questions no one uses anymore.
Metalens Demo Admin is the key analytics person with the highest activity rate at 75% (6 of 8 questions active), indicating the most engaged and well-maintained content library. A new CDO should talk to Metalens Demo Admin first to understand best practices, then connect with Marta Kowalska who has the second-highest activity rate at 55% and the most total active questions (6). Tom Becker appears to be a former employee or inactive contributor with only 42% activity and 7 stale questions that should be archived or refreshed to clean up the instance.
This is what your X-Ray will look like
Connect Metabase, get a real audit in about 2 minutes. Free X-Ray scan, no card needed. 14-day money-back if you upgrade.
Run X-Ray on my Metabase