How do you analyze website and CMS data in Metabase?
Your website platform holds the record of what you publish, who visits, what
the site sells, and who subscribes. In Metabase, that data arrives two ways:
self-hosted CMSs — WordPress, Strapi, Ghost — expose their databases directly, the shortest path in analytics; hosted builders — WordPress.com, Wix, Webflow — sync stats, orders, and content through their APIs. Either way, the payoff
is the same: content, traffic, commerce, and membership data joined to search
and revenue data the platform UIs can never see.
TL;DR — Self-hosted CMS? Point Metabase at the database (read-only,
replica preferred) and skip ETL entirely. Hosted platform? Schedule API syncs
early — retention windows are short (Wix keeps 62 days), and the warehouse only
keeps what you've stored.
Which tools does this cover?
WordPress —
posts and publishing activity,
comments, authors, categories and tags
WordPress.com —
daily traffic stats,
posts and pages, top posts by views, referrers
Wix —
daily site analytics,
eCommerce orders, products, contacts and members
Webflow —
CMS items and form submissions,
collections, e-commerce orders, site publishes
Ghost —
members and subscriptions,
paid tiers, newsletter sends and engagement, posts
Strapi —
content entries by type,
draft and published states, locales, admin users and roles
The two connection stories
Self-hosted CMS
Hosted platform
Examples
WordPress, Strapi, self-hosted Ghost
WordPress.com, Wix, Webflow
Connection
Direct database (MySQL/Postgres), zero ETL
API sync into your own database
History
Everything, from day one
What you've synced — start early
Traffic data
Pair with GA4 / Plausible / Search Console
Platform stats APIs (retention-capped)
Best first move
Read-only Metabase connection to a replica
Scheduled daily stats + orders sync
What is the shared website data model?
Concept
Common terms
Used for
Content item
Post, page, CMS item, entry
Inventory, velocity, freshness
Traffic stat
Views, visitors, sessions per day
Trends past retention windows
Engagement
Comments, likes, form submissions
Response to content
Order
Order, line item, total, status
Commerce revenue and AOV
Member
Subscriber, tier, MRR
Audience and subscription growth
URL
Normalized page URL
The join key to search and analytics data
What can you analyze across these tools?
Publishing operations — velocity by author and type, draft
backlog, time-to-publish, stale-content audits
Content performance — traffic, organic clicks, and engagement per piece, joined on URL
Commerce — orders, revenue, and AOV from WooCommerce, Wix, and Webflow order data
Membership — subscriber growth, MRR, churn, and newsletter engagement for
Ghost-style publications
Lead capture — form submissions and conversion rates by page and campaign
Which dashboards should you build?
Content performance — publishing
cadence, traffic per post, and engagement joined on URL
E-commerce sales — orders, revenue,
and AOV from site commerce data
Lead funnel — form submissions through
to qualified leads
Common mistakes
Counting every database row as content.→
CMS tables store revisions, autosaves, and system entries. Filter to
published, real content types once, in a model — not in every question.
Querying the production database during peak traffic.→
Analytics queries compete with the site. Use a read replica and a read-only
user; never grant Metabase write access to a CMS database.
Trusting hosted platforms to keep your history.→
Retention windows are short and non-negotiable. Start scheduled syncs when
the site launches, not when someone asks for a year-over-year chart.
Skipping URL normalization.→
Content joins to search and analytics data on URL. Normalize once
(lowercase, no protocol, no trailing slash) or every join silently drops
rows.
Comparing platform view counts to GA4 sessions.→
Different definitions, consent handling, and bot filtering. Pick one source
per card and label it; expect consistent gaps, not reconciliation.
Everything the platform records: content inventory and publishing velocity, traffic stats where the platform exposes them, form submissions, e-commerce orders, and member or subscriber growth. The pattern differs by platform type — self-hosted CMSs like WordPress and Strapi offer a direct database connection, while hosted builders like Wix and WordPress.com expose stats and orders through APIs. See the website analytics overview for the full build.
Does Metabase connect natively to WordPress or Wix?
Metabase reads SQL databases — which is exactly why self-hosted WordPress is the standout: point Metabase at the site's MySQL database and wp_posts, comments, users, and WooCommerce order tables are queryable with zero ETL. Hosted platforms (Wix, WordPress.com, Webflow) don't expose their databases, so their data syncs through APIs into your own database first — or arrives as CSVs through each tool's MCP server and the Metabase CLI.
Why sync website stats into a warehouse at all?
Retention and joins. Hosted platforms cap stats history — Wix stores 62 days of analytics — and no platform joins its traffic to your CRM, ad spend, or revenue data. A scheduled sync keeps every day permanently and puts site data next to everything else you report on. Self-hosted databases keep full history already; there the warehouse question is about joining with Search Console and GA4 data.
How does website analytics differ from marketing analytics?
By starting point. Marketing analytics starts from acquisition — ad spend, campaigns, attribution. Website analytics starts from the site itself: what content exists, how it performs, what the site sells, and who subscribes. They meet at traffic and conversion, and the same warehouse serves both — but a content team's dashboard (publishing velocity, content freshness, member growth) answers different questions than a demand-gen team's.
Can I analyze my site's store in Metabase?
Yes — commerce objects are among the most reliable data on every platform here. WordPress with WooCommerce exposes order tables directly in MySQL; Wix and Webflow serve orders through APIs. Model them exactly like Shopify data — orders, line items, customers — and the e-commerce sales dashboard pattern applies unchanged.
Which tools does the websites & CMS category cover?
Six platforms in two groups. Self-hosted, with direct database access: WordPress (MySQL), Strapi (Postgres/MySQL), and self-hosted Ghost (MySQL 8). Hosted, connected via APIs: WordPress.com (real traffic time-series through its Stats API), Wix (analytics and commerce), and Webflow (CMS items, forms, orders, and the Analyze API beta).