Funnels
Manage multistep conversion funnels with the Clics TypeScript SDK to measure drop-off between steps.
A funnel is an ordered multistep conversion path. It shows how many visitors complete each step and where they drop off, for example Cart → Checkout → Thank you.
Funnels are optional. Create them when you need step-by-step drop-off analysis beyond single conversion goals.
How funnels work
Each funnel has:
- Steps: at least two, in order. Each step has a name and one or more filters (page, event, country, UTM, etc.)
- Conversion window: time allowed to complete all steps after the first step (e.g.
{ value: 7, unit: "days" })
Visitors who match step 1 within the window and later match step 2 count as progressing. Results appear in the dashboard Funnels view.
Step filters
Each step filter has a filterType, operator, and values:
| Filter type | Example use |
|---|---|
page |
Visitor viewed /cart |
event |
Visitor triggered add_to_cart |
country, device, browser, os |
Segment by visitor attributes |
utm_source, utm_medium, … |
Segment by campaign |
Operators: is, is_not, contains, not_contains.
Environments
Like goals, funnels are scoped per envId (production or development). Default is production.
Typical workflow
- Define steps that mirror your user journey with
createFunnel - Test in
developmentbefore pushing to production - Use
listFunnelsandgetFunnelto export or sync definitions from CI - Update only the fields that change with
updateFunnel; passingstepsreplaces the full ordered step list
Methods
Access funnel methods via clics.funnels.
Related
- Funnels in the dashboard: visualize drop-off in the UI
- Goals: single-step conversions (often used as funnel building blocks)