Winnie is a marketplace for child care and backed by a trusted community of parents and providers.


Winnie needed an onboarding flow to personalize the content shown to users in home feed. The home feed was an important lever to retain users not actively searching for local child care providers. Analytics revealed a high churn rate in users who signed up but were not in the market for child care.

By default, the home feed was not personalized so users would see posts about a wide range of parenting topics. Although users had the affordance to follow and hide certain topics, very few users took advantage of this feature.

My hypothesis was that if the home feed was personalized based on information collected in onboarding, there would be increased engagement and content contribution in feed.


Users who provided the age of their kids during onboarding were almost twice as likely to like a post and create content – includes posts, reviews, and replies.


The onboarding flow would consist of three sections to capture the intent, location and age of a user's kids. By using these three inputs, the home feed could be personalized to automatically follow and hide certain parenting topics.

First Iteration

I started off by thinking through how a user could express intent for the types of local providers they were looking for with a multiselect table view.

The location field would be prefilled if the user gave location permission after signup. Otherwise location could be entered manually in the form of address, city, zip or neighborhood.

Second Iteration

At this point I explored how to use separate month and year pickers to allow users to provide the age of their kids. Once a user applied either month or year for a child, the other picker would appear on screen.

The issue with this design was around the error states that would have to be displayed if the user only provided month or year.

Shipped Design

In the final design, the list of providers in the table view was shortened. If a user selected any of the child care options, two additional questoins would appear at the bottom of the screen to understand what schedule and timing was desired.

If a user didn't select any of the child care options, then that user would not see posts in feed about child care.

A user could provide the age of their kids with one bottom sheet containing a month and year picker. By default the 'Apply' button would be inactive until the user interacted with either the month or year picker.

To edit the age of a particular child, a user could tap on the relevant table cell which would bring up a bottom sheet. Multiple children could be added and users could remove a child by tapping the minus icon.

If users wanted to manage this information at a later time, they could go to settings. From there a user could also add, edit and delete the age of their kids.