How to Recommend Content to Watch Next


Showing content recommendations is one of the effective ways marketers of OTT platforms use to increase user’s screen time. There are two key steps involved in making this work:

  • For each user, come up with content they are likely to watch (recommendations) based on their watch history.
  • Show these recommendations at the right place and time to the user.

MoEngage can help marketers do both these steps through Recommendations and Campaigns. Push Notifications, Emails, Cards, and On-site pop-up messages on exit intent can be good ways to show recommendations to the user.

In this article, we will:

  • Create a Recommendation on what to watch next.
  • Send that Recommendation through Push Notifications to your users.

Expected Result

Users receive a Push Notification on their phones, with recommendations of what to watch next:





  • Events to track the action of a user searching for a content, watching a content, adding a content to watch later, rating a content, completing a content and each action’s related information such as the genre, title, type, progress, rating, platform. To understand how to track events, refer to the Developer Guide.
  • Mapping of the tracked events above to concerned MoEngage events. In this example, the custom event of starting a content will be mapped to "Product Viewed" and the custom event of completing a content will be mapped to "Product Purchased". For information on mapping custom events to MoEngage events, refer here.
  • A catalog and a respective feed that has a list of available contents and all related information about the same from the name or title to the director, cast, and description to any awards that the title won in any category. Set the feed to refresh at a suitable interval so that the latest information can be maintained. For more information on product catalogs and feeds, refer here.
  • Settings for one or more channels such as Push, Email, SMS, or WhatsApp.

Create a Recommendation

In this section, let us create a recommendation based on the user actions.

  1. Navigate to the MoEngage Dashboard and select Content > Recommendations from the left navigation. The Recommendations page is displayed. For more information, refer to Creating User Action Recommendations.
  2. At the top right corner, click + Create recommendation. It takes you to the first step "Select recommendation model".
  3. Under Predictive, click the Similar items card because it considers the user action of watching a content and other related information in attributes such as the genre, director, and cast. This model takes the help of SHERPA AI to predict what other content would the same user prefer.
  4. Click Next. It takes you to the second step "Create recommendation". Enter the following details:
    1. Recommendation name: Enter a name for the recommendation. For example, "WhatNextToWatch". This will be the name through which you will refer the output of this recommendation model.
    2. Recommendation description: Enter a description for the recommendation. This description will help you understand what the model is aimed at.
    3. Catalog: Select the catalog that has the list of content provided in your platform with all the related information starting from the title to director’s name, cast, genre, and any awards that this has won.
  5. Under Generate recommendations by user actions, from the Items where user performed drop-down list, select “Product Purchased” because the recommendation model generates suggestions on this action. Here, the event of a user watching a content is mapped to this MoEngage defined event.
  6. Click Create to save the changes and run the model.
    Please note that this will take 24 hours. You can find the status of the model on the Recommendations home page:
    The Recommendation engine shares the set of content a user might prefer based on the list of content that they watched in the last 10 days.

Now that we have created the recommendation, let us create a Push campaign to nudge people about the content that they have viewed but not completed.

Create a Push Campaign

In this section, let us create a Push campaign to recommend your users on what to watch next.

Step 1: Target Users

  1. Navigate to the sidebar on the left and click Engage > Campaigns and click + Create campaign or click + Create new > Campaign.
  2. Under Outbound, select Push > Periodic.
    You are taken to the first step "Target users" of defining your campaign.
  3. Enter the following details:
    • Team: Select a team if your organization has teams enabled for your account. For more information, refer to Teams in MoEngage. For example, "Journey".
    • Campaign name: Enter a name for the campaign. For example, "WhatNextToWatch".
    • Campaign tags: Select the required campaign tags.
  4. In the Target Audience section, select users who have not watched content in the last 1 day.
  5. In the Target Platforms section, select Android. You can select other platforms that you would like to target the users in.
  6. Click Next to move to the second step "Content" where you can define the content that will go into your Push campaign.

Step 2: Content

  1. Select the template that you like to go with. For our example, select Basic notification.
  2. Enter the required content for the campaign. We can enter a title, message, and summary manually, or generate it using Merlin AI. For more information, refer to Generate Push Messages with Merlin AI
  3. While defining the message, select the product set that is generated through the recommendation that you defined. Enter “@” and search for “WhatNextToWatch”, the name of the recommendation that you built, in the Push Personalization pop-up.
  4. Click Done. The following JINJA code is inserted in the Message field:
  5. Edit the code to run a loop through each content and list down the first suggestion because the highly confident suggestions come first from the Recommendation engine. The higher the confidence the topper the content will be in the list. The final JINJA code looks as follows:
        {% if ProductSet.WhatNextToWatch%}
    {% for product in ProductSet.WhatNextToWatch[0:1]%}
    {% endfor %}
    {% else %}
    {% endif %}
    In line 2, the loop does only one iteration using the “[0:1]” part in the query. If you want to suggest top 3, you can change the same to “[0:3]” and so on. The {{product.product_name}} element in line 3 prints the name of the suggested content. For more information, refer to MoEngage Templating Language (JINJA).
  6. Enter the following code to get the image of the recommended watch:
        {% if ProductSet.WhatNextToWatch%}
    {% for product in ProductSet.WhatNextToWatch[0:1]%}
    {% endfor %}
    {% else %}
    {% endif %}
    In Line 3, {{product.image_url}} provides the link to the image of the concerned title of the suggested content.
  7. Add a deeplink to the Push Notification by mentioning the URL that will directly take them to the mentioned title or suggestion list in your app. This reduces the possibility of a user dropping off before finding the suggested content.
  8. Click Next to move to the third step "Schedule and goals" where you can define the schedule and goal of your campaign.

Step 3: Schedule and Goals

  1. In the Send campaign section, select when the campaign should be delivered to your users and the periodicity of delivery. For example, Daily at 10am, starting from March 10, 2024.
  2. Change the deliverability settings based on your requirements. For more information, refer to Create Push Campaigns.
  3. Click Publish.


In this use case, we created a Recommendation on what to watch next and sent that Recommendation through Push Notifications to your users. 

Now that we have published the campaign for our use case using Recommendations, we can check out other possibilities of MoEngage’s Recommendations.

Was this article helpful?
0 out of 0 found this helpful

How can we improve this article?