CX Journeys Winter 2022 Release Notes

Released starting January 2022.


Support for stored procedure calls

To extend programmatic capabilities, the ability to execute a stored procedure written in SQL has been added. 

A procedure is created in BigQuery database by your PS team as follows: 

The following procedure can now be executed from the CQL Editor:  

To view the result in the database, enter the following:

Creating a churn predictive model out of the box 

CX-Journeys provides an out-of-the-box Churn Prediction model that is based on customer behavior in the last 90 days. 

To build a model in your project, select the option “BQML” under the Add Model menu.  

Then select the CHURN model from the list of Template Models

Within a few minutes, the system creates a table called CHURN_TRAIN_TABLE in the schema and your models list will contain the new churn Model. 

To use the model for churn prediction, use the following syntax (modify the date_range and the filters in line 43): 

The results tab should display the prediction (churn/return) for each customer as well as the probabilities of that classification. 

returned[{v={f=[{v=returned}, {v=0.54758768975067418}]}}, {v={f=[{v=churn}, {v=0.45241231024932582}]}}]6677906950825497643
returned[{v={f=[{v=returned}, {v=0.75351409543443248}]}}, {v={f=[{v=churn}, {v=0.24648590456556752}]}}]5758572130776445936
churned[{v={f=[{v=returned}, {v=0.031422519444205883}]}}, {v={f=[{v=churn}, {v=0.96857748055579407}]}}]6181753117297146221

In the above example, the first column predicted_churned contains the predicted behavior of our customer. The predicted_churned_probs column contains the probabilities for the model prediction. 

Adding a new BQML Model to predict results

Similar to the above example, you can add a new Big Query Machine Learning (BQML) model in your database. Work with your PS team to update the model in your database. 

You can register and use your BQML code using the “Add Model” feature. 

Our team can help you to build LTV and other predictions models directly in your database. 

IP address of the NAT

NAT servers have been upgraded to enhance security.

Ensure that your firewall accepts connection requests from Medallia IPs, when adding a new linked data source. 

New UI capabilities and enhanced report builders

New report visualization: Bubbles

Bubble chart visualization aims to look at relationships between three numeric variables.

Each dot in a bubble chart corresponds to a single data point, and the variables’ values for each point are indicated by horizontal position, vertical position, and dot size.

Each dot is assigned a label or category (either displayed alongside or on a legend). Each plotted dot represents a third variable by the area of its circle.

Colors can also be used to distinguish between categories or used to represent an additional data variable.

To select the Bubble chart visualization, select the Bubble option in the reports visualization menu. 

You can also define a conditional color formatting based on the third column value.

New report visualization: Sparkline

Sparkline Chart (or simply Sparklines) is a tiny-sized chart, causing (or being made possible by) the absence of axes or any notes, which makes it impossible for viewers to see precise values. Sparkline Charts are great at showing the big picture.

There are tree types of Sparklines:

  •  Line Sparklines, the simplest and most common type of a Sparkline Chart that consists of points connected by line segments.
  •  Area Sparklines, a Line Sparklines graph in which the area between the series and the X axis is filled with color.
  • Column Sparklines, a Sparklines-based data visualization where each point is depicted as a vertical rectangle, the height of which corresponds to the data value it represents.


When selecting line/area/bar chart, you can switch on the “Spark Line” toggle and then select the aggregation Function (AVG/SUM…) , the font size, and the text color of the big number.  

Report visualization option in the reports list 

In the reports list, an icon now appears that describe the visualization of that report. 

Quick edit for reports on the dashboard 

To edit the report settings (standalone or in a dashboard), select the Quick edit icon in the report header. 

The settings menu will appear where you can modify the existing report’s settings. 

You can choose to save the modified settings or exit without saving changes. 

Change visualization of reports in dashboard

To modify/change report visualization (standalone or in a dashboard), select the Visualizations icon in the report header.

The visualization menu appears appear where you can modify the existing report’s visualization. 

You can choose to save the modified settings or exit without saving changes. 

Journey analysis based on a virtual property

In the path builder, you can now create a path based on a virtual property (expression). 

To do this, first create  a new virtual property based on any CQL function.  

Then select that virtual property in the path builder widget and show the journey of customers across that property. 

Dashboard titles

Long names are now enabled for dashboard titles.

Renamed Data Sources page

Clone Project’s dashboards/reports

Clone Project’s dashboards and reports also clone the drill through the relative report.

Event trackers


A new version of iOS and Android SDK has ben released. 

Replacing Android SDK

The “aar” link is 

Update As a Gradle dependency:

implementation ‘’ 

Update As a Maven dependency:








Download aar and copy it into the “libs” folder in your Android project. 

Validate that you have the OkHttp library on your classpath as well. 

Replacing iOS SDK

The new version is located in Download the latest iOS SDK.

Update your 
platform :ios, ‘9.0’

target ‘MyApp’ do
pod ‘CoolaPod’, :git => ‘’;

Print Friendly, PDF & Email

CX Journeys Winter 2021 Release Notes

Released starting November 2021.

New UI capabilities and enhanced report builders

New visualizations and and other enhancements have improved the UI capabilities.  

Excluding conditions using the “Not” toggle 

Path reports can now select paths that are NOT matching a certain criteria. For example, you can see all the journeys that are starting with anything but "Registration", that are not followed by a "Purchase" event, but are followed by an "Item Selected" event. 

You can switch the "Not" toggle on/off to build the report, as follows:

You can also use the translated CQL version of the report using the keyword “NOT” in our syntax, as follows:

Journeys that “Match” certain events

You can use the “match” criteria to ensure a certain event is part of the journey.

As shown below, the results include both the paths that start with the “reload” and paths that contain “reload” in a different position. In both cases, the “reload” event is followed by the event “Navigate” . 

Results are as follows:

Scatter-Plot Visualization

This release includes Scatter-Plot visualization, which enhances capabilities to present segment’s values distribution. Scatter-Plot is used to visualize the relationships between data in two dimensions and emphasize the differences between segments. 

Once that visualization is selected in CQL/KPI widgets, the setting allows you to switch between the X and Y axis, modify the labels, and hide partial values just by clicking on them.

Improved SanKey visualization

The Sankey journey visualization has been enhanced to display the top 50 journeys on a graph (previously, it was 15). The graph attributes were modified to show more pillars (touchpoints) on the screen.

New Solution “Contact Center” template added to out-of-the-box projects with cloning capabilities

The solution is based on data imported from the MEC contact center and contains a schema design, metadata calculations, reports, and dashboard. For more information please use this link. To create a copy of the template, click the “New project” icon.

Then apply the required information on the following settings page: 

Alphabetical order in “Cohort by property”

Select the property name (“ip_country” in the following example) to sort the cohort results in alphanumeric order (Ascending/Descending), not only by the cohort size.    

New database functionality added — Support Stored procedure and user-defined functions calls

Support User Defined Function (UDF)

You can now execute user_defined functions enabled in CX-Journeys parser. Developers can now create a function in BigQuery written in SQL or JavaScript and operate it in a report. 

In the following example, a function was created that calculates Levenshtein distance between 2 strings in BigQuery (by your PS team). You can now execute that code using the prefix BQROUTINE in the function call, as show in the following examples:

Result: 0

Result: 0

The function is created in BigQuery as follows: 

AS (concat(x,y));

And is callable from any part pf the CQL. For example: 

Machine learning model calls supported 

If your data scientist created a machine learning model for you in Google BQML to predict or classify your data, the parser can now display the model prediction results in CX-Journeys. 

For example, in an out-of-the-box model we created in our Contact Center Solution to classify the segment of your customer based on behavioral history, the results of the prediction could be presented in CQL as following:

On the result page, you will see the predicted value of the segment (0/1/2) and the probability of that prediction. 

The following model functions are now supported: PREDICT, FORECAST, DETECT_ANOMALIES, RECONSTRUCTION_LOSS 

New published case studies

Our product marketing group worked with our customers and created a case study with our customer Lior Ash from Here is a Link for this case study. 

More case studies will be created soon.

Updated documentation pages

Modifications to our documentation are ongoing, covering the new features and enhanced content.  

Accessibility (WCAG 2.1 AA compliance)

CX-Journeys has improved and passed WCAG 2.1 AA Assessment compliance requirements. 

Print Friendly, PDF & Email

CX Journeys Spring 2021 Release Notes

Released starting June 2021.

Experience Cloud Connector

CX Journeys can now ingest respondent data directly from Medallia Experience Cloud. Experience Cloud writes the respondent event data to a CSV file. Using this connector, CX Journey periodically collects the CSV file(s) and adds that data to the CX journey for each identified respondent.

Note: This feature is only available to super users (Medallia Professional Services).

To implement the connector use the Medallia Experience Cloud Integration wizard to:

  1. Identify the CSV file to ingest, and identify the CX Journey fields that uniquely identify the respondent (users). The default fields are Phone and Email.
  2. Map the fields in the CSV file that identify the respondent (user) to their corresponding CX Journey fields.
  3. Define the events to collect. For each define:
    • Event name — The name of the event, such as “page_load” or “add_to_cart”.
    • Event timestamp — Date/time when the event occurred, which is usually the time when the event record was created: “Creation Date”
    • Additional properties included in the event file and which need to be recorded as part of the event in CX Journeys.
  4. Specify a name for the connector and define the schedule of when to collect events. Optionally include an email for whom to notify if an error occurs during the ingestion.

Amazon S3 & SFTP Integrations

Project administrators (and above) can now connect their data to CX Journeys integration table using Amazon S3 & SFTP as the data source.

Print Friendly, PDF & Email

CX Journeys Fall 2020 Release Notes

Released starting 3 September 2020

Path Builder

Path Builder now has these enhancements

Expand events (Events breakdown by properties)

Users can now choose to expand the results of path analysis by a particular property to see how it may impact customer journeys. Each event can be expanded by a single property. For example, users can break down the “add_to_cart” event by the “item_name” property to see the most common items added to cart.

To to do so, under path analysis click the “Expand Events” button, and choose the desired event:

Reverse order

Users can create Sankeys that appear in reverse order to focus on the end of the path and present the results from right to left. To enable reverse order, on the report settings turn on the “Reverse order” toggle: 

Hide drop offs

For some of the journeys use cases, the focus is more on the journey’s side and less on the drop-offs. Now, with a simple click (under visualization settings) users can hide drop offs from the Path report visualizations. 

Print Friendly, PDF & Email

CX Journeys Spring 2020 Release Notes

In this product update you will find updates on:

  • Export Segment
  • Import Segment
  • Roles

Export Segment

The Export Segment enables exporting a set of users from CX Journeys platform to different destinations such as Google Bucket, S3, and SFTP (SSH).

Which formats are being supported?
The supported formats are CSV and JSON.

Who can export segments?
Each project user can export segments.

Which projects support import segment
At the moment, we provide the solution for new project architecture. To check whether your project supports the export please contact Professional Services.

So how can I export a segment?
Under the segments section, clicking on the 3 dots button (on the right corner for each segment) will open for you a drop down list, the 3rd option will be Export.

After clicking on export, the following screen appears:

  • Supported formats are CSV and JSON (with an option to Gzip the file)
  • In the export attributes option the users will have to pick the desired user attributes to be exported

Now you’re ready to move to the 2nd step!

In the 2nd step, the user will be able to choose one of the following options:

  • Google bucket
  • S3
  • SFTP (SSH)

Google Bucket

  • Destination URI – the location address of the bucket destination
  • Google bucket connection approach
    • CX Journeys Service Account Address – In the following approach users will
    • have to copy CX Journeys Address and paste it in the relevant bucket. In the bucket browser (in GCP) Under permissions tab, click add members, and pick a role for the permission. The minimum role needed is “Storage Legacy Bucket Owner”.
    • Another approach that can be used is creating a custom role (under roles section) with the following permissions:
      • storage.buckets.get
      • storage.buckets.getIamPolicy
      • storage.objects.delete
      • Storage.objects.create
    • After the role has been created, click add members, and pick the role created for the permission.
    • Service Account Key – In this approach, the user will have to create a service account in Google Cloud
      • Under IAM & Admin click Service Account, and then create service account
      • After completing step 1 and 2 (no need to add permission), In the last stage of the user will need to create the key in JSON format, and upload it to the wizard


The following fields should be filled:

  • Destination URI – The location address of the bucket destination
  • Region (default is US East N. Virginia)
  • Access Key ID – The user identifier for the bucket destination
  • Secret Access Key – The user password for the bucket destination


This option is fully customizable by the user, depending on the location of the address. The following fields should be filled:

  • File Path – The required folder for the SFTP file
  • Host Name – The location address of the SFTP server
  • Port (usually 22)
  • Username
  • Password

Once the configurations have been set, the user will be able Test the connection, and/or move to the last step.

The user will have to save two last preferences regarding the process:

  • Scheduling/one time operation (manual)
  • Notification to email whether the import failed for any reason
  • Save/Save and run now

Import Segment

The Import Segment enables importing a set of users to the CX Journeys platform, using manual file upload or the project Google Bucket source.

Which formats are being supported?
The supported formats are CSV and JSON, however different extensions (json, jsn, csv, txt, gzip, zip & no extension) are being supported as well

Who can Import segments?
Each project user can import segments

How can I import my own segment?
Under the segments section, clicking on the + button (on the top right corner) will open you a drop down list, the 3rd option will be Import. User will be able to choose from two options

  • Import from Google Cloud Storage
  • Upload local file

Google Bucket

Choosing the Google cloud storage shows the following screen:

  • File: clicking on the browse button will allow the user to choose the desired file from the account source bucket. If you don’t have access to the source bucket please reach your account admin or professional services.
  • Creating new user option allows the user to import new users to the platform
  • Update users option allows the user to update the users existing attributes
  • Unify users allows the user to unify multiple users records to a single user, according to the identity source logic. (Recommended state is No)

Manual upload:

Manual upload approach holds the same functionality, the only difference is the size limit of 50MB.

After completing the 1st step, steps 2 are completely equal, between two options the user will reach to the mapping step.

On the left side the source file properties will be shown, while on the right side the tool will recommend the desired fields (properties) that will be mapped. In addition, for each property the platform will recommend the property expected type, which can be modified by the user (only for new properties).

For each property the user can choose the following options:

  • Add the property as a new property (whether there’s no existing property in the platform)
  • Ignore the property
  • Map the property to an existing property

Note: In the mapping stage the user has to map at least one identifier field (in the mapping fields)

Once the mapping have been set, the user will be able to reach the 3rd and final step.

The user will have need for last couple of preferences regarding the process:

  • Segment name
  • Scheduling/one time operation (manual)
  • Notification to email whether the import failed for any reason
  • Save/Save and run now


Roles are a group of users who hold the same permissions, either for a project or dashboard. Once you add a role to the dashboard (or project), all the users of that role immediately get the same permissions.

Who can manage Roles?
Roles are being managed by the Account Admin.

What is an Account?
Account is the new parent hierarchy for project management. Means that one account can hold several projects which can be easily navigated between (Settings -> Active Project).

As a result, “Account Admin” user level has been added. For each account, only account admins will be able to create new roles.

How can I create a new role? 
Click on User icon -> Roles -> + Button

Each role can be related to several projects and/or several dashboards (left side). On the right side the account admin can add all the relevant users that will be part of the role.

Can I share a dashboard to roles?
Sure, clicking on the dashboard share button will allow users to manage their share preferences for users and roles.

If I’m a project admin, can I provide a role permission?
Yes. A role permission to a project can be provided (or removed) via the permissions section (Settings-> Permissions -> Roles Tab).

Print Friendly, PDF & Email