GA4 Custom Report Builder: Complete Guide (2026)

GA4 Custom Report Builder: Complete Guide (2026)

13 min read
Ash Rai
Ash Rai
Technical Product Manager, Data & Engineering

GA4's default reports are fine if your only question is "how much traffic did we get last week." But the moment you want to see something specific — conversion rates by campaign source on mobile over the last 90 days, or the drop-off at each step of a signup funnel, or how returning visitors behave differently from first-timers — the default reports come up short. That's where GA4 custom reports come in.

This guide walks through building custom GA4 reports using the Explorations workspace — free-form tables, funnels, segments, custom dimensions, and the rest. It's written for marketing ops power users who already understand the basics of GA4 and want to get more out of it. It also covers where GA4's built-in reporting hits a ceiling — and what to do when you need to go beyond it.

GA4 Custom Report Types: What You Can Actually Build

Custom reporting in GA4 lives in the Explorations workspace (click Explore in the left nav). It's not the same as the canned "Reports" section — Explorations is where you build your own analysis from scratch. GA4 gives you six exploration templates, each built for a different question:

  • Free-form: The workhorse. Build a custom table or chart by dragging any dimensions and metrics you want. Answers ad-hoc questions like "which pages drive the most conversions by source?"
  • Funnel exploration: Build a multi-step funnel to see where users drop off (e.g., view product → add to cart → checkout → purchase).
  • Path exploration: Trace the actual paths users take through your site. Answers "what do users do after they land on this page?"
  • Segment overlap: Visualize how two or three user segments intersect — e.g., mobile users AND new users AND paid-traffic users.
  • Cohort exploration: Track how groups of users who share an attribute (acquisition date, first-visit source) behave over time.
  • User lifetime: Analyze metrics like first-visit date, total revenue, and lifetime engagement for individual users.

The free-form exploration is what you'll use 80% of the time. The other five are specialized tools — useful when the question fits, wasted effort when it doesn't.


Step-by-Step: Build a Free-Form Exploration

Let's build a custom report that shows conversion rate by traffic source for the last 30 days — a common marketing ops question that the default reports don't answer directly.

Step 1: Create the Exploration

  1. In GA4, click Explore in the left nav
  2. Click the Blank template (or Free form)
  3. You'll see three panels: Variables (left), Tab Settings (middle), and the Canvas (right)

Step 2: Add Dimensions

In the Variables panel, click + next to Dimensions:

  • Search and select Session source / medium
  • Search and select Device category (optional — for mobile vs desktop breakdown)
  • Click Import

Step 3: Add Metrics

Click + next to Metrics:

  • Sessions
  • Conversions (or a specific key event if you have one defined)
  • Session conversion rate
  • Click Import

Step 4: Drag Dimensions and Metrics into the Report

In the Tab Settings panel:

  • Drag Session source / medium into the Rows field
  • Drag Sessions, Conversions, and Session conversion rate into the Values field
  • Set the Date range at the top of the Variables panel to "Last 30 days"

You should now see a table in the Canvas showing conversion rate by traffic source for the last 30 days. That's a custom GA4 report.

Step 5: Sort, Filter, and Compare

  • Sort: Click any column header to sort ascending or descending
  • Filter: Drag a dimension into the Filters field and set conditions (e.g., exclude direct / (none))
  • Compare date ranges: In the Variables panel, set Comparison to a previous period to see change-over-time columns

Step-by-Step: Build a Conversion Funnel

Funnel explorations let you define a sequence of steps (pageviews, events, or a mix) and see how many users complete each one — plus where they drop off. It's the report type marketing ops teams spend the most time in.

Step 1: Create the Funnel

  1. In Explore, click Funnel exploration
  2. You'll see the same three-panel layout as free-form, but with a pre-populated funnel structure

Step 2: Define Your Funnel Steps

In the Tab Settings panel, click Steps to edit the funnel:

  1. Step 1: Event name matches page_view (or a specific landing page)
  2. Step 2: Event name matches view_item (product view)
  3. Step 3: Event name matches add_to_cart
  4. Step 4: Event name matches begin_checkout
  5. Step 5: Event name matches purchase

You can also add conditions within a step — e.g., "view_item with item_category = electronics" — for more targeted funnels.

Step 3: Choose Funnel Type

  • Closed funnel: Users must enter at step 1 to be counted
  • Open funnel: Users can enter at any step

Closed funnels are more common for measuring a specific user journey. Open funnels are useful for auditing individual step performance regardless of entry point.

Step 4: Enable "Make this open funnel" or Time Between Steps

Two optional toggles worth knowing:

  • Show elapsed time: Shows the average time users take between each step
  • Next action: Reveals what users do next when they abandon a step — critical for debugging drop-offs

Creating and Applying Segments

Segments in GA4 are reusable user/session/event filters you can apply to any exploration. They're how you slice data into meaningful cohorts — "mobile users from paid search" or "users who purchased in the last 30 days."

Creating a Segment

  1. In the Variables panel, click + next to Segments
  2. Choose a segment type: User segment, Session segment, or Event segment
  3. Define conditions: "include users whose device category is mobile AND session source/medium is google/cpc"
  4. Name it descriptively (e.g., "Mobile paid search users")
  5. Save

Applying Segments to Your Report

Drag the segment into the Segment comparisons field in Tab Settings. Your report now splits into columns showing each segment side by side — perfect for comparing groups.

Segment Overlap Exploration

If you want to visualize how segments intersect (e.g., "how many users are both mobile AND new visitors AND paid-traffic?"), use the Segment overlap exploration template. It generates a Venn diagram of up to three segments.


Custom Dimensions and Metrics: The Advanced Layer

GA4's built-in dimensions cover the basics. When you need to slice data by something unique to your business — plan tier, content category, customer ID — you create custom dimensions and custom metrics at the property level.

Creating a Custom Dimension

  1. Go to AdminCustom definitions
  2. Click Create custom dimension
  3. Name it (e.g., "plan_tier")
  4. Choose scope: Event (most common), User, or Item
  5. Map it to an event parameter (e.g., plan_tier) or a user property
  6. Save

Custom dimensions take up to 24 hours to start populating data. Once they do, they'll appear in the Explorations dimension picker and can be used in any custom report like a built-in dimension.

Common Custom Dimensions Worth Creating

  • Logged-in state: Distinguishes authenticated vs. anonymous users
  • Plan tier: For SaaS — which plan are users on
  • Content category: For media sites — what type of content drives traffic
  • Experiment variant: Which A/B test variant a user saw
  • Internal user role: To exclude employee traffic from reports

Saving, Sharing, and Exporting Custom Reports

Sharing Within GA4

By default, explorations are private to you. To share:

  1. In the exploration, click the Share icon (top right)
  2. Toggle Share with property users to on
  3. Other users with GA4 access to the property will see the exploration in their Explore list

Important: Shared explorations become read-only for others. They can view and duplicate but not edit the original.

Exporting Data

  • CSV: Click the Export icon (top right) → Download CSV. For deeper Excel work, see our GA4 to Excel export guide.
  • Google Sheets: Click ExportExport to Google Sheets
  • PDF: Click ExportDownload PDF for sharing with non-GA4 users

Building Recurring Dashboards

For reports you'll look at every week or month, explorations aren't the right tool — they're built for ad-hoc analysis. Connect your data to Looker Studio for recurring dashboards (see our GA4 to Looker Studio guide) or use a dedicated GA4 tool for recurring reporting.


GA4's Custom Reporting Limits

GA4 Explorations is powerful, but it has hard limits. Knowing them saves you hours of "why doesn't this work" debugging.

Row Limits

  • Free-form explorations: 10,000 rows displayed
  • Funnel, path, segment overlap: Up to 10,000 rows per step
  • Cohort and user lifetime: Higher limits but still capped

If your query exceeds the row limit, GA4 truncates the results — and it doesn't always make that obvious. Check the row count at the bottom of the canvas. If it hits exactly 10,000, you're probably looking at truncated data.

Sampling

GA4 samples data on large properties when queries span long date ranges or include complex filters. Sampling is fast but inaccurate — numbers won't match what you'd see with a smaller date range. The sampling indicator appears as a small icon in the Canvas. If you see it, either narrow the date range or export to BigQuery for unsampled analysis.

Cardinality ("(other)" Row)

When a dimension has too many unique values (thousands of page paths, product IDs, etc.), GA4 collapses the low-volume entries into a single "(other)" row. You'll see "(other)" eating up a suspiciously large share of your report. Solutions: narrow the scope, use BigQuery export, or pre-group dimensions via calculated fields.

No Cross-Source Joins

GA4 Explorations only knows about GA4 data. If you want to analyze conversions and ad spend and CRM data in a single report, GA4 alone can't do it. You need to export to BigQuery, use a partner connector like Supermetrics, or use an external tool that joins sources for you.

No Natural Language Queries

GA4's Explorations builder is click-and-drag. If your question is "which campaigns had the highest conversion rate last quarter?" you still have to translate that into dimensions, metrics, filters, and date ranges manually. GA4's built-in AI "Insights" panel generates automatic observations but can't answer arbitrary natural language questions.


When Your Custom Reports Outgrow GA4

If you've built a few dozen explorations and the pattern looks familiar, you're probably running into the same four problems over and over:

  1. You need data from GA4 plus another source — ad spend, CRM, offline conversions, product telemetry — and Explorations can't join them.
  2. Your queries keep hitting row limits or cardinality caps, forcing you to narrow the scope or switch to BigQuery.
  3. You're rebuilding the same exploration week after week because the question slightly changes, and there's no way to "save a question" that stays fresh.
  4. You want to ask a question in plain English and get an answer — not drag eight dimensions into a tab settings panel every time.

These aren't failures of your report-building skill. They're the limits of the GA4 Explorations tool itself.

Anomaly AI handles all four. It connects directly to GA4 (via the GA4 API or BigQuery export), lets you ask questions in plain English, joins GA4 with CSVs, databases, and other sources in a single question, and shows the SQL behind every answer so you can verify the logic. For power users who've been living in Explorations, it's the natural next step — a tool that does what GA4's built-in reporting can't.

See our comparison guide to the 10 best GA4 data analysis tools for alternatives.


GA4 Custom Report FAQ

What's the difference between GA4 Reports and Explorations?

Reports (in the Reports nav section) are pre-built, read-only dashboards that GA4 provides out of the box — acquisition, engagement, monetization, retention. Explorations (in the Explore nav section) are the custom report builder where you create your own analysis from scratch using the free-form, funnel, path, and other templates.

How many custom reports can I create in GA4?

You can create up to 200 individual explorations per property, with up to 500 saved explorations shared at the property level. That's more than enough for most teams — if you're hitting that limit, you probably need a real BI tool.

Can I schedule GA4 custom reports to email?

Not directly from Explorations. GA4 doesn't have native scheduling for explorations. For scheduled delivery, export your exploration to Looker Studio (see our Looker Studio guide) and use Looker Studio's built-in scheduled email feature.

Why does my GA4 custom report show "(other)" for most of my data?

GA4 applies a cardinality limit — when a dimension (like page path or product ID) has too many unique values, low-volume entries get grouped into "(other)" to keep query performance manageable. To fix: narrow your date range, add filters to reduce scope, or use the BigQuery export to query raw event data without cardinality limits.

Can GA4 custom reports include data from other sources?

No. GA4 Explorations only queries GA4 data. To analyze GA4 alongside ads spend, CRM data, or offline conversions, you need to either export GA4 to BigQuery and join there, use a partner connector like Supermetrics to blend sources in Looker Studio or Sheets, or use an AI-first tool like Anomaly AI that handles cross-source joins natively.


Ready to go beyond GA4's custom report builder? Get started with Anomaly AI — connect your GA4 property and ask questions in plain English. Join GA4 with Excel files, databases, or CSVs in a single question. Every answer shows the SQL behind it, so you can trust the result without writing any code. Free tier, no credit card required.

Ready to Try AI Data Analysis?

Experience AI-driven data analysis with your own spreadsheets and datasets. Generate insights and dashboards in minutes with our AI data analyst.

Ash Rai

Ash Rai

Technical Product Manager, Data & Engineering

Ash Rai is a Technical Product Manager with 5+ years of experience building AI and data engineering products, cloud and B2B SaaS products at early- and growth-stage startups. She studied Computer Science at IIT Delhi and Computer Science at the Max Planck Institute for Informatics, and has led data, platform and AI initiatives across fintech and developer tooling.