Reporting · Craft
The average marketing dashboard is opened twice: once when it’s presented, once when someone is looking for a number to argue with. Here’s how to build one that survives past week three.
I once spent the better part of three weeks building a Looker Studio dashboard for a client. Thirty-one widgets. Blended GA4, Google Ads, Meta and Shopify data. Colour-coded, filterable by date range and channel, genuinely handsome. I presented it on a Thursday and everyone said it was excellent.
Four months later I checked the view logs out of curiosity. It had been opened eleven times, nine of them by me. The CMO had opened it once. Nobody else in the company had opened it at all.
That was a useful humiliation, because it forced a question I’d never asked: what were these people doing instead? The answer was that they were asking someone in the marketing team a specific question over Slack and getting a specific answer back. The dashboard hadn’t failed because it was badly built. It failed because it answered questions nobody was asking, in a place nobody went, at a level of detail nobody wanted.
Everything below is what I do differently now.
The Distinction That Fixes Most Dashboards Two artifacts, not one
There are two fundamentally different documents, and merging them — which is what almost everyone does — produces something that serves neither audience.
An operator dashboard is for the person doing the work. It’s dense, granular, updated constantly, and full of things like campaign-level cost per acquisition and keyword-level impression share. It exists to answer “what should I change today.” Its user opens it every morning. It can be ugly. It should be detailed.
An executive dashboard is for someone who is not doing the work and has roughly ninety seconds. It exists to answer three questions and no more: Are we on track? What changed? What needs a decision? Its user opens it monthly at most, and probably only when it’s put in front of them.
These have almost nothing in common. The executive version isn’t a simplified operator dashboard, any more than a newspaper front page is a simplified filing cabinet. It’s a different genre with different rules, and the most common failure in marketing reporting is handing an executive an operator’s tool and interpreting their disengagement as a lack of interest in data.
Build both. Keep them separate. Never link one to the other.
The Test Every Widget Must Pass Ask it out loud, honestly
Before a metric goes on an executive dashboard, ask: if this number moved by 30% in either direction, would anyone do anything differently?
If the answer is no, delete it. It’s not information, it’s decoration.
Applied ruthlessly, this test removes most of what’s on a typical dashboard. Sessions? If sessions rose 30%, what would change? Probably nothing, unless revenue moved with them — in which case revenue was the metric. Impressions? Bounce rate? Average session duration? Social followers? Each one fails, and each one appears on nearly every marketing dashboard ever built, because they’re easy to retrieve and they make the page look substantial.
What survives the test tends to be short: revenue, cost, the ratio between them, the number of new customers, and something about retention. Five or six numbers. That feels thin when you’re building it and it’s exactly right when someone reads it.
“If this number moved thirty percent and nobody would do anything differently, it isn’t information. It’s decoration.”
Never Show a Number Alone The single highest-leverage rule
“Revenue: $184,320.”
Is that good? You cannot know. Nobody reading it can know. A raw number carries no information without a reference point, and a dashboard full of raw numbers is a dashboard that requires its reader to already have the context — which, if they’re an executive, they don’t.
Every number needs at least one comparison, and ideally two: against the previous equivalent period, and against target. “Revenue: $184,320. Up 12% on last month, 8% below plan.” Now it’s a sentence with meaning, and it prompts an obvious question, which is precisely what you want a dashboard to do.
Prefer the same period last year over last month wherever seasonality exists, which is nearly everywhere. December compared to November tells you about Christmas. December compared to last December tells you about your business.
And put the comparison in words, not just an arrow. Coloured triangles are ambiguous — an upward green arrow on “cost per acquisition” means something bad, and readers process the colour before the label. Write it out.
Chart Types: A Short List of Grievances What to use, what to burn
Use line charts for anything over time. This is most things. A line chart with a target line drawn across it is the single most useful object in marketing reporting and it is chronically underused because it looks plain.
Use horizontal bar charts for comparing categories — channels, campaigns, products. Horizontal, so the labels are readable without tilting your head.
Use plain numbers for single headline metrics, large, with the comparison directly underneath.
Avoid pie charts above three segments. Humans are poor at judging relative angle, which is why every pie chart needs its percentages printed on it — and if you’re printing the numbers anyway, a bar chart or a table was the better choice.
Avoid gauge and speedometer charts entirely. They consume enormous space to convey one number against one threshold. They exist because dashboard software ships with them and they look like a car.
Avoid dual-axis charts. Two lines on different scales can be made to appear correlated or uncorrelated purely by choosing axis ranges. They’re not merely unclear, they’re persuasive in a way that isn’t earned, and I’ve seen them used both accidentally and deliberately to make a channel look better than it was.
Avoid stacked area charts for anything where the individual series matter. Only the bottom series sits on a flat baseline; every other one is judged against a wobbling floor, and readers systematically misjudge them.
The Feature That Actually Gets Dashboards Read And it isn’t a chart
Annotation. Written commentary, by a human, on the page.
A chart shows that organic traffic fell 18% in June. A sentence next to it says: “Organic down 18% in June — Google core update on the 12th hit our comparison pages. Recovery plan in the content roadmap; expect two months.” One of those is data and the other is a report, and only the second one is worth an executive’s time.
This is the piece most dashboard projects skip, because the whole appeal of a dashboard is that it updates itself and requires no ongoing work. But a self-updating page of numbers with nobody interpreting them is precisely the artifact that gets ignored, because the reader has to do the interpretive work themselves and they won’t.
The unglamorous truth I’ve arrived at after years of this: for most organisations, a well-written weekly email beats a dashboard. Five numbers with comparisons, three sentences of explanation, one clear ask. It arrives where people already are, it takes ninety seconds, and it gets read. The dashboard becomes the appendix — the place you link to when someone wants to dig, rather than the primary artifact.
The Tools, and What They Cost Free is genuinely fine here
Looker Studio remains free and connects natively to GA4, Google Ads, Search Console, BigQuery and Sheets. For anyone working inside the Google ecosystem there’s no real argument for paying for something else at small scale. A paid Pro tier exists with team management and support features; check the current pricing page, as it’s changed since launch.
Its notorious weakness is speed. A Looker Studio report pulling live from four API connectors will take fifteen to forty seconds to load, and a dashboard that takes forty seconds to load is a dashboard nobody opens twice. The fix is well known and rarely applied: use extracted data sources, which cache a snapshot on a schedule, or land everything in BigQuery first and point Looker Studio at a single pre-aggregated table. Both turn a forty-second load into a two-second one. This one change does more for adoption than any design decision.
Google Sheets deserves more respect than it gets. For a small business, a sheet updated weekly — partly automated, partly by hand — is often the correct answer. It’s editable, commentable, universally understood, and requires nobody to learn a new interface. I have built expensive dashboards that were less useful than a good sheet.
Paid platforms — the agency reporting tools that aggregate dozens of connectors and produce white-labelled client reports — earn their fees on volume, not capability. If you’re producing twenty client reports a month, the connector library and templating save real hours. For a single business reporting on itself, they’re solving a problem you don’t have.
Executive Dashboard: A Specification
| Position | What goes there | Why |
|---|---|---|
| Top strip | Revenue, spend, blended CAC, new customers — each with period-on-period and vs. target | The four numbers that describe whether the machine is working |
| Directly beneath | Two or three sentences of written commentary, updated each cycle | Turns a data display into a report |
| Left, main area | Revenue over time, 13 months, with a target line | Trend and seasonality in one object |
| Right, main area | Horizontal bars: revenue and spend by channel | Where the money went and what came back |
| Lower band | One leading indicator relevant to the current strategy | Points forward rather than backward |
| Footer | Data-as-of timestamp, source list, one line on known caveats | Pre-empts the “is this right?” email |
| Anywhere | Nothing else | Every addition costs you attention on the things above |
That footer row matters more than it looks. Half the trust problems in marketing reporting come from someone comparing a dashboard figure to a figure from another system, finding a discrepancy, and concluding the whole thing is unreliable. A single line saying “channel revenue is platform-attributed and will exceed total revenue — see methodology” defuses that conversation before it starts.
The Other Dashboard: Building for Operators Different rules entirely
Everything above concerns the executive artifact. The operator dashboard follows nearly opposite principles, and it’s worth stating them because people apply executive rules to operator tools and end up with something useless for daily work.
Density is a virtue here. The person using this opens it every morning and knows the numbers cold. They don’t need explanation, they need scanning speed. Tables beat charts for this audience more often than design orthodoxy admits — a sortable table of campaigns with cost, conversions and CPA lets an operator find the outlier in three seconds, which no chart does.
Filters are essential rather than dangerous. The operator needs to slice by device, match type, placement, day of week. The risk of narrative-shopping that makes filters bad on an executive page is exactly the exploratory capability that makes them good here.
Show absolute numbers alongside rates. A 40% improvement in conversion rate on eleven sessions is noise, and rate-only dashboards hide that constantly. Put the denominator next to every ratio.
Surface changes, not states. The single most useful operator widget I build is a “what moved” table: metrics ranked by percentage change versus the prior period, filtered to rows with enough volume to matter. It answers the actual morning question — what’s different today — instead of restating what you already knew.
Include the thing that’s currently broken. Disapproved ads, products out of stock, tracking errors, budget-capped campaigns. These aren’t performance metrics, they’re a to-do list, and they belong on the page the operator opens rather than in an email they’ll archive.
A Build Sequence That Doesn’t End in Abandonment
If I were starting one today, in order:
Ask three people what question they want answered. Not “what data do you want” — that produces a wish list of everything. “What decision are you trying to make?” Write the answers down verbatim. If three people give you three unrelated answers, you have three dashboards, or more likely one dashboard and two conversations.
Write the report by hand for a month. Weekly, in an email. Note which numbers you look up every time, which you looked up once, and which questions you kept receiving that the report didn’t answer.
Land the data somewhere stable first. BigQuery, or at minimum a scheduled extract. Pointing a dashboard directly at four live API connectors is how you get a forty-second load time and a page nobody opens.
Build the smallest version that answers the questions, then show it to the people who gave you the questions and watch them use it without helping. Where they hesitate is where your design is wrong. This takes twenty minutes and is worth more than a week of refinement in isolation.
Set a review date. Ninety days out, check the view logs. A dashboard nobody opened in ninety days should be deleted rather than improved — it answered a question nobody had, and adding widgets won’t change that.
Five Failure Modes, Named
The vanity wall. Impressions, reach, followers, sessions. Big numbers that go up regardless of whether the business is working. They survive on dashboards because they’re flattering and because no one wants to be the person who removed them.
The infinite filter. Date range, channel, device, campaign, region, all filterable. Sounds powerful, functions as an invitation to construct whatever narrative you were already inclined toward. Executive dashboards should have one date control at most.
The stale page. A connector broke in March and the dashboard has been silently showing March data since. Nobody noticed because nobody was looking. Put a data-freshness timestamp on every page, prominently, and make it conditional-format to red when it’s stale.
The reconciliation trap. Attributed channel revenue displayed next to total revenue with no explanation, so the two disagree and the reader’s first reaction is that the numbers are wrong. Either label it clearly or don’t show both.
The abandoned masterpiece. Beautiful, comprehensive, built over weeks, opened eleven times. This one is mine. The tell is that it was built to a specification nobody requested, in response to a request that was really “can you tell me how marketing is doing.”
That last request is a request for a sentence, not a system. Most of the time the honest response is to write the sentence. Build the system only when you’ve been writing the sentence long enough to know exactly which numbers it needs — and by then, the dashboard practically specifies itself.
Looker Studio capabilities and connector behaviour verified August 2026; pricing for paid tiers changes periodically, so confirm on the vendor’s own page before budgeting. This article contains no affiliate links.