Funnels Pro

Multi-step conversion paths in Clamp. Filter by cohort, country, device, or UTM. Create via MCP.

Creating a funnel

A funnel is a sequence of steps. Each step is either a pageview (prefixed with pageview:) or a custom event name.

MCP example
"Create a funnel from pricing page to signup to checkout"

→ create_funnel({
    project_id: "proj_xxx",
    name: "pricing-to-checkout",
    steps: [
      "pageview:/pricing",
      "signup",
      "checkout_completed"
    ]
  })

Conversion rates are calculated immediately. You don't need to wait for data to accumulate.

Step syntax

FormatWhat it matches
pageview:/pricingA pageview on the /pricing path
pageview:/blog/*A pageview on any path under /blog/
signupA custom event named "signup"
checkout_completedA custom event named "checkout_completed"

Steps are evaluated in order. A visitor must complete step 1 before step 2 counts, and so on. The funnel shows the drop-off between each step.

Cohort filtering

Once a funnel exists, you can query it with cohort filters to compare conversion across segments.

FilterExample
country"US", "DE" (ISO 3166-1 alpha-2)
channel"organic_search", "paid", "direct"
device_type"mobile", "desktop", "tablet"
utm_source"google", "newsletter"
utm_campaign"spring-launch"

Comparing segments

To compare conversion between two cohorts, query the same funnel twice with different filters.

"Compare funnel conversion for US vs Germany"

→ get_funnel({ name: "pricing-to-checkout", country: "US" })
→ get_funnel({ name: "pricing-to-checkout", country: "DE" })

Device and channel segmentation

"How does the pricing-to-signup funnel convert on mobile?"

→ get_funnel({ name: "pricing-to-signup", device_type: "mobile" })

"What's the funnel conversion for visitors from Google?"

→ get_funnel({ name: "pricing-to-signup", channel: "organic_search" })

Single-event funnels

You can create a funnel with a single step to use cohort filtering on any event. This answers questions like "how many mobile users from Germany signed up?" without needing a multi-step funnel.

"How many mobile users from Germany signed up?"

→ create_funnel({
    name: "signup-cohort",
    steps: ["signup"]
  })
→ get_funnel({
    name: "signup-cohort",
    country: "DE",
    device_type: "mobile"
  })

Funnel response

Each funnel query returns step-by-step results:

Response shape
{
  "name": "pricing-to-checkout",
  "steps": [
    { "step": "pageview:/pricing", "visitors": 1200 },
    { "step": "signup", "visitors": 240 },
    { "step": "checkout_completed", "visitors": 48 }
  ],
  "overall_conversion": 4.0
}

overall_conversion is the percentage of step 1 visitors who completed the final step.