GA4 Dashboards Operators Actually Use

GA4 Dashboards Operators Actually Use

GA4 shows two hundred metrics. An operator needs about ten. This is how to choose them, the events you must define before any of them mean anything, and a one-page layout that gets read every Monday.

GA4 shows two hundred metrics and an operator needs about ten. The default reports were designed for analysts, and most business owners open them once, see "engaged sessions per active user", and never come back. A dashboard that gets read every Monday answers questions the business asks in the business's words: where do leads come from, which pages produce them, which language converts, and what changed since last month. This is how to build one, starting with the part everyone skips: the events.

Step 0. Define the events before the dashboard

A dashboard is a view of events. If the events do not exist, the dashboard is a view of page views, which tells you nothing about outcomes.

For a service business, the minimum set:

EventWhen it firesParameters
generate_leadContact form submitted successfullyform_id, page_path, language, source_section
whatsapp_clickWhatsApp link tappedpage_path, language, source_section
phone_clickPhone link tappedpage_path, language, source_section
email_clickEmail link tappedpage_path, language
offer_clickA priced package CTA tappedoffer_id, language
view_item / view_item_listA catalogue or service item is viewed (if there is one)item_id, item_category, language

Three rules that make this set useful:

  1. One event name per channel. A single contact_click with a channel parameter forces you to mark "opened the map" as a conversion alongside "started a WhatsApp chat". Separate names let you mark the ones that are actually leads.
  2. The language on every event. On a bilingual site where the primary language has no URL prefix, splitting by URL puts every unprefixed page into one bucket. An explicit language parameter is the only way to answer "does the Arabic site convert?".
  3. One object describes the source. Where the click happened (hero, footer, service page CTA) and what it was about (which product, which offer) come from the same object that prefills the form. That way the analytics event and the lead record can never disagree.

Route everything through one data layer push so that a tag manager can add, rename or consent-gate events without touching the site. Then mark generate_lead, whatsapp_click and phone_click as key events in GA4.

Step 1. Choose the ten numbers

Each number answers a question the business asks. If you cannot write the question, drop the number.

QuestionNumberSource
How many enquiries did we get?Leads (form + WhatsApp + phone), this month vs lastKey events
Where did they come from?Leads by default channel groupKey events × session source
Which pages produce them?Leads by landing pageKey events × landing page
Does the second language convert?Leads and conversion rate by languageKey events × language
Which services get attention?Views of service pages, rankedPage views filtered to /services/
Which offer gets clicked?offer_click by offer_idEvent
Is search working?Organic sessions and organic leads, trendChannel = Organic Search
Is the site fast enough?Not from GA4: read the Search Console vitals reportExternal
Are visitors bouncing on mobile?Engagement rate by deviceSession dimension
What changed?Month-on-month delta on the first four rowsComparison

That is the whole dashboard. Sessions and users are shown once, small, as context. They are never the headline.

Step 2. Lay it out as questions, one per row

Build it in Looker Studio (free, connects to GA4 natively) or GA4's own Explorations. Layout principles that keep it readable:

  • One page. If it needs scrolling past the second screen, it has stopped being a dashboard.
  • Row one is outcomes: leads this month, last month, and the delta, as three large numbers. Nothing else on that row.
  • Row two is sources: a bar chart of leads by channel, and a table of leads by landing page. Both sorted descending.
  • Row three is language: two columns, one per language, each with sessions, leads and conversion rate. This row is the one that decides content budget.
  • Row four is attention: service page views ranked, and offer clicks by offer.
  • Row five is context: organic trend line for twelve months, engagement rate by device.
  • Date range fixed to "last month vs previous month" by default, with a control to change it. Nobody adjusts a date picker on a Monday morning.

Name every chart with the question it answers, not the metric it shows. "Where did leads come from?" not "Key events by session default channel group".

Step 3. Keep the definitions in the dashboard

Under each row, one line of small text saying what counts. "A lead is a successful form submission, a WhatsApp tap or a phone tap." "Language is the language the visitor was reading, not their browser setting." Six months from now someone will argue about a number, and the definition on the page settles it.

Step 4. Reconcile against the CRM monthly

GA4 counts browser events from visitors who allowed tracking. The CRM counts leads that exist. The gap comes from ad blockers, consent refusals, and forms that submitted but never fired the event. Expect a 10 to 30 percent gap. If it widens suddenly, the tag broke. If the CRM is the source of truth for the count, the dashboard's job is the mix and the trend, not the absolute.

Where the gap matters commercially, log leads server-side as well, at the moment the form handler succeeds. That count is immune to blockers and is the one to report.

Step 5. A Monday routine, ten minutes

  1. Read row one. Up, down, or flat, and by how much.
  2. Read row two. Did the mix change? A new channel appearing, or the organic bar shrinking, is the first sign of a problem elsewhere.
  3. Read row three. Which language earned its keep this month.
  4. Skim rows four and five. Anything surprising gets one sentence in the notes.
  5. Write three lines in a running document: the lead number, the biggest change, and the one thing to look at this week.

Twelve months of those three-line notes is a better record of the business's digital performance than any report an agency will send you.

What we build for clients

The measurement layer first: the event set above, through one data layer push, with the language on every event and one source object feeding both analytics and the form. Then the one-page dashboard with the ten numbers and the questions as titles. Then a monthly note comparing it to the CRM. The dashboard is not the deliverable; the Monday habit is.

Questions

Which GA4 metrics matter most for a service business?

Leads by channel, leads by page, leads by language if the site is bilingual, and the conversion rate of the commercial pages. Sessions and page views are context, not outcomes. If the dashboard leads with sessions, it is measuring activity instead of business.

Do I need Google Tag Manager to use GA4?

Not strictly, but it makes the events manageable. With a tag manager, every event goes through one data layer push and you can add, rename or gate events without editing the site. Without it, every change is a code deployment.

Why does my GA4 show different numbers from my CRM?

GA4 counts browser events from visitors who allowed tracking; the CRM counts records that were created. Ad blockers, consent refusals and form submissions that failed to fire the event all widen the gap. Server-side logging of leads closes it, and the CRM should be the source of truth for the count.

Related pages

Work with Alnitak

Our audit includes the measurement layer: whether the events exist, whether they fire, and whether the dashboard answers the questions the business actually asks.

Bilingual technical SEO auditfrom $1,700 (5–7 days)

WhatsApp this offerSee packagesContact Us

Related reading