Skip to content

Guides · · 9 min read

How to build a marketing dashboard in Looker Studio (2026 guide)

Step-by-step guide for SMEs: which KPIs to include, how to connect GA4, Google Ads, Search Console and Sheets, calculated fields, quotas and email delivery.

Almost all SMEs have a marketing report that nobody reads: a very long PDF, a Google Analytics screenshot, or an Excel file updated when someone remembers. And they all ask the same question every month: how many real requests did our marketing generate and how much did each one cost?

A well-built dashboard answers this at a glance. In this guide, we build one with Looker Studio, Google’s free reporting tool. A note on the name: since April 2026, Google calls it Data Studio (and the paid version, Data Studio Pro). We continue writing “Looker Studio” here because it is how almost everyone searches for it; on screen, you will see the new name.

Prefer to have it built and monitored? At Ekualia, we connect your sources and build a dashboard that anyone can understand. And if you want to know if your website tracks properly first, the audit is free.

View Analytics and dashboards →

What a dashboard should answer

Before opening the tool, write down the questions. For an SME acquiring clients via the web, five are enough:

  1. How many real requests have we received?
  2. How much did each request cost us?
  3. Which channel do they come from?
  4. Which pages convert and which do not?
  5. How much have we invested and how many of those requests ended in a sale?

The KPIs that actually matter

KPI What it answers Source How it is calculated
Real requests How many valid contacts do we receive? GA4 (generate_lead) and your CRM Count of the generate_lead event; from the CRM, requests excluding spam
Cost per request How much does each contact cost? Google Ads + GA4 Investment ÷ requests
Channel Where do they come from? GA4 Requests by channel (paid search, organic, direct, referral…)
Conversion by page Which pages generate contacts? GA4 Requests ÷ sessions of the page
Investment How much have we spent? Google Ads (and other platforms) Cost for the period
Sales / close rate How many requests became clients? Spreadsheet or CRM Won clients ÷ requests

Rule: every KPI must be able to trigger a decision. If nobody would change anything upon seeing it go up or down, remove it.

Step 1. Define what a real request is

This is the most skipped step and the one that ruins the most figures. A real request is a correctly submitted form, not a button click or a visit to the thank you page. If you are not tracking this yet, start with our guide to track forms and WhatsApp clicks in GA4 with Tag Manager: without a reliable generate_lead, the dashboard will only draw noise with good design.

Step 2. Connect your sources

In Looker Studio, each source is a connector. To create one: Create > Data source, choose the connector, click AUTHORIZE if prompted, select the account and click CONNECT. Then, CREATE REPORT and ADD TO REPORT.

Source What we use it for What you should know
Google Analytics (GA4) Requests, channels, pages You need at least “Read & Analyze” permission on the property. GA4 segments are not available in the connector
Google Ads Investment, clicks, cost Each source connects to one account (or a manager account and up to 50 sub-accounts). Entities with no impressions do not appear
Search Console Queries and pages on Google It has two tables, Site Impression and URL Impression, and a source can only use one. Google hides some queries for privacy
Google Sheets Sales, close rate, CRM It is the simplest way to bring what is not in Google to the dashboard: one row per request or a monthly summary

Two decisions to make now:

  • Data credentials. Each source allows owner’s credentials, viewer’s credentials, or service account credentials. With owner’s credentials, the person viewing the report does not need access to the source; with viewer’s credentials, each person needs their own. To share with management or a client, it is standard to use owner’s credentials, and then the connecting account must be your company’s, not personal.
  • Data freshness. Google Ads and Search Console refresh every 12 hours. GA4 allows 1, 4, or 12 hours, and Google Sheets, 15 minutes by default. None are real-time, and GA4 also takes time to process data: do not make decisions with this morning’s data.

Step 3. Structure: a summary page and the detail separately

The rule we follow: one page that can be read in ten seconds and the rest for those who want to dig deeper.

Page 1: summary. At the top, four or five scorecards (requests, cost per request, investment, conversion and, if you have it, sales) with the comparison against the previous period. Below, a chart of requests by day and a table by channel. Nothing else.

Detail pages:

  • Channels and campaigns: requests, investment, and cost per request by campaign.
  • Pages: sessions, requests, and conversion by landing page.
  • Organic search: queries and pages from Search Console.
  • Sales: from contact to client, with data from the spreadsheet.

Place a date range control at the top of each page and, if you use it, a filter by channel.

Step 4. Useful calculated fields

Looker Studio allows creating new fields with formulas directly from the data source. These are the ones we use most; field names (Event name, Cost, Sessions…) may vary depending on the language and source.

Real requests (GA4): count only the event that matters.

CASE WHEN Event name = "generate_lead" THEN Event count ELSE 0 END

Cost per request: Google Ads investment divided by GA4 requests. For both fields to coexist, you must blend the two sources (Looker Studio’s data blending) using the date as the key. Protect the division against zeros with NULLIF:

SUM(Cost) / NULLIF(SUM(Requests), 0)

Conversion by page:

SUM(Requests) / SUM(Sessions)

Custom grouped channel: useful for grouping channels that GA4 separates.

CASE
  WHEN REGEXP_MATCH(Session default channel group, ".*(Paid|Cross-network).*") THEN "Paid"
  WHEN Session default channel group = "Organic Search" THEN "SEO"
  ELSE "Other"
END

If you use percentages, define the field as a percentage type in the data source and do not multiply by 100 manually. And check each formula against the figure in the GA4 interface itself for the same period before showing it to anyone.

Step 5. Dates and comparison

Two settings that save arguments:

  • Default date range. Set it to a useful range (for example, the entire previous month) in the chart’s SETUP tab, and check Include today only if you want to see an ongoing period, whose data is not yet closed.
  • Comparison date range. In the same tab, under Comparison date range, choose Previous period or Previous year. It works on time series, tables, area charts, and scorecards, and is only configured by the person editing the report; the person viewing it changes the period with the date control.

If your business is seasonal, compare with the previous year; if not, with the previous period.

Step 6. Exclude internal traffic

If your team visits the website daily, they are inflating your sessions. In GA4, this is done in two steps:

  1. Admin > Data collection and modification > Data streams, open the web stream, Configure tag settings > Show more > Define internal traffic, and create a rule with your office IP addresses.
  2. Data filters > Create filter > Internal Traffic, choose Exclude and leave the filter in the Testing state until you verify it tags the correct traffic. Then, change it to Active.

Keep in mind two things Google explains: the active filter is permanent (excluded data cannot be recovered) and it can take between 24 and 36 hours to apply. That is why the testing phase is not optional.

Step 7. GA4 quotas and limits

The GA4 connector queries the Google Analytics Data API, and reports that exceed its quotas may show an error instead of figures. For standard properties, Google publishes these limits (as of 31 October 2026):

Quota Limit
Tokens per property per day 200,000
Tokens per property per hour 40,000
Tokens per project per property per hour 14,000
Concurrent requests per property 10

Each query consumes tokens, and a report with many charts, filters, and dates launches many queries. How to manage them:

  • A lightweight summary page. Few charts, no huge tables.
  • Fewer dimensions per chart and reasonable date ranges.
  • If the report grows, dump the data somewhere else (a spreadsheet with the monthly summary, or BigQuery) and connect the report to that.

Step 8. Sharing and scheduling delivery

Sharing. Before sending the link, check the data credentials (step 2). If you share with someone with the data source set to “viewer credentials”, they will see an error instead of data.

Schedule email delivery. With the report open, click Share › Schedule delivery; Create schedule opens. Add recipients (you are always included), choose the pages, the start date and time, and in Repeat the frequency (with Custom you can choose specific days). Click Schedule.

What arrives is an email with a preview of the first page, a link to the report, and the attached PDF. What you should know:

Standard version Pro
Schedules per report 1 Up to 200
Maximum frequency Once a day Once an hour
Recipients per schedule Up to 50 Up to 50
Destinations Email Email and Google Chat
Custom subject and message No Yes

A practical warning: scheduled deliveries use the US English format for numbers, currency, and dates, so check how the PDF looks before sending it to management. For most SMEs, a monthly delivery to three or four people is covered by the free version.

Common mistakes

  • Counting clicks as requests. A click on “Send”, on WhatsApp, or on the phone is an intention, not a contact. If it goes to the same scorecard as generate_lead, the cost per request looks better than it is.
  • Mixing users and sessions. One person can have several sessions. If you divide requests by users in one place and by sessions in another, the conversions are not comparable. Choose a baseline (we use sessions for pages and channels) and always use it.
  • Relying only on GA4. GA4 only counts those who accept cookies. In the case of the lift manufacturer we mentioned in the measurement guide, GA4 saw 32 out of 62 requests. Put your CRM or sales sheet next to it.
  • Not excluding internal traffic. It inflates sessions and lowers conversion.
  • Too many charts. A dashboard with 40 charts is an archive, not a tool.
  • Not documenting the definition. Without a note on what counts as a request, the next report will discuss the definition, not the results.

In summary

With a clear definition, five KPIs, and one page, the dashboard is read and used. Once you have it, check that the measurement feeding it is correct with our website audit checklist. And if you prefer us to build and monitor it, that is what we do in Analytics and dashboards.

Frequently asked questions

Is Looker Studio free?

Yes, the standard version is free. Since April 2026 Google calls it Data Studio and the paid version, Data Studio Pro (formerly Looker Studio Pro). Pro adds, among other things, multiple delivery schedules per report and delivery to Google Chat. For an SME dashboard, the free version is usually enough.

Why does my dashboard show fewer requests than my CRM?

Because GA4 only counts those who accept cookies and does not see spam or contacts arriving by phone or email. It is normal for the CRM to have more. That is why it is advisable to put both figures on the same dashboard and monitor the ratio every month.

How many charts can I put on a page without getting quota errors?

Google does not set a number. Reports with GA4 query the GA4 Data API, which has quotas per property and per hour, including a maximum of 10 concurrent requests. The more charts and filters, the more queries: that is why we recommend a lightweight summary page and the detail on separate pages.

How often is the data updated?

Google Ads and Search Console connectors update every 12 hours; GA4 allows choosing 1, 4 or 12 hours, and Google Sheets, every 15 minutes by default. Also, GA4 takes time to process data, so it is not real-time.

  • Looker Studio
  • marketing dashboard
  • marketing KPIs
  • GA4
  • Google Ads
  • Search Console
  • marketing reports

How does your website score?

Audit it free in 30 seconds: over 20 business and technical checks, and what to fix first.