Case Study — Proprietary SaaS Platform

DM3: The Monitoring Platform Behind Every Successful Brandsplash Client

Overview

Key Facts

Most digital agencies rely on third-party tools to monitor client websites. We built our own. DM3 is a multi-tenant monitoring platform that tracks website performance, SEO, advertising, security, uptime, and domain health — all in a single dashboard. Every Brandsplash client gets their own login. It’s live, it’s in production, and it’s what makes our retainers worth paying for.

The Problem with How Agencies Report to Clients

Here’s what typically happens when a business hires a digital marketing agency. The agency builds a website, sets up some SEO, and maybe runs a few ads. Once a month — if the client is lucky — they receive a PDF report cobbled together from half a dozen different tools. Google Analytics says one thing. The SEO tool says another. The ad platform has its own dashboard. Uptime? Nobody’s checking. SSL certificate expiry? Not until it breaks. Email security? Never mentioned.

The client has no idea what’s actually happening with their digital presence. They’re paying a monthly retainer and trusting that someone, somewhere, is keeping an eye on things. Most of the time, the agency is scrambling to pull data together the day before the report is due.

We lived this problem ourselves. As Brandsplash grew its client base, we found ourselves logging into Google Analytics for one client, then Search Console for another, then checking PageSpeed scores manually, then remembering to check SSL certificates, then trying to pull ad spend data from two different platforms. For every client. Every month. It was slow, error-prone, and impossible to scale.

The tools available to solve this — AgencyAnalytics, SEMrush, Whatagraph — charge R10,000 to R50,000 per month for the coverage we needed. For a growing agency, that’s a significant overhead that either eats into margins or gets passed on to clients.

So we built our own.

What We Built

DM3 — Digital Marketing Monitor and Management — is a multi-tenant web application that aggregates data from over ten external APIs into a single dashboard for every client website we manage. It’s not a wrapper around someone else’s tool. It’s a complete platform we designed, built, and deployed ourselves in Laravel.

Every Brandsplash client gets their own login to DM3. When they log in, they see a four-tab dashboard showing everything about their digital presence: website performance, digital marketing metrics, domain and security health, and a cost summary of what they’re spending and what they’re getting. The data is live, it’s updated automatically, and it’s always there — not once a month in a PDF, but any time they want to check.

For us internally, DM3 is the operational backbone of the agency. We monitor all client websites from a single admin view. Uptime checks run every five minutes. PageSpeed scores refresh weekly. DMARC reports are parsed daily. When something goes wrong — an SSL certificate approaching expiry, a sudden drop in uptime, a spike in ad spend — we know about it before the client does.

DM3 is live at dm3.brandsplash.co.za and has been in production since February 2024.

How It Works - The Four-Tab Dashboard

Tab 1: Website Performance
The first tab gives an instant health check of the client’s website. PageSpeed and Lighthouse scores are displayed as gauges — Performance, SEO, Accessibility, and Best Practices, each scored out of 100. Core Web Vitals (LCP, FCP, CLS, INP) are shown alongside, so clients can see exactly how their site performs against Google’s ranking criteria. A Lighthouse score trend chart shows the last 12 scores over time, making it easy to see whether performance is improving or declining. Google Analytics data shows current month visitors with a traffic trend comparison against the same period last month. The website’s platform is auto-detected — for WordPress sites, this includes the WordPress version, post count, and page count. A refresh button triggers a live PageSpeed API call, so clients can check their scores on demand rather than waiting for the next scheduled update.
The second tab brings all marketing data into one view. Google Search Console shows clicks, impressions, click-through rate, and average position — pulled directly from the Google API. Keyword rankings are tracked via SerpRobot integration, showing where the client’s site ranks for their target keywords over time. Google Ads campaign data shows performance metrics pulled through GA4. Facebook Ads campaign data comes from the Facebook Marketing API. And Google Business Profile data — star rating, review count, and recent reviews — is pulled from the Google Places API. A client who’s running ads on Google and Facebook while also tracking their SEO can see everything in a single tab instead of logging into three separate platforms.
The third tab covers the things most agencies never mention — until something breaks. SSL certificate monitoring shows the issuer, validity dates, days remaining, and current status (valid, expiring, or expired). DMARC and SPF email security records are checked, with a clear “You are protected” status when both are properly configured. DMARC aggregate reports are parsed from a dedicated IMAP mailbox, showing pass rates, message counts, and top sending sources — giving clients visibility into whether anyone is spoofing their domain. WHOIS information shows the domain registrar, creation and expiry dates, and nameservers. Uptime monitoring checks the site every five minutes and logs any downtime incidents, displaying the current status, uptime percentage over a 30-day window, and a history of any outages. If cPanel credentials are configured, the tab also shows email account information.
The fourth tab shows clients exactly what they’re paying and what they’re getting. A campaigns table lists Google and Facebook ad campaigns with clicks, daily budgets, and costs — with a toggle between this month (live API data) and last month (stored historical data). Below the campaigns, a services section lists all retainer services the client receives, pulled from a master service catalogue with quantities, prices, and descriptions. The footer calculates the subtotal, 15% South African VAT, and total — giving clients a transparent, itemised view of their monthly investment.

What Else DM3 Does

Automated Monitoring
DM3 doesn’t wait for someone to log in. Uptime checks run every five minutes across all monitored websites. PageSpeed scores and Lighthouse audits refresh automatically every week. DMARC aggregate reports are fetched and parsed daily. Google Analytics data is pulled weekly. When something goes wrong, the data is already there — we don’t have to scramble to find out what happened.
DM3 includes public-facing audit tools that anyone can use — no login required. The SEO scan analyses a website’s on-page SEO, meta tags, and technical health. The security scan checks for common vulnerabilities. These tools serve as lead magnets for Brandsplash — a prospect enters their website URL, sees where their site is falling short, and now has a reason to start a conversation with us.
For clients running WordPress, DM3 connects via the WordPress REST API to monitor site health, track plugin and theme updates, and log version history. A custom WordPress plugin (DM3 Monitor) installed on client sites creates an update log table and exposes it via API — giving us full visibility into what’s changed and when.
Roles govern access across the platform. Admins see everything — all clients, all websites, all data. Resellers see only their owned clients and websites, opening the door to future white-label arrangements. Clients see only their own company’s data. Every website-specific route checks user permissions before showing any data. Strict tenant isolation means one client can never see another client’s information.
For clients whose hosting includes cPanel, DM3 integrates directly via the cPanel UAPI to manage email accounts. This means email account creation, monitoring, and management can happen inside DM3 without logging into a separate hosting control panel.

Under the Hood

Architecture
Built on Laravel 11 with Livewire 3 for a fully reactive interface — every component updates without page reloads. The entire UI is Livewire-first: routes point to Blade views that embed full-page Livewire components. No separate JavaScript SPA to maintain.
DM3 connects to over ten external APIs — Google Analytics 4 (via service account), Google Search Console (direct API), Google Ads (via GA4 linked accounts), Facebook Marketing API, Google Places API (New), PageSpeed Insights API, SerpRobot API, WHOIS (raw socket), SSL (stream socket to port 443), DMARC (IMAP mailbox parsing), cPanel UAPI, and WordPress REST API. Each integration uses per-website cache keys with appropriate TTLs to balance data freshness against API rate limits.
PostgreSQL in production, handling 21 models covering users, clients, websites, analytics data, Lighthouse scores, uptime checks, DMARC reports, ad spend data, cost items, services, quotes, and invoices.
All external API calls use per-website cache keys with TTLs ranging from 1 hour (cPanel email) to 24 hours (SSL, WHOIS, DMARC). Critically, the caching uses a get/put pattern rather than cache-remember, because caching a failed API call would store null data and show incorrect results until the cache expires.
Uptime checks every 5 minutes, PageSpeed refreshes weekly, DMARC report fetching daily, Google Analytics data weekly. All scheduled via Laravel’s console routing.
Jetstream authentication with optional two-factor, Sanctum for API tokens, Spatie Permission for role-based access control, user property middleware on all website-specific routes, and rate limiting on public endpoints.
Production VPS with Apache and PHP 8.3-FPM. HTTPS is forced in production. Scheduled tasks via cron. SMTP email.

Why We Built DM3 Instead of Buying a Tool

We could have subscribed to AgencyAnalytics or Whatagraph. Plenty of agencies do. But we would have been paying R10,000+ per month for a tool we couldn’t customise, couldn’t extend, and couldn’t integrate with our own quoting and invoicing workflow. When something didn’t work the way we needed, we’d be filing support tickets instead of fixing it ourselves.

Building DM3 gave us three things no subscription tool could.

First, it’s a genuine differentiator. When a prospect compares Brandsplash to the dozens of other agencies in Johannesburg, most of them are offering the same services with the same pitch. None of them can offer a real-time monitoring dashboard that the client logs into any time. DM3 is the reason clients stay on retainer — they can see exactly what they’re paying for, every day, without asking us for a report.

Second, it proves our technical capability. DM3 is a production SaaS application with 21 models, 25 Livewire components, and over ten API integrations. If a prospect is evaluating whether Brandsplash can handle a complex web application or a custom software project, DM3 is a live, working answer to that question.

Third, it makes the agency more efficient. Before DM3, monitoring client websites meant logging into multiple tools for each client, every month. Now it’s a single dashboard. Uptime issues surface automatically. SSL and domain expiries are tracked. Ad spend data is aggregated. Monthly reports can be generated from data that’s already collected. The time we used to spend pulling data together is now spent on work that actually moves the needle for clients.

DM3 isn’t a side project. It’s the operational core of Brandsplash and the platform that makes every retainer worth paying for.

Want to See DM3 in Action?

Every Brandsplash client gets their own DM3 dashboard — real-time monitoring of website performance, SEO, advertising, security, and uptime included with every retainer. If you’d like to see what that looks like for your business, let’s talk.
Scroll to Top