6 min read

How to Set Up Funnel Exploration in Google Analytics 4

If you're losing users somewhere in your flow, you need to see exactly where. GA4's Funnel Exploration lets you build custom conversion paths and spot bottlenecks without needing to predefine them months in advance. Here's how to set it up.

Step 1: Define Your Funnel Events

Every step in your funnel is an event. Before you explore, make sure you're tracking the right ones.

Track Each Step as a Distinct Event

Send events for every step in your user journey: page views, button clicks, form submissions, whatever marks a funnel milestone. Use clear event names like view_product, add_to_cart, start_checkout, purchase. GA4 distinguishes events by exact name, so consistency matters.

javascript
// Track funnel steps with gtag
gtag('event', 'view_product', {
  'product_id': '12345',
  'product_name': 'Premium Plan',
  'value': 99,
  'currency': 'USD'
});

gtag('event', 'add_to_cart', {
  'product_id': '12345',
  'value': 99,
  'currency': 'USD'
});

gtag('event', 'start_checkout', {
  'value': 99,
  'currency': 'USD'
});

gtag('event', 'purchase', {
  'value': 99,
  'currency': 'USD',
  'transaction_id': 'txn_9876'
});
Each event represents a funnel step. Include relevant parameters for segmentation.

Include Parameters for Segmentation

Add event parameters that let you slice the funnel later. Properties like user_type, product_category, or page_path become powerful filters when exploring. GA4 collects user and session properties automatically, but event-level details give you more control.

javascript
// Send events with detailed parameters for segmentation
gtag('event', 'add_to_cart', {
  'product_id': '12345',
  'product_name': 'Premium Plan',
  'product_category': 'subscription',
  'price': 99,
  'currency': 'USD',
  'user_plan_type': 'free' // Custom property for segmentation
});

// Set user properties once per session
gtag('set', {
  'user_type': 'returning',
  'account_tier': 'premium'
});
Event parameters and user properties enable segmented funnel analysis.
Watch out: GA4 has a 40-parameter limit per event. Prioritize parameters you'll actually filter or segment by in Explore.

Step 2: Create Your Funnel in Explore

Once events are flowing, build the funnel visualization in GA4.

Open Explore and Select Funnel Visualization

In GA4, go to Explore > Blank and select the Funnel Visualization template. This gives you a canvas to add your funnel steps. Unlike standard reports, Explore doesn't lock you into predefined metrics—you define the steps.

Add Funnel Steps by Event

Click Add step and select the events that represent each phase of your funnel. GA4 calculates the sequence automatically: users who hit step 1, then step 2, then step 3, etc. The visualization shows the drop-off between each step as a percentage.

Configure Step Conditions (Optional)

You can add conditions to narrow what counts as a valid step. For example, only count purchase events with value > 50. Or only add_to_cart events for the premium product category. This keeps your funnel focused on the behavior you care about.

javascript
// Example: Only count high-value purchases in your funnel
// Set up in GA4 Explore:
// Step 1: event name = 'view_product' (no conditions)
// Step 2: event name = 'add_to_cart' AND product_category = 'premium'
// Step 3: event name = 'purchase' AND value >= 50

// When sending the event, ensure the parameter is present:
gtag('event', 'purchase', {
  'value': 99,
  'currency': 'USD',
  'transaction_id': 'txn_9876'
});
Define step conditions in Explore to filter by event parameters.
Tip: GA4 matches users across events in the order you define the steps. If step 2 occurs before step 1, that user won't be counted in your funnel. Use your full date range to capture the complete journey.

Step 3: Segment and Analyze Drop-off

Now that your funnel is built, segment it to find where specific user cohorts drop off.

Add Segments to Compare Cohorts

Click Segment and choose a breakdown dimension: user_type, country, device_category, or any custom user property you set. GA4 splits the funnel so you can see if premium users have higher conversion rates than free users, or if mobile users drop off earlier.

Use the Data API for Programmatic Access

If you want to pull funnel data into your own dashboard or alert system, use the Google Analytics Data API v1. This returns raw funnel metrics as JSON, letting you automate reporting or integrate with downstream tools.

javascript
// Query GA4 funnel data programmatically
const {BetaAnalyticsDataClient} = require('@google-analytics/data');

const client = new BetaAnalyticsDataClient({
  // Requires Google Cloud credentials with Analytics Reporting scope
});

const request = {
  property: 'properties/YOUR_GA4_PROPERTY_ID',
  dateRanges: [{
    startDate: '2026-03-01',
    endDate: '2026-03-26'
  }],
  metrics: [
    { name: 'eventCount' },
    { name: 'totalUsers' }
  ],
  dimensions: [
    { name: 'eventName' }
  ],
  dimensionFilter: {
    filter: {
      fieldName: 'eventName',
      stringFilter: {
        matchType: 'EXACT',
        value: 'purchase'
      }
    }
  }
};

const response = await client.runReport(request);
console.log('Funnel conversion metrics:', response);
Use the Google Analytics Data API to extract funnel metrics programmatically.
Watch out: The Data API doesn't calculate funnel drop-off percentages—you get raw event counts. You'll need to compute the conversion rate yourself (step 2 / step 1 × 100).

Common Pitfalls

  • Forgetting to track intermediate steps—if you only send 'purchase' events, GA4 can't show you where the funnel starts or where users drop off before checkout.
  • Mixing event names across implementations—if you track 'Add_to_Cart' on web and 'addToCart' on mobile, GA4 treats them as separate events. Standardize naming across all platforms.
  • Not accounting for the date range window—GA4 only connects events within the date range you select. If a user browses on day 1 and checks out on day 31, they won't appear in your funnel.
  • Overloading events with parameters—GA4 has a 40-parameter limit. Prioritize the properties you'll use for segmentation; don't send every detail to every event.

Wrapping Up

You now have a funnel that shows exactly where users drop off. Use segments to find patterns—maybe free users convert at half the rate, or mobile visitors abandon at checkout. Once you've identified the bottleneck, you can iterate on the flow. If you want to track this automatically across tools, Product Analyst can help.

Track these metrics automatically

Product Analyst connects to your stack and surfaces the insights that matter.

Try Product Analyst — Free