
Campaign optimization is very important and allows you to increase the effectiveness of the campaign using data already available. The two main factors that should be optimized are the communication channel tailored to the user and the optimization of the campaign delivery time. 

## Example of use - Retail Industry 

**Challenge**

A client from the retail industry expressed the need to optimize their campaigns.  

Their main goals were:  

- Personalization of sending time for campaign messages 

- Selecting the optimal communication channel for each particular client (depending on which communication channel the client responds better to) 

**Solution**

We created the solution in the form of channel and time optimization. Both options are available in the campaign creator (channel optimization can be chosen in the Audience tab, and time optimization in the Schedule tab). 

Based on predefined aggregates, expressions and automation, the algorithm automatically **compares all the channels our customer has contact with and selects the best one**. Based on that one customer will get a SMS message with the promotion and another one will get an email based on individual preferences.   

What is more, our AI algorithm will automatically select **the best time to send specific campaigns**, taking into consideration not only data about previous campaigns but also customer activity. 

Based on those recommendations, Synerise users do not need to analyze channel effectiveness or any other data, because everything is generated and selected in real time by Synerise.  

## Prerequisites 
---
**General**
- Implement [Synerise tracker](/developers/web/installation-and-configuration#creating-a-tracking-code) on your website.
- Channel optimization configuration.
- [Email account configuration](/docs/campaign/e-mail/configuring-email-account).
- [SMS account](/docs/settings/configuration/sms-account) configuration (integration e.g. with SMS API). 
- [Webpush integration](/docs/campaign/Webpush/configuring-web-push).
- [Mobile Push integration](/docs/campaign/Mobile/mobile_campaign). 
- [Transactional events](/developers/web/transactions-sdk) implemented (optional).

**AI time optimizer configuration**

- Page visits & other campaign visits.

## Process
---
1. [Configure campaigns](/use-cases/campaign-optimizer#configure-campaigns).
2. [Create a workflow](/use-cases/campaign-optimizer#configure-a-workflow).

## Configure campaigns
---
1. Go to **Campaigns** and create a new one for a specific channel, e.g. SMS.  
2. **In the Audience tab**, choose a specific predefined segment of customers created for a specific type of campaign.
3. **In the Schedule tab** you can also choose the recommended time of campaign delivery based on our AI algorithms. You need to define the time range during which you would like to send the campaign.   Based on the time range the optimal time will differ.
4. Save the campaign.

    ![Screenshot presenting campaign optimizer](/api/docs/image/54176ad07f146575310749eba44b7c2f42c1b327/use-cases/all-cases/_gfx/time.png)


5. Do the same for other channels you want to use, e.g. email, webpush etc.  

    Learn how to do It – check [advanced optimizer configuration](/use-cases/campaign-optimizer2) 

## Configure a workflow
---

1. Go to the **Automation Hub > Workflow > New workflow**.
2. As a trigger choose **Audience** node.
3. As an audience define the group of users to which you would like to send the campaign, e.g. you can add here a whole database or a segment of people.
4. Add **Generate Event** event. It is responsible for calculating the channel scoring. The effect of this calculation is the “optimal.channel” event sent to everyone you selected in the Audience trigger. 
5. **Split Path** into different campaigns.  
6. The next step is the **Event Filter** node. Here we check the result of the scoring calculation. Each of those four nodes allow the selected campaign to be sent. The journey will proceed in one path – the one that will be calculated as a result of Send Event node
7. The last step is responsible for **sending the campaign** in selected channel: sms/email/webpush/mobile push. The action required in this step is to setup the proper template for each channel. 
8. Save & Run the automation and wait for your campaign to be sent. 

   ![Screenshot presenting campaign optimizer](/api/docs/image/54176ad07f146575310749eba44b7c2f42c1b327/use-cases/all-cases/_gfx/automation.png)


   <div class="admonition admonition-note"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

   It is recommended to collect the history of customer interactions before preparing the optimization process. You should have as much data as possible to prepare it in a more precise way and to make it more accurate.  

   We require at least one month of history for particular users to create an optimization of this type for them. But remember that more data you have, the more accurate your algorithms are. For the optimization of channels, we need to have at least 5 campaigns based on our assumptions.

   </div></div></div>



<div class="admonition admonition-important"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

To learn more about the next step and the usage of predefined analytics in the advanced optimizer configuration, read this [case](/use-cases/campaign-optimizer2)

</div></div></div>


## Read more
---
- [Advanced optimizer configuration](/use-cases/campaign-optimizer2) 
- [Aggregates](/docs/analytics/aggregates/introduction-to-aggregates)
- [Automation Hub](/docs/automation) 
- [Build segmentation](/docs/analytics/segmentations/creating-segmentations)
- [Expressions](/docs/analytics/expressions)
- [Metrics](/docs/analytics/metrics)

 