AWS Machine Learning Blog
Build brand loyalty by recommending actions to your users with Amazon Personalize Next Best Action
Amazon Personalize is excited to announce the new Next Best Action (aws-next-best-action
) recipe to help you determine the best actions to suggest to your individual users that will enable you to increase brand loyalty and conversion.
Amazon Personalize is a fully managed machine learning (ML) service that makes it effortless for developers to deliver highly personalized user experiences in real time. It enables you to improve customer engagement by powering personalized product and content recommendations in websites, applications, and targeted marketing campaigns. You can get started without any prior ML experience, using APIs to easily build sophisticated personalization capabilities in a few clicks. All your data is encrypted to be private and secure.
In this post, we show you how to use the Next Best Action recipe to personalize action recommendations based on each user’s past interactions, needs, and behavior.
Solution overview
With the rapid growth of digital channels and technology advances that make hyper-personalization more accessible, brands struggle to determine what actions will maximize engagement for each individual user. Brands either show the same actions to all users or rely on traditional user segmentation approaches to recommend actions to each user cohort. However, these approaches are no longer sufficient, because every user expects a unique experience and tends to abandon brands that don’t understand their needs. Furthermore, brands are unable to update the action recommendations in real time due to the manual nature of the process.
With Next Best Action, you can determine the actions that have the highest likelihood of engaging each individual user based on their preferences, needs, and history. Next Best Action takes the in-session interests of each user into account and provides action recommendations in real time. You can recommend actions such as enrolling in loyalty programs, signing up for a newsletter or magazine, exploring a new category, downloading an app, and other actions that encourage conversion. This will enable you to improve each user’s experience by providing them with recommendations on actions across their user journey that will help promote long-term brand engagement and revenue. It will also help improve your return on marketing investment by recommending the action that each user has a high likelihood of taking.
AWS Partners like Credera are excited by the personalization possibilities that the Amazon Personalize Next Best Action will unlock for their customers.
“Amazon Personalize is a world-class machine learning solution that enables companies to create meaningful customer experiences across a wide array of use cases without extensive rework or up-front implementation cost that is typically required of these types of solutions. We are really excited about the addition of the Next Best Action capability that will enable customers to provide personalized action recommendations, significantly improving their digital experiences and driving additional business value. Specifically, we expect anyone working within the retail or content space to see an improved experience for their customers and higher conversions as a direct result of using Amazon Personalize. We are extremely thrilled to be a launch partner with AWS on this release and looking forward to empowering businesses to drive ML-based personalized solutions with Next Best Action.”
– Jason Goth, Partner and Chief Technology Officer, Credera.
Example use cases
To explore the impact of this new feature in greater detail, let’s review an example by taking three users: A (User_id
11999), B (User_id
17141), and C (User_id
8103), who are in different stages of their user journey while making purchases on a website. We then see how Next Best Action suggests the optimal actions for each user based on their past interactions and preferences.
First, we look at the action interactions dataset to understand how users have interacted with actions in the past. The following example shows the three users and their different shopping patterns. User A is a frequent buyer and has shopped mostly in the “Beauty & Grooming” and “Jewelry” categories in the past. User B is a casual buyer who has made a few purchases in the “Electronics” category in the past, and User C is a new user on the website who has made their first purchase in the “Clothing” category.
User Type | User_id | Actions | Action_Event_Type | Timestamp |
User A | 11999 | Purchase in “Beauty & Grooming” category | taken | 2023-09-17 20:03:05 |
User A | 11999 | Purchase in “Beauty & Grooming” category | taken | 2023-09-18 19:28:38 |
User A | 11999 | Purchase in “Beauty & Grooming” category | taken | 2023-09-20 17:49:52 |
User A | 11999 | Purchase in “Jewelry” category | taken | 2023-09-26 18:36:16 |
User A | 11999 | Purchase in “Beauty & Grooming” category | taken | 2023-09-30 19:21:05 |
User A | 11999 | Download the mobile app | taken | 2023-09-30 19:29:35 |
User A | 11999 | Purchase in “Jewelry” category | taken | 2023-10-01 19:35:47 |
User A | 11999 | Purchase in “Beauty & Grooming” category | taken | 2023-10-04 19:19:34 |
User A | 11999 | Purchase in “Jewelry” category | taken | 2023-10-06 20:38:55 |
User A | 11999 | Purchase in “Beauty & Grooming” category | taken | 2023-10-10 20:17:07 |
User B | 17141 | Purchase in “Electronics” category | taken | 2023-09-29 20:17:49 |
User B | 17141 | Purchase in “Electronics” category | taken | 2023-10-02 00:38:08 |
User B | 17141 | Purchase in “Electronics” category | taken | 2023-10-07 11:04:56 |
User C | 8103 | Purchase in “Clothing” category | taken | 2023-09-26 18:30:56 |
Traditionally, brands either show the same actions to all users or employ user segmentation strategies to recommend actions to their user base. The following table is an example of a brand showing the same set of actions to all users. These actions may or may not be relevant to the users, reducing their engagement with the brand.
User Type | User_id | Action Recommendations | Rank of Action |
User A | 11999 | Subscribe to Loyalty Program | 1 |
User A | 11999 | Download the mobile app | 2 |
User A | 11999 | Purchase in “Electronics” category | 3 |
User B | 17141 | Subscribe to Loyalty Program | 1 |
User B | 17141 | Download the mobile app | 2 |
User B | 17141 | Purchase in “Electronics” category | 3 |
User C | 8103 | Subscribe to Loyalty Program | 1 |
User C | 8103 | Download the mobile app | 2 |
User C | 8103 | Purchase in “Electronics” category | 3 |
Now let’s use Next Best Action to recommend actions for each user. After you define the actions eligible for recommendations, the aws-next-best-action
recipe returns a ranked list of actions, personalized for each user, based on user propensity (the probability of a user taking a particular action, ranging between 0.0–1.0) and value of that action, if provided. For the purpose of this post, we only consider user propensity.
In the following example, we see that for User A (frequent buyer), Subscribe to Loyalty Program is the top recommended action with a propensity score of 1.00, which means that this user is most likely to enroll in the loyalty program because they have made numerous purchases. Therefore, recommending the action Subscribe to Loyalty Program to User A has a high probability of increasing User A’s engagement.
User Type | User_id | Action Recommendations | Rank of Action | Propensity Score |
User A | 11999 | Subscribe to Loyalty Program | 1 | 1.00 |
User A | 11999 | Purchase in “Jewelry” category | 2 | 0.86 |
User A | 11999 | Purchase in “Beauty & Grooming” category | 3 | 0.85 |
User B | 17141 | Purchase in “Electronics” category | 1 | 0.78 |
User B | 17141 | Subscribe to Loyalty Program | 2 | 0.71 |
User B | 17141 | Purchase in “Smart Homes” category | 3 | 0.66 |
User C | 8103 | Purchase in “Handbags & Shoes” category | 1 | 0.60 |
User C | 8103 | Download the mobile app | 2 | 0.48 |
User C | 8103 | Purchase in “Clothing” category | 3 | 0.46 |
Similarly, User B (casual buyer persona) has a higher probability to continue purchasing in “Electronics” category and also buying new products in a similar category, “Smart Homes”. Therefore, Next Best Action recommends you to prioritize actions, Purchase in “Electronics” category and Purchase in “Smart Homes” category. This means that if you prompt User B to buy products in these two categories, it can lead to greater engagement. We also notice the action to Subscribe to Loyalty Program is recommended to User B but with a lower propensity score of 0.71 as compared to User A, whose propensity score is 1.0. This is because users that have a deeper history and are further along their shopping journey benefit more from Loyalty programs due of the added benefits and are highly likely to interact more.
Finally, we see that Next Best Action for User C is purchasing in “Handbags & Shoes” category, which is similar to their previous action of Purchase in “Clothing” category. We also see that the propensity score to Download the mobile app is relatively lower (0.48) than another action, Purchase in “Handbags & Shoes” category, which has a higher propensity score of 0.60. This means that if you recommend User C to purchase products in a complementary category (“Handbags & Shoes”) over downloading the mobile app, they are more likely to stick with your brand and continue shopping in the future.
For more details on how to implement the Next Best Action (aws-next-best-action
) recipe, refer to documentation.
Conclusion
The new Next Best Action recipe in Amazon Personalize helps you recommend the right actions to the right user in real time based on their individual behavior and needs. This will enable you to maximize user engagement and lead to greater conversion rates.
For more information about Amazon Personalize, see the Amazon Personalize Developer Guide.
About the Authors
Shreeya Sharma is a Sr. Technical Product Manager working with AWS AI/ML on Amazon Personalize. She has a background in computer science engineering, technology consulting, and data analytics. In her spare time, she enjoys traveling, performing theatre, and trying out new adventures.
Pranesh Anubhav is a Senior Software Engineer for Amazon Personalize. He is passionate about designing machine learning systems to serve customers at scale. Outside of his work, he loves playing soccer and is an avid follower of Real Madrid.
Aniket Deshmukh is an Applied Scientist in AWS AI labs supporting Amazon Personalize. Aniket works in the general area of recommendation systems, contextual bandits, and multi-modal deep learning.