Journeys Overview and Creation

Availability

The Journeys feature is available in Countly Enterprise and as an add-on in Flex.

This feature is available from version 25.03

Journeys allow you to design user flows based on specific triggers and deliver targeted content (e.g., in-app messages). You can track performance metrics and iterate by publishing updated versions

Feature Dependencies

Journeys require the Content Builder feature to create and deliver content. Ensure Content Builder plugin is enabled before you proceed further.

Getting Started

1. Enable Journeys via Management → Feature Management.

2. Navigate to the Journeys tab.

3. Click “+ New Journey” to begin.

See this guide to implement in-app messaging with Journeys and Content Builder.

For an overview, see the explainer.

Overview

You can start your journey by going to the Journeys tab under the menu.

When you click, you will be directed to the Journeys screen.

Journey Listing

The Journey Listing table shows all previously created journeys.

Fields:

Name - The name of the journey.

Users Entered - Number of times the journey started. A journey starts when a user triggers the first step.

Flows Completed - Number of times users reached the end of all steps before the engagement block (i.e., became eligible for content).

Status

  • Draft: Editable and not active

  • Running: Published and active

Journey Creation

You can proceed to the step of creating a new journey by clicking the "+New Journey" button in the upper right corner of the Journeys home page.

When you click the "+New Journey" button you will be redirected to the below step.

The structure of this step consists of 3 stages.

A header where you can see Journey Information in the top panel

Steps you can add to your flows in the right panel

A flow diagram showing your flows in the middle panel

 

Header:

The header consists of a close button, a toggle for you to publish, meta information about the journey, an editor where you can make changes to the flow, a result tab where you can see see the metrics when you publish the journey, the status of the journey, a save button for you to save your changes, and a three dots button where you can perform multiple operations on your journey.

Right Panel:

In the right panel you will see a list of steps you want to add to your flow.

A journey must start with a trigger. This is a step you need to take to start your journey and engage your users with your journey.

Trigger blocks are as follows:

1- Profile Update Block

When the “Profile update” trigger block is selected, the journey listens for a profile update event. When a profile update event is received, the journey starts. You can add additional filtering by using query builder.

When you define a filter, it is not enough for the relevant event to be triggered for that block, it must also meet the filter conditions. This logic works for all block types.

For the example below, it is not enough to receive a user update event, the journey starts when an update information is received on a user using the Android platform.

2- Profile Group Entry Block

When “Profile Group Entry Block” is selected, the journey waits for “Profile group entry” event. Whenever a user or users are added to a profile group that is selected in block configuration, the journey starts.

For more detailed information on how profile groups are defined, please visit Profile Groups documentation.

3- Profile Group Exit Block

Similarly “Profile Group Entry Block”, when “Profile Group Exit Block” is selected, the journey waits for “Profile group exit” event. Whenever a user or users are removed from a profile group that is selected in block configuration, the journey starts.

For more detailed information on how profile groups are defined, please visit Profile Groups documentation.

4- Cohort Entry Block

When “Cohort Entry Block” is selected, the journey waits for the “Cohort Entry” event. Whenever a user or users are added to the cohort that is selected in block configuration, the journey starts.

For more detailed information about Cohorts, please visit Cohorts documentation.

5- Cohort Exit Block

Similarly “Cohort Exit Block”, when selected, the journey waits for the “Cohort Exit” event. Whenever a user or users are removed from the cohort that is selected in block configuration, the journey starts.

For more detailed information about Cohorts, please visit Cohorts documentation.

6- Journey Exit Block

There may be cases where the completion of a journey triggers another journey. For these cases, we have a “Journey Exit” trigger block. In the block configuration, you can select the journey that is going to be waiting to be completed to start the journey.

In the Journeys section, all the journeys you have defined in that application will be listed. You can choose the journey that suits you from there.

7- Consent Block

Consent trigger block is used to listen to consent change. When the “Consent block” is selected as a trigger, the journey listens to consent change events. If the incoming event also matches the filter conditions that are defined in block configuration, the journey starts.

As we offer in some blocks, you can customize the consent change with filtering.

8- Crash Block

With the crash block, you can listen to the crash events that occur in your application and start your journey according to these events.

As we offer in some blocks, you can customize the crash event with filtering.

For more detailed information about Crashes, please visit Crashes documentation.

9- Push Action Block

Push Action block is used to listen to push action events. When a push action event occurs that matches the filter conditions selected in the block configuration, the journey starts.

As we offer in some blocks, you can customize the push event with filtering. You also will be able to filter according to the segments of push action events.

For more detailed information about Push Notifications, please visit Crashes documentation.

10- Session Block

Session block is used to listen to session events.

As we offer in some blocks, you can customize the session event with filtering.

For more detailed information about Sessions, please visit Countly Terminology documentation.

11- View Block

View block is used to listen for view events. When a view event occurs that matches the filter conditions selected in the block configuration, the journey starts.

As we offer in some blocks, you can customize the session event with filtering. You also will be able to filter according to the segments of View events.

For more detailed information about Views, please visit Countly Terminology documentation.

12- Events

Events block is used to listen for the events in your application.

As we offer in some blocks, you can customize the session event with filtering. You also will be able to filter according to the segments of your custom events.

In the events section, you can either choose one of your defined events or create a new one by clicking "+ Add Event" button.

For more detailed information about Events, please visit Countly Terminology documentation.

13- Feedbacks

Feedback trigger blocks are used to listen events from feedback widgets. First, you must select the feedback type.

Then you will be viewing the widgets you created for the feedback type you selected.

As we offer in some blocks, you can customize the feedback events with filtering. You also will be able to filter according to the segments of your selection.

For more detailed information about Feedback, please visit Feedback Overview documentation.

You can start your journey according to the trigger types above. New supported types will be added in the future. You can then continue your journey with other block types to design, customize, and add flexible options to fit your flow. Those block types are as follows:

1- Engagement Blocks

Engagement blocks are used to engage users with some content such as push notification, in-app message, email. Currently we have in app message.

  • In-App Message Block

In-app messages are the contents that are displayed in a website or mobile application to the end user in custom cases during the execution of a journey. In the following journey "Save 10% on your next purchase with this coupon!" screen is displayed when a DISCOUNT_10 event is fired by the user


To add in-app message block, first user clicks on + icon of the preceding block, then select In-app Message. In-app message block has the following configuration options:

  • Content Block:The content block that is defined in Content Builder is selected. You can either choose defined content or create a new one. Check out Content Builder documentation to see in detail how you can create content.

  • Priority:Priority of the message. It can be low, medium or high. There may be cases where more than one message is displayed to the user.

  • Expiry:Expiry period of the message. The message will not be displayed to the end user when it passes the expiry period.

You can also see the preview of the content that will be displayed to end user.

Logical Blocks

  • Wait For a Trigger Block

"Wait for a trigger" block is used to pause journey until a triggering event happens.

In the example below journey starts with the DISCOUNT_10 event and waits for the view trigger. Journey waits at this block till the user clicks the "Purchase" page that is selected in the trigger configuration. As a trigger, you can select the trigger blocks that are listed above and configure each of them as described. When the trigger event is received journey continues. In this example, In-app message is sent to the user.

  • Wait For a Period of Time Block

This block is used to make journey wait for a custom amount of time.

In the example below journey starts with the DISCOUNT_10 event. Waits for 15 minutes. After that time period passes journey continues and sends in-app message.

  • Wait For a Specific Date Block

This block is used to make journey wait till specific date time.

In the example below journey starts with the DISCOUNT_10 event. Waits till "Jan 28 2025 6:00 PM". When the date is Jan 28 2025 6:00 PM journey continues and sends in app message.

  • Continue If Block

Continue If block checks condition in order to continue to the journey.

You can use filtering to define your condition.

If the Add Else switch is turned off, the journey continues with the next block when the condition is met. If the condition is not met, the journey ends.

By activating the Add Else switch, you can also define blocks and provide customizations for the case where the condition is not met.

  • Switch Block

Switch block is used to evaluate multiple conditions in sequence. You can define these conditions using the query builder—just like in other blocks—and reorder them as needed.

When the Switch block executes, it checks the first condition. If it’s met, the journey continues along that branch; if not, it moves on to the second condition, and so on. In other words, the conditions are evaluated in order, and the journey follows the branch of the first condition that is satisfied. If multiple conditions are true, only the branch of the first matching condition is executed. It’s important to note that branches in a Switch block do not run in parallel

Was this page helpful?
Reach out to us for any other questions.
Helpful?

Looking for more Help?