Availability
The Journey engine feature is available in Countly Enterprise and as an add-on in Flex.
This feature is available from version 24.12
Journey Listing
You can access journeys via main menu > journeys
You can list existing journeys. You can see the journey name, number of users that entered that journey and how many journeys are completed.
Journey Creation
You can create a new journey by clicking the “new journey” button. There you can define your journey flow in the journey editor. You can add journey blocks from the right side pane depending on your needs. You can save the journey even if it is not complete. As long as it is in draft status you can edit journey and use it as a playground. However, journey must be complete in order to be published.
Each journey starts with trigger block. Trigger blocks catches the events triggered by SDK or internal actions inside Countly.
Trigger Blocks
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. For instance, you may filter as “Country is United States”. The filtering option is common for most of the block types.
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.
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.
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.
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.
Journey Exit Block
There may be cases where 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 in order to start the journey.
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.
Crash Block
Crash block is used to listen crash events. When a crash occurs that is matching the filter conditions selected in block configuration, journey starts.
Push Action Block
Push Action block is used to listen to push action events. When a push action event occurs that is matching the filter conditions selected in block configuration, journey starts.
Session Block
Session block is used to listen to session events. When a session event occurs that is matching the filter conditions selected in block configuration, journey starts.
View Block
Session block is used to listen for view events. When a view event occurs that is matching the filter conditions selected in block configuration, journey starts.
Events
Events block is used to listen for custom events. You can customize the configuration with query builder as in other trigger blocks.
Feedbacks
Feedback trigger blocks are used to listen events from feedback widgets such as NPS, Star Rating and Survey. Like in other trigger blocks it is possible to add filtering. User selects the feedback type (NPS, Star Rating, Survey) and then selects the widget and finally filtering (optional). For instance, you can create journeys which are triggered when rating is below or above some specific value for some specific users.
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. For instance in the following journey "Happy new year" screen is displayed when a profile update is done.
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. Check out content builder section to see how a content is created.
- 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
Logical blocks are the blocks that controls the flow of a journey depending on the journey or user data. Logical blocks are similar to conditional blocks in programming languages with some differences.
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 profile update and waits for cohort entry trigger. Journey waits at this block till the user enters a cohort that is selected in trigger configuration. As trigger you can select the trigger blocks that are listed above and configure each of them as described. When 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. Here in this example, journey starts with Profile update trigger. Waits for 1 day 2 hours and 30 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. Here in this example journey starts with Profile update trigger. Waits till "December 5 2024 2:15 PM". When the date is December 5 2024 2:15 PM journey continues and sends in app message.
Continue If Block
Continue If block checks condition in order to continue to the journey. It is like "if condition" block in that is commonly used in programming languages. You use query builder to define the condition. If the data passed to the journey during the execution matches, journey flows continues. If the condition is not met, journey ends.
It is also possible to add else branch. If "else" branch is added, journey will continue on "else" branch if the condition is not met.
Switch Block
Switch block is used to check multiple conditions. Conditions can be defined using query builder like in other blocks. It is also possible to change the order of conditions. When switch block is executed, first condition is checked. If the condition is met, journey continues with that branch. If the condition is not met, second condition is checked and so on. In other words, the conditions are checked in the order and workflow continues with the branch of matching condition. There may be the cases where multiple condition is met. In those cases, the branch of the first condition that meets the criteria is executed. It is important to know that branches of the "switch block" are not run in parallel.
Publishing Journey
After clicking on the "Save" button journey is saved in "draft" status. In order to be actively used, journey must be first published. Click on publish switch and confirm to publish the journey. When journey is published it's status becomes "active". Journey definition must be complete. All the mandatory fields in the block definitions must be filled. Journey must have at least one engagement block. The branches of logical blocks must have at least one engagement block. Incomplete journeys can not be activated.
Editing Journey
In order to edit the journey, first you must unpublish the journey. After that you can add/edit/delete the blocks of the journey. There are some essentials tips to know when you edit a journey.
- You can not delete a block if block has subsequent block. Delete button is deactivated. First you must delete the last block in the journey. For instance, in the journey below you can not delete the in-app Message block in the middle. First you you should delete the last one
- When you are done with changes, you save the journey by clicking "save journey" button. You have to publish the journey again in order to make journey active. If there were already running journeys before your change they will be run with the previous version of the journey. New journeys that are started after your changes will be run with the actual changes.
You can also rename the journey by double clicking journey name on top left.
Journey Duplication
You can duplicate a journey by clicking three dot button. On the menu select "duplicate journey" to duplicate the journey.
Click OK in confirmation pop up
A copy of the journey will be created with the name <your_journey_name>(copy) and you will be redirected to listing page.
Journey Deletion
You can delete the journey by clicking on three dot button. On the menu select "Delete Journey"
Click "OK" in confirmation pop up.
Journey will be deleted. Important thing is the journeys that are not completed yet will continue but new journeys will not be executed.
Journey Results
You can monitor performance of your journey in results tab. Results tab give you insight about how much the journey you have defined is used, if the users could complete the journey or if there is a bottleneck, the success rate of your engagements.
You can query results by time range. By default it shows "all time" results.
Result Summary
The first four titles gives you summary about your journey
Started Journeys - Started journeys tile shows the number of times journey started in the selected period.
Completed Journeys - Completed journeys tile shows the percentage of journeys which users successfully reached the end of the journey
Incomplete Journeys - Incomplete journeys tile shows the percentage of user dropped off the journey by not passing a filter or a condition. Journeys in progress are not counted into this metric.
Journeys In Progress - Journeys in progress tile shows the percentage of users who have started the journey but not finished yet.
Journey Performance
Journey performance chart shows the performance over time by number of started journey, completed journeys, incomplete journeys, journeys in progress metrics.
In App Message Overview
In-app message overview gives you insight about how much engagements in journey are successful in given period.
Total Sent
Total sent is the number of in-app messages that are sent to the end users
Open Rate
Open rate is the percentage of the messages that are opened by users. Higher percentage means higher engagement success.