Building Simple Dashboards with Free Software

Leveraging Matomo and Metabase for a Self-Hosted SEO KPI Dashboard

For the technically inclined SEO who wants full ownership of their data and a dashboard that actually answers the questions you ask—not the ones a vendor assumes you want answered—the combination of Matomo (formerly Piwik) and Metabase is a weapon of choice. Both are free, open-source, and extensible, but the real power lies in the SQL-to-viz pipeline they unlock. If you are tired of Google Looker Studio’s quota limits, opaque sampling, or the slow drift of Google Analytics 4’s event model away from traditional SEO metrics, this stack lets you reclaim both your data and your sanity.

Start with Matomo. It is a self-hosted web analytics platform that gives you raw, unsampled data on pageviews, visits, referrers, search queries, and site search—everything an SEO needs. Install it on a $5/month VPS or a Raspberry Pi in your closet. The real fun begins when you enable the Custom Reports plugin and start exporting to Matomo’s internal MySQL database. Every hit, every user action lands in tables like `matomo_log_visit`, `matomo_log_link_visit_action`, and `matomo_log_conversion`. This is your sandbox. No more fighting a vendor API for a “pages by organic sessions” report. You just write a SQL join.

Now bring in Metabase. It is a business intelligence tool that connects to Matomo’s database directly. Metabase lets you build questions with a GUI or, more importantly, with raw SQL. Install it on the same server (or a Docker container next to it) and point it at your Matomo MySQL instance. Immediately you can answer questions that GA4 would bury in complexity: “What is the average scroll depth for pages ranking in position 1-3 vs positions 4-10?” or “Which referrers generated the highest conversion rate per session in the last 30 days broken down by device type?” The SQL is straightforward once you understand the Matomo schema, and Metabase auto-generates line charts, bar charts, and pivot tables from your queries.

The beauty of this duo is that you are not limited to Matomo data. Metabase supports PostgreSQL, BigQuery, SQLite, and even CSV uploads. You can pull in your Google Search Console data (via the API into a local database), your Ahrefs or Semrush export CSVs, and your crawl logs from Screaming Frog. Suddenly your SEO dashboard is a single pane of glass showing organic traffic trends, keyword rank movements, crawl error distributions, and conversion funnel bottlenecks—all refreshed on a cron job and all yours.

For the dashboard itself, Metabase offers a “Dashboard” feature where you pin your saved questions. You can apply date range filters, add text cards with annotations, and set alerts on specific metrics (e.g., “Notify me when organic traffic drops 20% week-over-week”). Since the underlying database is yours, you can build histograms of landing page performance, cohort tables of returning visitors by source, and even predictive models using simple statistical functions in SQL (e.g., moving averages for trendlines). The lack of a drag-and-drop visualization library is actually a strength: you are forced to think structurally about your data instead of wasting hours formatting colors in a dashboard builder that changes UI every six months.

A particularly powerful use case is building a “SEO Health Index” computed from multiple signals. Write a SQL query that sums page-level metrics: is the page indexed? Does it have a meta description? What is its Core Web Vitals score (imported from CrUX data stored locally)? Multiply by a weighted importance and aggregate at the site level. Metabase renders that as a gauge or a number. Then drill down to problematic sections. This is impossible in any proprietary tool without a data warehouse and expensive connectors. Here it is just a few JOINs and a CASE statement.

The learning curve is real: you need comfort with SQL, basic Linux administration, and an understanding of the Matomo data schema. But for the audience this article targets, that is not a barrier—it is an invitation. You trade ease-of-setup for infinite flexibility. No more arguing with a product manager about why the “All Pages” report excludes certain parameters. No more encountering a sample rate message when you try to segment by landing page and device. No more worrying about data being used to train a competitor’s model.

In daily practice, this stack enables a workflow that mirrors how engineering teams monitor production systems. You set up a Matomo instance, ingest data, write SQL queries for each SEO KPI you care about, pin them to a Metabase dashboard, and share a read-only link with stakeholders. Updates are instant as new data flows in. You can even embed the dashboard in an internal wiki or a Slack channel using Metabase’s public sharing and webhook integrations.

The only upfront cost is a few hours of server setup and a cup of coffee while you reverse-engineer the Matomo tables. After that, the cycle of analysis, insight, and action becomes frictionless. And because both tools are open-source, you are not locked into a pricing tier that suddenly removes “advanced segmentation” or “on-demand reports.” Your dashboard grows with your site, your query complexity, and your obsession with granular performance data.

This is not a setup for everyone. But for the marketer who treats SEO as a data engineering problem—and who wants a dashboard that reflects their own logic, not a vendor’s black box—Matomo and Metabase form one of the most potent free combinations available. Go build it.

Image
Knowledgebase

Recent Articles

How to Uncover Quick Win Keywords Using Free SEO Tools

How to Uncover Quick Win Keywords Using Free SEO Tools

The quest for search engine visibility often begins with keyword research, but the landscape can feel overwhelmingly competitive.The strategic pursuit of “quick win” keywords offers a solution, targeting terms with a high likelihood of ranking relatively quickly to generate early momentum.

Decoding the Competition: A Strategic Guide to Uncovering Pain Points Through Keyword Analysis

Decoding the Competition: A Strategic Guide to Uncovering Pain Points Through Keyword Analysis

In the competitive arena of digital marketing, understanding your competitor’s keyword strategy is less about copying their terms and more about excavating the deeper insights they reveal.This process of reverse-engineering is a sophisticated form of market research, a methodical inquiry that moves beyond surface-level rankings to uncover the hidden pain points and unspoken needs of a shared audience.

F.A.Q.

Get answers to your SEO questions.

How Do I Vet a Broken Link Opportunity for Maximum Value?
Not all 404s are equal. First, check the page’s existing backlink profile using a free checker—if it has links, your replacement could inherit equity. Assess the surrounding context: Is the link in a relevant resource list? Use MozBar to check the domain and page authority; prioritize links from authoritative, topically-relevant sites. Finally, gauge the intent: Was the original link to a statistical roundup, a tool, or a blog post? Your replacement must match that intent, or your pitch will be instantly rejected.
What’s the Role of Social Media in Guerrilla SEO Strategy?
Social media is primarily for amplification and brand signals, not direct ranking. Use it to build an audience that can organically share your content, generating traffic and potential backlinks. Platforms like LinkedIn and Reddit can drive highly targeted referral traffic. Social profiles often rank in branded searches, reinforcing your authority. Engage with influencers and peers in your space to increase the visibility of your work. Think of social as the network that fuels the discovery of your SEO-optimized assets.
Should I remove unused CSS and JavaScript? How?
Yes, ruthlessly. Unused code is dead weight. Use Chrome DevTools’ Coverage tab to identify unused bytes. For WordPress/CMS sites, purge unused CSS from page builders or themes. For custom sites, implement a modular build process with tools like PurgeCSS. For JavaScript, perform a dependency audit and use code splitting to load only what’s needed for the current page. This reduces bundle size, parsing time, and memory usage, making your site feel snappier.
What’s the Core Technical and Strategic Workflow for Guerrilla SEO Content Production?
The core workflow is a ruthless, data-driven sprint. Technically, it starts with scraping SERP data (using tools like Screaming Frog or Python) to reverse-engineer competitor keyword clustering and content structure. Strategically, you then map these intent “blueprints” to your unique angle, leveraging underutilized assets like internal data or expert interviews. The production is atomic: rapidly assemble a comprehensive, linkable “pillar” resource, then atomize it into social snippets, Reddit answers, and schema-markup FAQs for maximum SERP real estate. It’s about engineering content systems, not just writing articles.
What’s the Guerrilla Method for Promoting Content Without a PR Budget?
Forget spray-and-pray. Practice “precision outreach.“ When you publish a skyscraper or gap piece, identify 10-20 individuals who are specifically mentioned in, linked to, or would genuinely care about your content. Craft a hyper-personalized email highlighting the relevance. Simultaneously, repurpose the core insight into a LinkedIn post, a Twitter thread, and a niche community forum answer (where allowed). The goal is concentrated, authentic engagement in micro-communities, not vanity metrics. This builds genuine relationships and earns qualified links over time.
Image