The Flow tool is our visual communication builder that helps you reach the right audience at just the right time and using the right channel.
How do you do that?
By adding the behavior-based audience segments in Flow and designing a communication triggered by events such as purchases and user registration or the way customers interact with your messages. Choose the channels they prefer, but also combine different channels to make sure your message reaches them. You can go for email or SMS messages, talk to them via WhatsApp or Viber, or answer their calls in IVR. All is possible in Flow!
On this page, we explore the basics involved in managing such communication:
• Building a flow
The following is a quick guide that shows what are the options for starting a flow, what templates or individual flow elements (for example, channels like SMS, Email, Viber, WhatsApp, and others.) you can use, and how to launch the communication.
Start from Scratch
To design your own custom flow, sign in to our web interface, navigate to Moments, select Create Flow, and Start from Scratch.
Start from Scratch takes you to the page where you need to decide which starting point to use for your correspondence.
Use a Template
The flows you create can be saved as custom templates for future use. But, you can also turn to the predefined ones if they fit your needs. For example, you might want to use the existing templates to send a welcome message, appointment reminder, cart abandonment reminder, and more.
Complete the initial steps that we have already described, and you will land on a page where you can select a communication starter: entry point. Read instructions for each of them and select the one that best serves your planned communication.
The selected entry point will take you straight to the Flow canvas. If you change your mind, delete it right there and add a new entry point.
Each one of them comes with a set of accompanying features visible in the side panel that will help prompt your communication in the right direction.
Remember to give a name to your communication. Next, you could add a channel to send a message to customers.
Say you would like to use SMS:
- Click the three-dot menu to add it to the flow.
- Give the SMS element a name: This action is important when you are planning to track how customers react to your message. Then, later on in the flow, you could send another message to the recipients by referring to this specific SMS. Or, you could even add it to an entirely new flow or flow version. Renaming is available for all channel elements available in Moments and for the failover element.
- Enter the sender and content.
- Scroll down to check out other options, such as scheduling your messages.
The channel you just added can be unselected if you want to use some other element: First, click the arrow and then the red dot that will appear.
Use different combinations of channel elements, functions, and IVR actions to organize perfect communication.
Find settings at the bottom of the Flow and think which ones would be applicable to your use case:
- How many times one person can enter one flow
- Communication goals that will be tracked and analyzed
- Setting the time zone and sending time
In addition, use the three dots menu if you want to do any of the following: save this specific communication for future use and make it available on the templates page, duplicate the flow, or delete it if you believe you won`t need it anymore.
Before adding a customized event, you need to set it up in the People module.
If something is missing, such as required information inside the channel elements (subject, sender, etc.), the name of the flow, or any conditions (events, attributes, keywords, or similar) and their values, a notification will appear alerting you about what needs to be done.
The exit element will be automatically added to the final flow for each of your branches; you don`t have to add it manually.
After you have validated the flow and potentially made any corrections, a lift-off page will appear so you can once more check if everything is ready to launch the communication. For example, you will see the following information:
- Who will enter this flow (in this case, people who added items to their cart)
- What to do if you don`t want your customers to enter this flow more than once
- Footer options and how to change them
If all is good, click the Launch Now button and the communication will be set in motion.
You will be taken back to the All Communications page displaying all your campaigns, no matter their status: active, in progress, paused, scheduled, drafted, failed, canceled, or finished.
The one you just launched will have an active status. Click on the card if you want to see it again.
However, if you don`t want to activate the communication right away, use the scheduling option inside the Flow Settings to set up the time, date, and time zone. This flow will appear on the list as scheduled.
For scenarios where the flow does not have to be launched right away, don`t click Launch Now. Just exit the launch page and the entire communication will be saved as a draft.
After the flow has been launched, you might want to adjust the message content that you are sending to your users, add one more communication block, or even change the goal of the entire communication. To allow for all this, we have Flow versions.
Versions are helpful in the following situations:
- If you need to do a small change to the running flow. It could be, for instance, a minor spelling error in the message.
- If you need to continue the current flow but want to change its goal, frequency, or set it up to run indefinitely.
- If you want to make a small change that will apply to all the new person profiles that will enter the communication flow.
When you are ready to change the running flow, click Edit Flow > Create New Version.
It is not possible to edit flows where update audience is marked as 'Never' for the Predefined Audience entry point. It is currently only possible to edit if the audience is a real-time audience.
The changes to the Flow will not be applied until you Validate and Launch the new version. The new version will show as a draft, and the old one will be active.
And you don`t have to worry, the old one will keep running until there are no people inside it. It will appear on the flow list as a communication with the finishing status, and that means that there are still some customers inside it. They will complete their customer journey without interruptions.
If you modified the scheduling options in the new version – changed dates or set up flow as indefinite – these will be applied to all versions.
Meanwhile, the `new persons` who match all the conditions for entering your communication will become part of the new flow as soon as it has been launched.
The flow entry point that you used to start the original communication will remain. If you try to remove it, you will get a message stating that it can`t be deleted. The communication flow with the Predefined Audience entry point can be duplicated, but you can`t create a new version.
Go ahead, update the new version of the flow with desired changes, and then Validate and Launch it.
Sometimes you need to take a look at information about different versions, and you can do that inside any active flow version by clicking View all versions.
The history side panel will appear with an overview of the versions you have. You can see which one is still active, coming to an end, or completed. There is also information about when was each version created.
The three dots menu on each card allows you to do the following:
- Edit the entire flow through this version
- Duplicate it to create a new draft flow based on this version
- Stop an active version
To check out how different versions are performing and organize your communication accordingly, switch between them.
- Open any active flow version.
- Click Flow Performance in the upper right corner and then select metrics for all versions or for any specific version.
Duplicate Flow or Create New Version?
To help you decide what would be the best solution for you, we created a table with a quick explanation of the main characteristics related to Duplicate Flow and Flow Version.
- New Flow is created.
- The same people enter the original Flow and the duplicate one at the same time.
- Separate performance statistics.
- Both flows can run at the same time.
- Same Flow on the All Communications page.
- Joint performance statistics for all Flow versions.
- Only one version can be active at a time.
- People who participated in the older Flow version are allowed to finish the journey in that version.
- People who participated in older versions will enter new ones only if the Flow Reenter feature has not been disabled. If you need this functionality, use Duplicate Flow.
Besides all the other possibilities that we covered in this section, you can navigate to the All Communications page in the Moments module, click the three dots menu, and duplicate the last active flow or delete a draft version.
You have created a communication campaign but decided that you need a duplicate. The reason may be that you want to see what it might look like with an additional element or with different communication channels, but you still want to save the original version. To do this, go to the Moments module on our web interface and click the menu of the communication in question. Create as many duplicates as you like.
Flow and Broadcast can be duplicated no matter their status – active, drafted, finished, or canceled.
Why Use Duplicate Flow?
Check out this quick summary explaining what happens when you use the Duplicate feature:
A copy of a flow or broadcast is created, the same as the original one.
The people who are already in the first flow will enter the duplicate one too, and people who just became a part of this communication will enter both flows. However, before creating a duplicate, check which building blocks you are using in your original flow. For example, if you are using events (purchase completed, form filled out, the song played, etc.), the person related to this event will be automatically sent to both flows. But, you won`t be able to create two or more duplicates if you have an Inbound SMS entry point, because this involves a single inbound number that can`t be used in two flows.
Each flow will have separate metrics.
You can create as many duplicate communications as you like.
Want to select a goal that will help you track and modify your communication? Plus, it would be really helpful to be able to select the best time for reaching out as well as set the message frequency? This article will quickly guide you through all that: how to understand and use goals, variables, scheduling, and flow frequency cap.
To avoid both overwhelming your customers and not reaching out enough, think about the number of messages that would be the most suitable for each of your communication campaigns. For example, for campaigns based on customer actions (Events), you can decide how often customers should enter your communication flow.
Take the welcome sequence scenario as an example. The welcome sequence is triggered when you want to welcome and quickly onboard your newly registered user, and it should only happen once per person. Although you probably don`t want to send multiple registration events for the same person, mistakes can happen. To remain in full control of your automated communication, use the Frequency Cap inside the Flow Settings.
There are three controls in Flow Settings:
Flow reenter is enabled –Specify whether the flow should be recurrent (a person can enter it multiple times) or non-recurrent (each person enters it only once). This feature is enabled by default.
Time Delay – Decide how much time should pass before a person becomes eligible to re-enter the flow after exiting. Keep in mind that only one Time Delay can be set.
Entry Limitations – Set the limit for the same person to re-enter the flow during any given time period; for instance, 2 times within one week. You can set multiple Entry Limitations - it could be something like 1 per hour or 24 in one day.
If a person becomes eligible for the entry trigger (Registration), but the Time Delay and/or Entry Limitations prevent them from entering the flow, the trigger will not push this person into the flow.
With the re-entry enabled, but without any time delay and entry limitations, a person will be eligible to return to the flow right after exiting if they match the conditions.
The scheduling side panel is where you can set the start date and time for your flow, as well as an end date and time, depending on the audience you want to reach and the timeframe defined for your campaign.
There's more to Scheduling. When the Run this flow indefinitely check box is selected, the flow won't stop automatically 90 days after launch. Such flows will stop only if no flow element has been triggered for 90 days.
Flows with the Predefined Audience starting point can`t last indefinitely due to the nature of this entry point – all the audience enters at once and there is no option for someone to be added to the flow at a later time.
The purpose of communication is often much more than to simply deliver messages. Many times it involves a goal such as an increase in purchases, and this is why we have introduced the possibility to set any tracked event as the (custom) goal of the flow.
A goal can be set before and after the communication flow has been launched. It will get you information about the overall number of end users reached at the specific point of their customer journey and the percentage of end users who acted in a way that will help you achieve your set goal.
Let`s say that you want to sell a certain number of a specific brand of shoes. Once you have created your Flow and selected your starting point and communication channel, click Set a goal.
The PurchaseFinished event becomes your goal. You will see how many people saw your message, plus how many bought the item. This helps track the campaign and how close you are to achieving your goal.
Most of the Flow elements will have the following metrics available:
• Total Engagements – A value consisting of all end users that reached a specific element in the flow. Those that reach the same element multiple times will also be represented in this value.
• Unique Users Engaged – A value consisting of all end users that reached a specific element in your flow. Those that reach the same element multiple times will not be counted.
• Number of Messages Sent From a Flow Element (if the purpose of the element is to send messages, Start a Call, or trigger a Call API) – A value consisting of an overall number of messages sent from a Flow element. If some messages are broken down into two or more, like in the case of long SMS messages, they will be counted too, and they could sometimes be larger in number than the unique users engaged.
A Flow variable is a placeholder that stores temporary session data inside a Flow. The main advantage of this principle is being able to transfer different values from one flow element to another - you use variables as placeholders to personalize messages and provide end users with the requested data.
Let's take an online order or an online booking journey as an example. You would initiate the Flow with temporary journey details such as Appointment time or Order Status stored as a variable. You would send the user confirmations and reminders of these request details to be sure that they will not miss the appointment or that their order is completed.
Flow is also deeply integrated with People, which enables rich personalization options so each communication is even more personal and appropriate to the scenario. In the context of People, variables are session data related to a particular user journey. The variables can be used for audience personalization and in scenarios when you do not want to store data for future use.
To create a variable click Flow Settings > Variables in a draft flow, then Create New Variable.
Give the variable a name, set the variable type and set an optional initial value for the variable.
Once the variable is created it will be available to be selected throughout the flow where variables are in use.
Assign Values for Variables
Variable values can be assigned from many different sources and with such rich integration capabilities, the options are almost endless depending on your flow.
Take a look at the following use cases where you can set variables and then use the corresponding elements to use them in your own flow.
|Store sender, receiver and message content as a variable on inbound message content
||Evaluate Inbound Message
|Call responses from the third-party systems then use them for the upcoming steps in the Flow
Use Flow API to receive the data you need from third party systems as variables.
|Collect IVR responses as variables
|Set variable values from a catalog item
|Save information from upcoming Standard and Custom events as variables in a Flow
||Wait for an Event
Use variables to make the user experience even more personal. Remember they will be included in the Personalization widget.
Take a look below to see how you can use variables depending on your requirements:
||Use variables to split your audience based on attributes and their behavior
||Use variables to personalize your Flow in Send Elements, IVR elements and even Call API elements if you want to add variables to external systems
|Save variables in People profile
||When you permanently want to save the the variable in a People profile
|Store recipient information
Use variables to define recipient information with the Notify Internal Business Recipients element.
This is a useful if you have dynamic recipient information such as store manager phone number which may be different depending on the store location.
Flow variables can also be used in all elements that contain placeholders.
There may be times in your communication scenario that you want to update a variable to reflect a change in the Flow.
For example, you may have a variable called Order Status that changes from ordered to dispatched. In this scenario, you can use the Update Variable element to make the change.
Expressions in Variables
Expressions can be used to specify variable values in Flow Settings and to update variables in an element. Using Expression Language with variables can make your data go much further. Such benefits can include:
- Make calculations - Count how many times a user received a voucher
- Calculate time difference - Check delayed orders and then escalate automatically
- Concatenate unique URLs from variables and attributes - For use in reporting or sending a feedback request URL to a customer
When you create modular flows to send users to a different flow you also have the option to transfer variables from one flow to another. See Add to Flow to learn more.
The flow that you don`t need anymore can be deleted on the All Communications page in the Moments module. Click three dots menu and delete it, but keep in mind that this could be done only for the communication whose status reads drafted.
Active or finished flows include various helpful data that can be used to edit your communication while in progress or applied to some future correspondence for even better results. From the Flow editor you can view a snapshot of performance at a glance by hovering over a message element in the flow. You will be presented with a table of message metrics for the selected element. For a detailed view of your flow performance click View Flow Performance to see the Overall Metrics.
Inside the flow, click the View Flow Performance box to see the flow highlights and additional information related to your communication campaign:
The Flow Performance box opens to show Flow highlights and graphs and tables relating to the flow:
|Profiles in flow
The number of unique users who have entered the Flow. This helps you visualize the audience reach of your campaign within a time range.
The number of people who exit the Flow at an exit point. This metric helps you to see all customer journeys that are complete and did not exit early. It provides an insight into how effective your Flow is working and if your customers are reacting to your Flow in the way you want.
For example, if your Flow reaches 7000 customers but only 1500 customers exit the Flow then you may want to review your existing Flow and optimize future Flows so more people exit it in the way you want. In Flows where there is no clear goal, this is a very important metric for measuring success.
The number of people that entered a Flow, receive communication, and then perform an event such as, message view, message opened, or link clicked. This metric allows for the measurement of audience activity and gives you the opportunity to view which channel or specific message had the most impact on the customer.
The number of people who entered a Flow and performed the target event at least once. This metric is the absolute measure of success for your Flow.
The sum of all messages sent within the Flow for all channels. To view a breakdown by channels take a look at the Channel Details found at the bottom of the Flow Performance box.
||The total cost of send traffic for the Flow.
In addition, when communication involves a specifically selected goal, such as ItemPurchased, the performance analytics will also include the total amount of purchases. This is shown on the second card in the image below.
The traffic data that pertains to the overall amount of sent messages is displayed per each channel (Email, SMS, Viber, etc.) and non-send element (such as Wait for an Event) that has been included in the flow.
Report per Channel
If you would like to generate a detailed report, click the three dots menu inside the flow, select Get Report > Create. The file will be sent to your email address. To create custom reports, use the link inside the Get Report pop-up.
Both individual and overall channel metrics can be seen inside the Analyze module.
If you use the SFTP Import entry point in your flow, you can view the performance of your imported data. This is a useful way of ensuring that new files are being processed correctly as they are uploaded to the system from your SFTP server, and that the entries in the uploaded file are being added to your flow without error.
Click the View Flow Performance button in the flow editor and select the SFTP Import tab to open a table view of import performance:
||A timestamp of when the file is fetched from your SFTP server.
||The name of the SFTP connection used. Errors will be displayed in this column if there are connection errors when trying to fetch the file.
||The name of the file fetched from your SFTP server.
||The total number of entries in the csv file uploaded from your SFTP server.
||The total number of entries in the file that were successfully added to flow.
The total number of entries in the file that were not added to the flow.
Depending whether you have one or two pieces of contact information in your file (phone number and/or email address) you may see invalid entries for a few reasons.
If your file import contains one piece of contact information (phone number or email address) then you may see invalid entries if there is no contact information provided or if the contact information contains errors that cause the entry to fail.
If your file import contains two pieces of contact information (phone number and email address) then you may find entries are invalid if one of the pieces of contact information is incorrect or contains errors.
REMEMBER: If one piece of contact information is valid and the other piece of contact information is empty (i.e. no contact information provided) then this entry will be treated as valid.
If there are many invalid entries in your file, we recommend you review your file, and rectify any data issues.
If you would like to use the SFTP Import performance data outside of the Infobip web interface, click Export to export the data as a csv file.
Monthly Engaged Persons Consumption Report
Use the Monthly Engaged Persons (MEP) Consumption Report to view statistics on engaged profiles in your account. This is a very useful way of tracking subscription charges for engaged profiles every month. Use the MEP Consumption Report to view a report on every engaged person for your account(s) including the date of engagement, time, and MEP by campaign.
There are two ways you can view MEP Consumption metrics. You can build the MEP Consumption report in the Analyze section of Moments or leverage the MEP Consumption dashboard for a view of your engaged profiles at a glance. Read on to learn how to do both.
To create a MEP Consumption Report, go to Analyze > Reports > Create Report, then select MEP Consumption.
- Give your report a memorable name.
- Choose the Month you want to include in your report in the month selector. You can select from the last 3 months.
- Select Accounts to view all your accounts or filter the report by sub-account(s).
- Choose which format you would like to export your report. Select from XLSX or CSV.
If you have a large amount of MEPs (>10k) then it is recommended to choose CSV format for export.
- Click Create Report
A report of your data will be generated. The following information will be included in your report:
- Person ID
- Engaged At
- Billed At
- Campaign ID
- Campaign Name
MEP Consumption Dashboard
To access the MEP Consumption dashboard for your account, navigate to Moments and select Analytics > MEP Consumption.
This feature is only available to users with the admin role in your account. Please contact your Account Manager if you believe you should have access to this report.
Your report for the current month will be loaded by default. The data will be correct to the current date, so if you view the report on the 10th of the month you will only see the MEP statistics until the 10th.
Select the date field to filter the statistics by date (up to the last 3 months) and Accounts to view all your accounts or filter by sub-account(s).
Click Create Report to generate a report. The report will be available on the Reports page in the Analyze section of the web interface.
Current Subscription Amount
Shows the current subscription plan that is applied to your account.
Shows total MEP consumption for all your accounts.
Top 10 MEP Consuming Flows
Shows a table view of the top 10 flows by MEP consumption.