Forming new (good) habits is a murky process. Though everyone wants to do it, they are mostly unsuccessful. As a concept project, I created a functional chatbot that helps users stick with small, beneficial habits.
We’ve done lot’s of work, let’s check some from here.
I began with a survey to answer some key questions:
How are people forming habits?
What tools do they use?
How successful are they?
The survey had 33 Respondents. 90% were women, because the survey was posted in all-women FB group. 60% were from NYC, 20% from LA & SF, 20% were from other U.S. Cities
100% of respondents had tried to make habits
Only 12% had tried a habit app like Momentum or Productive.
People use specific apps for specific habits, not apps that are just for habits!
A few responses to the “What apps have you used?” were answers like My Fitness Pal or Headspace.
These results were surprising to me, and I wanted to learn more about the process people used to establish new habits.
Read the full survey and results
Over the course of 8 follow up phone interviews, a strong pattern emerged when people discussed habits they had successfully formed:
This small amount of time seemed to make the habit “durable,” since no matter what kind of day they were having, they could still do it. Longer tasks, like working out, had less consistent success because they required more advance planning and time.
Streaks were also highly motivating, as was sharing progress with friends.
Positive reinforcement was also important, since many of them mentioned how motivating encouragement from a loved one was.
All of the successfully formed habits also had a moment of benefit recognition, when the person working on the habit felt a positive effect from it. Many interviewees mentioned how motivating it was to visualize this benefit.
Notes from interviews
To look at competitors, I analyzed Productive and Momentum, the two most popular habit trackers in the app store, and Duolingo. Because people used specialized apps for specific habits, it was important to look beyond simple trackers. Though Duolingo is for language learning, it had come up several times as an app that helped people successfully form the habit of practicing a new language each day. Given their design resources and access to user data, the UX of Duolingo had to reflect broader insights into habit formation.
I created quick user flows to see the onboarding and tracking process with each of the apps, and evaluated their strengths and weaknesses as well.
- Create a positive rather than negative tone throughout experience to encourage users to keep tracking
- Create a more obvious way to see the connection between a habit and a payoff
- Make the habit manageable and short— start small
33 · NYC · Has her own marketing consultancy
27 · San Francisco · Web Developer
How could I help users enter the habit success loop?
User stories allowed me to combine the needs and opportunities I’d identified with the research I’d done on how habits actually get formed. I focused on synthesizing this information into specific tasks and motivations for both new and returning users. An important aspect of the user stories was identifying key ways to help users stay motivated, and helping them start with habits that were genuinely achievable and had clear benefits.
As a returning user I want to track my habit really fast so that I don’t take time away from other tasks
As a returning user I want to see how long my streak is so that I can stay motivated to keep it up
As a new or returning user I want to identify how the habit will help with a bigger goal so that I can stay motivated
“As a new or returning user, I want to start an achievable habit so that I don't fail right away
User flows allowed me to start thinking about how a user might experience all the steps associated with successful habit formation. In sketching and then creating digital versions of the flows, it became clear that a huge part of success would be reliant on getting users to track when they completed their habits. Without user tracking, motivational visualizations like streaks and badges didn’t matter.
How could tracking be as seamless as possible?
I revisited my interviews, and noticed that a few people mentioned sharing progress with friends via text.
This type of interaction would be easy to replicate in a chat bot, but was that truly the right interface?
In researching more, it was clear that a chatbot was the right interface for these kinds of standardized interactions. So long as the interface didn’t rely on user-generated text, various user flows could be easily automated—and still conversational— without relying on advanced AI.
The conversational interface also had the added benefit of an extremely low user learning curve, since they wouldn’t need to acquaint themselves with a new navigation structure and other unfamiliar aspects of a new interface.
See the flows
I began to sketch the basic UI components and write the dialogue for sample conversations users would have with the chatbot to complete different tasks like signing up. I also began to work on how to best visualize user progress through badges and charts.
Dialogue is the most important aspect of a chatbot. Writing it creates a few specific challenges. Chatbots should never pretend to be human. This is inconsiderate to users and can make them feel betrayed, creating a major violation of trust. In addition, the options offered to the user, the order of the bot’s responses, and the pacing of the interactions dictate how the user will feel from the interaction. In writing the dialogue, I focused on making Zoe friendly, clear, and a little quirky. She needed to be memorable, but she also needed to get to the point.
How do you prototype a conversation?
I wanted to get some initial feedback on my dialogue, but the core experience of a chatbot is the interaction between the bot and the user. The user types or selects a response, and then the bot replies. Without this interactivity, the user testing wouldn't provide accurate feedback.
I wanted to test the basic tone and structure of the dialogue I had created for the chat bot. Unfortunately, chatbot prototyping tools are still in their infancy. I created a “low-fi” chatbot prototype by texting the chatbot’s dialogue to a user in another room, and then seeking their feedback. Overall, it was positive and the user responded well to the badges and streaks. They mentioned that the entire sign up and tracking process was very fast. They also offered some advice on how to clarify key messages about signing up and communicating a streak.
See the low-fi wireframes
In branding the chatbot, I want to create a fun, feminine, and personal feeling. The first step was naming her Zoe, a common name that would allow users to envision interacting with someone else, not just an app. From research, it was important to create a distinct personality for the chatbot that users could connect with.
To that end, I identified key personality traits that would be appealing to Zoe’s target users and built her dialogue and tone around them.
I used bright, slightly pink red, and a contrasting turquoise to communicate energy, vitality, and progress. I combined these two colors into a gradient to create depth and individuality.
I chose a monospace font to further differentiate the visual identity, since monospace fonts are less common, and paired it with Futura for contrast.
I created a logo that was bold and worked in various backgrounds to communicate continuity and repetition.
Additionally, emojis communicate a lot about someone's personality. They can play a powerful role in a chatbot because they visually break up the blocks of text that are a natural part of a conversational interface. I wanted chatting with Zoe to feel like chatting with a friend, so I used emojis throughout her dialogue, iconography, and as inspiration for her branding.
In creating hi-fi mockups using Figma, it was key to create compelling visualizations for both streaks and badges. They had to be clear and invited users to track more and add to them. One source of inspiration was the Apple Watch, which several interviewees had mentioned as a large source of motivation for exercise. I used gradients throughout the create a more visually engaging interface, and took advantage of subtle shadow effects to separate messages and key information unobtrusively.
I created badges that used radial gradients to subtly encourage users to continue tracking so that they could intensify the color of the badge as they closed the ring. I made sure to show them both the badge they were completing and the upcoming badge for extra motivation.
Visualizing streaks and the effect of the habits was also important. A bar chart design allowed my to show unfilled days, encouraging users to keep tracking, while providing a more obvious and compelling streak visualization than the graphs or color-coded calendars used by other habit tracking apps. The chart had to clearly show failure or skipped habits without discouraging users so much that they abandoned the app.
Usability testing along with a few more user tests helped to refine some key design decisions. To get relevant feedback, I focused on the following priorities:
To fulfill these crucial requirements, I used the Chatfuel platform to create a functional Facebook messenger chatbot and began testing it with users.
With a newly functional Zoe, I began another round of testing to evaluate the initial interface features, the quality and tone of the dialogue, and the experience of tracking a habit. Because of limited time, I could not write all the dialogue needed to offer more than 1 habit options to users, though I made sure to ask each what kind of habits they would be interested in using Zoe for.
We’ve done lot’s of work, let’s check some from here.