A funnel is used to track a user's progression from one step to another. A typical progression might be: adding an item to the cart, viewing the cart, and then completing the checkout process. You can create a funnel with these three steps to find out where your users are dropping off.

Set up a Funnel

You can use events or states when creating a funnel. For our example, we'll create a checkout funnel with custom events for Add to Cart, Cart, and Checkout.

  1. Click the + metric tile to view the metric catalog.
  2. Select the section in the left pane called funnels.
  3. Click "create new funnel".
  4. In window, add a new funnel step based on an event/state for each step in the flow. We'll enter Add to cart, Cart, and Checkout.

Reading funnel metrics

Once you create the funnel, click on the tile to render the chart on the main screen. Once the chart is visualized on the main screen, click on the expanding option below. This provides additional details about the funnel. You can see:

  • the conversion between each step
  • the number of occurrences
  • the number of users that completed each step
  • the transition rate between each step
  • the time it took on average between each step.

Enforced vs. unenforced funnels

Enforced funnels means that a user must have done the first step to count in the next and so forth.

Unenforced means that if the user did the second step but not the first event, they would still count in the second step. This can result in the second step having a conversion higher than 100%.

For the most part, Leanplum's funnels are unenforced.
In order to build and analyze enforced funnel in Leanplum Analytics, we recommend enforcing the event's consecutive tracking within the user flow of your app.
For example, let's say you have 3 onboarding screens and the user is enforced by the flow of your app to pass through all of them and cannot just open one of them.
That way you are making sure that if a user has triggered the event for screen 2 he has also triggered the one for screen 1 and you can analyze with a funnel where the user drops.

Another option would be for you to use a different event name and track that event when consecutive actions in your app occur.
Here is an example:

Let's say you are proposing different offers for users to buy inside your app and when a user selects an offer the event select_offer * is tracked.
Then if a user purchases that offer you will not only track
purchase event but also a purchase_offer which will indicate that the purchase was done after an offer was selected.
That way in Leanplum you can set an enforced 2-step funnel to measure the conversion of the purchases done after a
select_offer where the first step will be the event select_offer and the second purchase_offer**.

Leanplum Analytics is also providing the necessary data you need to build manually enforced 2-step funnels by taking the data from 2 different metrics and making the calculation in a separate tool.
This is also a possible workaround to calculate conversion between 2 events and simulate an enforced type of funnel.

Here is an example, how that can be done:
For this example, let's imagine that the funnel you want to build has 2 steps: CART_START_CHECKOUT_PROCESS and then PROCESS_PURCHASE.

  1. Get the cumulative occurrences of the first event of the funnel for the desired period:
  1. Get the cumulative occurrences of the second step of the funnel while filtering by the previous occurrence of the previous step of the funnel (for the desired time window):
  1. Build the funnel separately using the above numbers:


Take in mind the following limitations of the above workaround:

  1. This method does not work if the funnel has more than 2 steps.

  2. If a user enters the funnel (triggers the first event) and then triggers the second event twice it would be counted as 2 occurrences of the second step, instead of one. If this happens often it may skew the results.