How to build Wix dashboards in Metabase
Wix is a hosted website builder with built-in commerce, bookings, and site analytics for millions of small-business sites. Metabase is where you turn that site data into shared, trustworthy dashboards. This guide covers two complementary paths: a lightweight MCP + CLI route that pulls live data with the Wix MCP server and loads a CSV into Metabase with the Metabase CLI, and a durable pipeline route that syncs Wix stats into a database so you can build dashboards anyone can read.
How do you connect Wix to Metabase?
Most teams combine both routes: use MCP and CLI uploads for a fast first pass, then move recurring site reporting to a warehouse-backed model.
Live data in, quick analysis out
Pair the Wix MCP server with the Metabase CLI. Use MCP for live lookups, write a scoped result to CSV, then load it into Metabase as a ready-to-query table and model.
- Quick lookups such as "show me sessions and unique visitors trend"
- Loading a Wix export into Metabase in seconds
- Spot-checks and one-off analyses without a warehouse
- Great for exploration, not governed recurring reporting
- Use read-only or least-privilege credentials — CMS MCP servers often include write tools
- CSV uploads are snapshots — refresh or move to a durable route for history
Durable dashboards with history
Sync Wix stats and entities into a database or warehouse with a connector, script, or API, then point Metabase at it.
- Wix reporting that content and commerce teams depend on
- Joining Wix data with analytics, search, and revenue data
- Long-run trends for sessions and unique visitors trend and store revenue, orders, and aov
- You own the refresh schedule and the rollup grain
- Platform APIs cap what's exposed — and sometimes how much history
- Hosted-plan rate limits shape how often you can sync
What can you analyze from Wix data in Metabase?
- Sessions and unique visitors trend — built from daily site analytics and the related eCommerce orders, products, contacts and members data your connection exposes.
- Store revenue, orders, and AOV — built from daily site analytics and the related eCommerce orders, products, contacts and members data your connection exposes.
- Traffic vs. sales conversion by day — built from daily site analytics and the related eCommerce orders, products, contacts and members data your connection exposes.
- Product performance from order lines — built from daily site analytics and the related eCommerce orders, products, contacts and members data your connection exposes.
- Bookings and lead-form volume — built from daily site analytics and the related eCommerce orders, products, contacts and members data your connection exposes.
Which Wix dashboards should you build in Metabase?
Traffic overview
Sessions and visitors, before the window closes.
- Sessions and unique visitors by day (line)
- Week-over-week session change (number)
- Sessions retained past the 62-day window (line)
- Traffic by day of week (bar)
Store performance
What the site sells, not just what it shows.
- Orders and revenue by week (combo)
- Average order value trend (line)
- Payment and fulfillment status mix (bar)
- Refund and cancellation rate (line)
Product performance
Which products earn the revenue.
- Top products by revenue (table)
- Units sold per product (bar)
- Average units per order (number)
- Products never ordered (table)
Traffic to sales
Whether visits turn into orders.
- Session-to-order conversion by day (line)
- Revenue per session (line)
- Orders vs. sessions (combo)
- Month-over-month growth summary (table)
How do you use the Wix MCP server with the Metabase CLI?
Pair the Wix MCP server with the Metabase CLI for fast, hands-on analysis. MCP is useful for scoped lookups and summarized exports; the Metabase CLI's upload command loads CSV data into Metabase and creates a ready-to-query table and model.
Example workflow
- Ask the MCP server for daily site analytics for the trailing 60 days, before the platform's retention window drops them.
- Export the result as CSV, keeping stable IDs, statuses, and dates as columns.
- Run
mb upload csvto load it into Metabase as a table and model, then build questions and dashboards on top.
Be honest about the limits
- MCP lookups are excellent for exploration, not scheduled reporting.
- A CSV upload is a snapshot; refresh it with
mb upload replaceor move to a durable route for real history. - The Analytics Data API only stores 62 days — a scheduled sync is the only way to build history Wix won't keep for you. Order data has no such cap.
mb upload csvneeds an uploads database configured under Admin → Settings → Uploads.
How do you set up Wix MCP and the Metabase CLI?
Wix MCP serverofficial
- Transport
- Hosted remote MCP via Streamable HTTP
- Auth
- Browser sign-in to your Wix account, or an API key for automation
- Best for
- Live scoped lookup and export
Metabase CLIofficial
- Install
npm install -g @metabase/cli- Auth
mb auth login- Load data
mb upload csv --file data.csv- Requires
- An uploads database (Admin → Settings → Uploads)
{
"mcpServers": {
"wix": {
"url": "https://mcp.wix.com/mcp"
}
}
}Clients without remote-MCP support can run npx @wix/mcp-remote as a bridge. The server can call Wix site APIs — including Analytics Data and eCommerce Orders — under your account's permissions.
# Install the Metabase CLI
npm install -g @metabase/cli
# Log in (opens your browser; requires Metabase v62+)
mb auth login --url https://your-metabase.example.com
# Load a daily-site-analytics export — creates a table AND a model
mb upload csv --file wix-daily-site-analytics.csv --collection root
# Refresh that same table later from a new export
mb upload replace <table-id> --file wix-daily-site-analytics.csvCan you generate a Wix dashboard with AI?
Yes. Use the prompt below with any assistant that can run the Wix MCP server and the Metabase CLI. It works end to end: if Wix tables already exist in Metabase it analyzes those; otherwise it pulls scoped, summarized data over MCP, loads it with mb upload csv, then builds the dashboard and caveats any metric that needs missing history.
Create a polished Metabase dashboard for Wix website analytics.
Work end to end: get the data into Metabase if it isn't there yet, then build.
Goal: Help site and content owners understand site traffic, store revenue, product performance, and the conversion from sessions to orders from Wix data.
Step 1 — Find or load the data:
- First, check what already exists in Metabase (search for wix tables and
models). If durable Wix data is already present — synced from a warehouse or uploaded earlier — use it and skip to Step 2.
- If nothing is there, pull a scoped, summarized export with the Wix MCP server:
daily site analytics, plus eCommerce orders, products, contacts and members.
Write each result to a CSV, then load it with the Metabase CLI — run
"mb upload csv --file <export>.csv" so each upload creates a table and a
ready-to-query model. Use "mb upload replace <table-id> --file <export>.csv"
to refresh an existing table instead of creating duplicates.
Step 2 — Inspect before querying:
Do not assume exact table or column names. Inspect available content types,
statuses, dates, and whether daily history exists before creating trend cards.
Important:
- Build on whatever data is present; don't claim Metabase connects natively to
the Wix API — it reads a database or CLI-uploaded tables.
- Exclude revisions, autosaves, and test entries from headline content counts.
- Only compute rates (conversion, open rate, paid share) when both numerator
and denominator exist in the data.
- A single CSV is a point-in-time snapshot: only build trend cards if there is
a usable date column or multiple periods have been uploaded.
Dashboard title: Wix Website Overview
Sections:
1. Executive summary: Sessions last 30 days; Orders; Revenue; AOV;
Session-to-order conversion rate.
2. Traffic: Sessions and unique visitors by day (remember the 62-day window).
3. Sales: Orders, revenue, and AOV by week; payment and fulfillment status mix.
4. Products: Top products by revenue and units from order line items.
5. Conversion: Session-to-order rate and revenue per session over time.
Filters: Date range, Content type/Collection, Status, Author/Editor.
Output: Build the dashboard if you have permission; otherwise provide the exact
questions, SQL, model definitions, and layout. Include caveats for any metric
that cannot be calculated from the available data.How do you sync Wix data into a database or warehouse?
For dashboards that need history and reliability, land Wix stats and entities in a database first, then connect Metabase to that database.
Connector options
- Managed ETL — use a connector when one covers the objects you need.
- Custom pipeline — use the Wix Analytics Data & eCommerce APIs for control over grain, fields, and refresh cadence.
- MCP + CSV — use this for quick exploration and one-off slices.
No managed connector exists — and the Analytics Data API only stores 62 days of history, which is the whole argument for a scheduled sync: a small script landing daily sessions and orders in your warehouse turns a 62-day window into permanent history.
Notes
- Land raw entity tables first, then build clean Metabase models on top.
- Normalize site, date, sessions or views, orders, and revenue fields.
- Keep platform stats (views, sessions) separate from measured analytics tools' numbers — definitions differ, and gaps are normal.
How should you model Wix data in Metabase?
Core tables
| Table | Grain | Key columns |
|---|---|---|
wix_analytics_daily | one row per site per day | site_id, stat_date, sessions, unique_visitors, orders, sales_total |
wix_orders | one row per eCommerce order | order_id, created_at, currency, subtotal, total, payment_status, fulfillment_status, buyer_email |
wix_order_lines | one row per line item | order_id, product_id, product_name, quantity, price, total |
Modeling advice
- Build a clean
site_traffic_dailymodel with consistent columns, so dashboards survive schema changes and plugin swaps. - Filter out revisions, autosaves, drafts-of-drafts, and internal test entries once, in the model — not in every question.
- Normalize URLs (lowercase, no protocol, no trailing slash) so CMS content joins cleanly to analytics and Search Console data.
- Store dates in UTC and convert at display time; CMS installs often run in site-local timezones.
Which Wix metrics should you track in Metabase?
| Metric | Definition | Notes |
|---|---|---|
| Conversion rate | Orders divided by sessions per period. | Sync both sides before the 62-day window drops them. |
| Average order value | Revenue divided by orders from Wix order data. | Track alongside order volume, not instead of it. |
| Repeat purchase rate | Customers with 2+ orders divided by all customers. | Needs a stable buyer identifier across orders. |
| Organic clicks & impressions | Measured search performance from Search Console. | Wix analytics counts sessions, not search clicks. |
What SQL powers Wix dashboards in Metabase?
These assume Wix data synced into a warehouse (PostgreSQL dialect). Adjust table and column names to match your pipeline.
The traffic headline from synced analytics rows.
SELECT
stat_date,
sessions,
unique_visitors,
ROUND(1.0 * sessions / NULLIF(unique_visitors, 0), 2) AS sessions_per_visitor
FROM wix_analytics_daily
WHERE stat_date >= CURRENT_DATE - INTERVAL '62 days'
ORDER BY 1;Store performance from the eCommerce Orders API.
SELECT
date_trunc('week', created_at) AS week,
COUNT(*) AS orders,
ROUND(SUM(total), 2) AS revenue,
ROUND(SUM(total) / NULLIF(COUNT(*), 0), 2) AS avg_order_value
FROM wix_orders
WHERE payment_status = 'PAID'
GROUP BY 1
ORDER BY 1;Line items rolled up per product.
SELECT
l.product_name,
SUM(l.quantity) AS units_sold,
ROUND(SUM(l.total), 2) AS revenue
FROM wix_order_lines l
JOIN wix_orders o ON o.order_id = l.order_id
WHERE o.payment_status = 'PAID'
AND o.created_at >= CURRENT_DATE - INTERVAL '90 days'
GROUP BY 1
ORDER BY revenue DESC
LIMIT 25;