Collecting Signals

Building an accurate and useful user profile must be done through considered UX design - this means gathering data about a user so to provide the best possible experience tailored to their needs and goals.

It’s possible to learn about a user and build their profile through a number of different methods, including:

  • Onboarding setup: the initial experience when creating an account. This is an opportunity to gather the most important preferences and collect data about the user that are difficult or impossible to learn through behavioural analysis. This will help kickstart the experience and make it personal and useful as soon as possible, while teaching the user how to use and what to expect from the app.
  • Behaviour and activity: tracking and analyzing user behaviour is another key method to develop a user profile. All data collected in this way is implicit and provides a stream of data to improve understanding of a user’s tastes and preferences. 
  • Feedback controls: allow users to send explicit feedback about specific parts of the system. For example, recipes in a feed could contain two buttons (thumbs up and thumbs down) which allow a user to indicate whether they want to see more or less of that type of recipe. Or, within the online checkout experience you could include controls to always or never select certain store products. 
  • Settings page: provide a place for users to manage their preferences and to put an extended list of customisation options that don’t fit in onboarding. This allows a user to review and configure their preferences should they change.
  • Questions and prompts: While onboarding is critical to kickstart the experience by making it broadly personal right from the beginning, it’s not possible or necessary to build an exhaustive user profile at once. By integrating additional questions into the experience and prompting users to provide further data about their preferences, the Whisk system can continue to learn about a user.


Onboarding and setup

This series of questions is used to gather important, fundamental information and start to learn about a user’s general food preferences and interests. We recommend the following onboarding experience:

Step 1: Interests

Impact: The data collected here trains a user’s soft preferences and a user will see recipes from selected interests more often. 

Step 2: Favourite Cuisine

Impact: The data collected here trains a user’s soft preferences and a user will see recipes from selected interests more often. 

Step 3: Diets

Impact: This will set a user’s Hard Constraints - only recipes with selected diets will be  shown in the app. Additionally, these diets will be pre-selected filters on the search page.

Step 4: Avoidances

Impact: This question will set a user’s Hard Constraints - recipes with avoidances will be excluded from recipe feed and will be pre-selected on the search and filters page.

Questions & Prompts

Questions can appear throughout the experience. We recommend to show them in an optional way so they don’t interrupt the user. Which questions to ask depends on overall UX / user goals but if you use our recommended onboarding (above) then these are the next questions to ask.

Question 1: Household size
Impact: ingredients in recipes will be automatically scaled based on household size. 

Question 2: Cooking skills

Impact: boost recipes based on selected difficulty (time, method, number of ingredients, etc) 

Question 3: Preferred stores

Impact: User sees list of stores available for their location.

Personalisation impacts on experiences

Recipe Feed 

The recipe feed is a personalised using a combination of user profile and contextual data.

Search and Filters

The search page pre-selects some filters by default based on a user’s preferences. For example, if a user is Vegetarian this filter will be enabled by default. Some preferences (such as tastes or cuisines) have a soft influence on search results. Whisk will use a combination of relevancy and preferences to show the best results for the user.

Meal Planner

Autofill uses combination of user profile and contextual data to populate meal plan.

Did this answer your question?