Collecting Signals
Building an accurate and useful user profile must be done through considered UX design - this means gathering data about a user 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 behavioral 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.
- Behavior and activity: tracking and analyzing user behavior is another key method of developing 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 customization 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: Personal Details
Impact: The data collected here helps to set filters to ensure that meals or recipes provided will fit into the user’s health requirements
Step 2: Interests
Impact: The data collected here trains a user’s soft preferences and a user will see recipes from selected interests more often.
Step 3: Favorite Cuisines
Impact: The data collected here trains a user’s soft preferences and a user will see recipes from selected interests more often.
Step 4: 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 5: 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 a list of stores available for their location.
Personalisation impacts on experiences
Recipe Feed
The recipe feed is a personalized 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 a combination of user profile and contextual data to populate meal plan.