
Returning users who revisit a product category but haven’t purchased anything often face the same friction as during their first visit — large assortment, filters, and product overload.
To re-engage them effectively, you can display a personalized top (or bottom) bar that appears only for this specific audience.

The bar acts as a shortcut to AI-based personalized recommendations from a category that the user viewed before, and allows them to explore those items on a personalized in-app.

This campaign will be visible only for customers who have visited the specific category during the past 30 days but have not made any purchase.

This approach works best on product or category-level pages and for users who already showed intent but didn’t complete a purchase.
It combines behavioral segmentation and personalization in a single, adaptive in-app campaign.

<div class="youtube-embed youtube-facade not-prose" data-youtube-id="zg4A98GouHE" role="button" tabindex="0" aria-label="Play YouTube video"><img src="https://img.youtube.com/vi/zg4A98GouHE/hq720.jpg" alt="YouTube video" class="youtube-facade-thumb" loading="lazy" /><span class="youtube-facade-play" aria-hidden="true"><svg viewBox="0 0 68 48" width="68" height="48"><path d="M66.52 7.74c-.78-2.93-2.49-5.41-5.42-6.19C55.79.13 34 0 34 0S12.21.13 6.9 1.55c-2.93.78-4.64 3.26-5.42 6.19C.06 13.05 0 24 0 24s.06 10.95 1.48 16.26c.78 2.93 2.49 5.41 5.42 6.19C12.21 47.87 34 48 34 48s21.79-.13 27.1-1.55c2.93-.78 4.64-3.26 5.42-6.19C67.94 34.95 68 24 68 24s-.06-10.95-1.48-16.26z" fill="red"/><path d="M45 24 27 14v20" fill="white"/></svg></span></div>

## Prerequisites 
---
- [Configure AI engine](/docs/settings/configuration/ai-engine-configuration/engine-configuration-for-recommendations) for recommendations; enable the personalized recommendation type.
- Implement the transaction events using [SDK](/developers/web/transactions-sdk) or [API](https://developers.synerise.com/DataManagement/DataManagement.html#operation/CreateATransaction).
- [Implement Synerise SDK in your mobile app](/developers/mobile-sdk).

## Process
---

In this use case, you will go through the following steps:
1. [Prepare the segmentation](#prepare-the-segmentation) of users who have visited the specific category during last 30 days but have not made a purchase from this category.
2. [Prepare the recommendations](#prepare-the-recommendations) of personalized products from the category.
2. [Create an in-app campaign](#create-an-in-app-campaign) as a top bar which, after tapping, resizes to full screen with personalized products recommendations.

## Prepare the segmentation
---
In this part of the process, you will create a segmentation of users who have visited the `women/shoes` category in the last 30 days (mobile/web) but have not made any transaction during that time. 

In this part of the process, we will create a segmentation of users who have visited the `women/shoes` category in the last 30 days (website of mobile) but have not made any transaction during that time. 

1. Go to <img src="/api/docs/image/54176ad07f146575310749eba44b7c2f42c1b327/icons/decision-hub-icon.svg" alt="Decision Hub icon" class="icon">**Decision Hub > Segmentations > New segmentation**.
3. Enter the name of the segmentation.
4. Click **Add condition**.
4. From the dropdown list, select the `page.visit` event.
6. Click **+ where** and from the dropdown list, select `url`.
7. Choose the **Contain** operator and enter the fragment of the URL for the specific category. In our case it will be `women-shoes`. Alternatively, you can build the following condition: **category equal [category name]**.
7. Using the date picker in the lower-right corner, set the time range to **Last 30 days**. 
8. Click **Add condition**.
10. From the list, choose the `screen.view` event.
6. Click **+ where** and from the dropdown list, select `url`.
7. Choose the **Contain** operator and enter the fragment of the URL for the specific category. In our case it will be `women-shoes`. Alternatively, you can build the following condition: **category equal [category name]**.
12. Connect these conditions by the **OR** operator.  
7. Using the date picker in the lower-right corner, set the time range to **Last 30 days**. 
8. Click **Add condition**.
9. From the list, choose the `transaction.charge` event. 
10. By clicking **Performed** above the event name change the condition to **Not performed**.
6. Save the segmentation.

 <figure><img src="/api/docs/image/54176ad07f146575310749eba44b7c2f42c1b327/use-cases/all-cases/_gfx/inappstories-segment.png" class="full" alt="The view of the segmentation configuration"><figcaption>Segmentation configuration</figcaption></figure>  

## Prepare the recommendations
---
In this part of the process, you will prepare the personalized recommendations of products from a specific category.

1. Go to <img src="/api/docs/image/54176ad07f146575310749eba44b7c2f42c1b327/icons/ai-hub-icon.svg" alt="AI Hub icon" class="icon" > **AI Hub > (AI Recommendations) Models > Add recommendation**.
2. Enter the name of the recommendation (it is only visible on the list of recommendations).
3. In the **Type & Items feed** section, click **Define**.
4. From the **Items feed** dropdown list, select an item feed that has a the **Personalized** model ready to use.
5. Select the **Personalized** recommendation type.  
6. Confirm the recommendation type by clicking **Apply**.  
7. In the **Items** section, click **Define**.  
8. Click **Add slot**.  
9. Click the **Unnamed slot** that was created.    
10. Define the minimum and maximum number of products displayed in the frame according to your needs.
 3. Define [Static filters](/docs/ai-hub/recommendations-v2/creating-recommendation-campaign#static-filters).
    4. Click **Define filter**.  
    5. Select **Visual Builder**.  
    6. Click **Select value**.
    5. Choose **category**.
    6. As the operator, choose **Equals**.
    7. Click the icon which appeared next to the field with the operator and from the dropdown list, select **Context** (eye icon). 
    7. As the value, choose `category`, to be sure that the category of recommended products will be the same as the category of the currently viewed item.
    8. In the **Category level** input, select **Take first subcategories**. 
    9. In this use case, the **how many levels** setting is **2**, but remember to adjust it to how your item feed is built.
    9. In the items, choose a category. In this case: `women/shoes`.

     <figure><img src="/api/docs/image/54176ad07f146575310749eba44b7c2f42c1b327/use-cases/all-cases/_gfx/reco-category1.png" class="full" alt="The view of the recommendation configuration"><figcaption>Recommendation configuration</figcaption></figure> 

11. Optionally, you can use filters to include specific items in the recommendation frame.
12. Confirm the configuration by clicking **Apply**.  
13. Optionally, you can define the settings in the **Boosting** and **Additional settings** sections.

    
   <div class="admonition admonition-tip"><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="M9.663 17h4.673M12 3v1m6.364 1.636l-.707.707M21 12h-1M4 12H3m3.343-5.657l-.707-.707m2.828 9.9a5 5 0 117.072 0l-.548.547A3.374 3.374 0 0014 18.469V19a2 2 0 11-4 0v-.531c0-.895-.356-1.754-.988-2.386l-.548-.547z" /></svg></div><div class="admonition-body"><div class="admonition-content">

   Learn more about [boosting](/docs/ai-hub/recommendations-v2/creating-recommendation-campaign#define-the-boosting-factors) and [additional settings](/docs/ai-hub/recommendations-v2/creating-recommendation-campaign#additional-settings).

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


## Create an in-app campaign
---

In this part of the process, you’ll use a predefined "Resize Recommendations" template that starts as a compact top bar and expands into a full screen view with personalized recommendations.

1. Go to <img src="/api/docs/image/54176ad07f146575310749eba44b7c2f42c1b327/icons/experience-hub-icon.svg" alt="Experience Hub icon" class="icon" > **Experience Hub > In-app messages> Create in-app**.
2. Enter the name of the in-app.

### Define the audience
---
As the first step, define the target group of customers for the in-app message. In this case, we will use the segmentation created in the [previous step](#prepare-the-segmentation).

1. In the **Audience** section, click **Define**.
2. Click **Segmentations**.
3. Click **Select segmentation** and choose the segmentation created in the [previous step](#prepare-the-segmentation).
3. Save settings in the **Audience** section by clicking **Apply**.

### Define content
---
In this part of the process, you will use a ready-made template to create the content of the in-app message that will be displayed in the mobile application.

1. In the **Content** section, click **Define**.
2. Click **Create message** and from the list of template folders, select **Predefined templates**.
3. Select the **Resize Recommendations** template.

**Result:** You are redirected to the code editor.

<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">

You can edit the template in two ways:
- by editing the code of the template, [adding inserts](/docs/campaign/in-app-messages/creating-inapp-templates/creating-inapp-template#adding-a-snippet-to-the-template-code), [adding variables](/docs/campaign/in-app-messages/creating-inapp-templates/creating-inapp-template#adding-a-variable)
- by filling out the form on the **Config** tab.  
 
In this use case, we will use the capabilities of the predefined Config tab.

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


#### Edit form in the Config tab 
---
The form in the **Config** tab is already filled in with default values. You can keep them or change them to fit your business needs.  

 <figure><img src="/api/docs/image/54176ad07f146575310749eba44b7c2f42c1b327/use-cases/all-cases/_gfx/inappresize-config3.png" class="full" alt="In-app configuration"><figcaption>In-app configuration</figcaption></figure>  


1. In the **Bar settings** section, set up the copy and style of the first banner. Choose the bar position (top or bottom bar).
2. In the **General Settings** section:
    - In **Title** and **Subtitle**, define the title and subtitles for the in-app. If you don't want to display them, enter a dash (-).
3. In the **AI Recommendations** section:
    - Enter your **AI Recommendation Campaign Hash** based on the [previously created campaign](#prepare-the-recommendations).
    - Decide if you want to display special price and cross out regular price when available
3. In the **CTA** section:
    - Customize the action button by defining the text on the button (**Text on the button**), the URL to which a user will be redirected (**Destination link**), colors of the button (**Button text color** and **Button color**).  
5. After you complete editing the form, disable the **Config mode** option.
5. After you make changes to the template, you can check the preview.
    1. Click the **Preview contexts** button on the upper left side.
    2. Enter the ID of a customer.
    3. Click **Apply**.

     
   <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">

   Considering that the in-app is very interactive, the preview in the platform may not be enough to test the in-app performance. That’s why we suggest checking the campaign preview directly in the mobile app.

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


6. If the template is ready, in the upper right corner click **Save this template > Save as**.
7. On the pop-up:
    1. In the **Template name field**, enter the name of the template.
    2. From the **Template folder** dropdown list, select the folder where the template will be saved.
    3. Confirm by clicking **Apply**.
8. To continue the process of configuring the in-app campaign, click **Use in communication**.
9. To save your content changes, click **Apply**.

### Select events that trigger the in-app message display
---
In this part of the process, you will define the event triggering the display of the in-app message. In this case, it will be visible after opening the application but - as it was specified in the campaign settings - only for a specific segment as it was set up before.

1. In the **Trigger events** section, click **Define**.
2. Select **Add event** and from the dropdown list, choose `screen.view` event.
3. Click the **+ where** button and select `source`.
4. As the logical operator, select **Equal**.
5. As the value add `MOBILE`.
5. Click **Apply**.

 <figure>
   <img src="/api/docs/image/54176ad07f146575310749eba44b7c2f42c1b327/use-cases/all-cases/_gfx/inapp-stories-trigger.png" alt="The view of the in-app trigger event configuration" class="full">
   <figcaption> In-app trigger event configuration </figcaption>
   </figure>

### Schedule the message and configure display settings
---
As the final part of the process, you will set the display settings of the in-app message such as schedule, capping, priority of the message among other in-app messages.

1. In the **Schedule** section, click **Define** and set the time when the message will be active.
2. In the **Display Settings** section, click **Change**.
3. Define the **Delay display**, **Priority index** and enable the **Frequency limit** toggle to manage the frequency of in-app message display in the application.  
16. Click **Apply**. 
17. Optionally, you can define the UTM parameters and additional parameters for your in-app campaign.
18. Click **Activate**.

### Test the in-app campaign
---

Read the ["Testing" section](/docs/campaign/in-app-messages/create-inapp-message#testing) to discover how to test your in-app campaign.

## Check the use case set up on the Synerise Demo workspace
---
You can check the [segmentation](https://app.synerise.com/analytics-v2/segmentations/e9ba4f5e-76e6-4782-8bc5-3bdb72281688), [AI recommendations](https://app.synerise.com/ai-v2/recommendations/yYjFMYPeofN5) and [in-app message campaign](https://app.synerise.com/communications/in-app/1edbf12c-47c2-4c20-83b8-a7c8edb0cff5) configuration directly in Synerise Demo workspace. 

If you’re our partner or client, you already have automatic access to the **Synerise Demo workspace (1590)**, where you can explore all the configured elements of this use case and copy them to your workspace.  

If you’re not a partner or client yet, we encourage you to fill out the contact [form](https://demo.synerise.com/request) to schedule a meeting with our representatives. They’ll be happy to show you how our demo works and discuss how you can apply this use case in your business.

## Read more
---
- [In-app messages](/docs/campaign/in-app-messages)
- [Using in-app template builder](/docs/campaign/in-app-messages/creating-inapp-templates/creating-inapp-template)







