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.

Related Projects

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.

Why did so few people use habit apps? 

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.

Overall Opportunities:
- 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

See the  full competitive analysis


33 · NYC · Has her own marketing consultancy

Kate is trying really hard to improve her health and work habits.

She knows that both are important to achieving her goals, but it’s been a start/stop process.

She knows she’s pretty good about working out and eating, but she doesn’t have a clear way of seeing how far she’s come.

She’s also tried to be better about getting less distracted at work, but it’s hard since it feels like she’s always putting out fires.

27 · San Francisco · Web Developer

Danielle tries to have “self-love”  but it’s hard to let go of negative self talk.

She does a lot of journaling but isn’t as consistent as she’d like to be about it.

She also feels like she could be healthier and wants to actually get into new healthy habits instead of stopping and starting with them like she always has before.



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

Read the user stories


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.

Read the brand guide


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.

See the hifi mockups



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:

  • It was important that the bot actually respond to user clicks and selections, and actually send them new messages.
  • The prototype also needed the accompanying animations users associate with messaging apps, like new messages appearing from the bottom of the screen, and typing being indicated by a rippling ellipsis.
  • The testing needed to help me validate the core features of my chat interface, like the buttons that would provide options to users and the varying “branches” of conversations that users would go down based on their responses.

To fulfill these crucial requirements, I used the Chatfuel platform to create a functional Facebook messenger chatbot and began testing it with users.

Prototype Link


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.

  • The type of habit became a major priority. Every tester said they would like to use Zoe for a small habit, like making a daily agenda, but none wanted to use her for health and wellness habits because these were very personal and emotionally complicated.
  • Message length became an interesting point of confusion. Some of Zoe’s responses were just a little too long to fit onto 1 mobile screen, thus forcing users to scroll up.
  • Testers wanted clarification on when they could type messages to Zoe v. when they could only select an option from a menu. Though this usability challenge is due to Chatfuel’s platform, it is definitely important to address through a quick explanation during onboarding
  • The visualizations received a positive response, though testers mentioned the chart legends were difficult to see as part of the image. They asked if these could be sent as individual messages instead.

See results




  • Working on Zoe showed me the value of conversational interfaces. For standardized tasks, they are powerful tools that can be integrated into apps that users are already using the most each day. They can eliminate the learning curve that exists with even the best interfaces, and with AI, they have the potential to become incredibly customized and effective.
  • Context is everything. The emotional context surrounding habits is incredibly complex and unique to each person. Any tools to help with habit formation need to incorporate the emotional context of users. Physical context is also important. On a bright day, the legend for a small chart on only half a phone screen isn’t very legible. Designers need to account for the physical context their tools may be used in.

If I had more time...

  • Explore the social side of habits. What if Zoe could be a part of a group chat that helped each member stay accountable for something they wanted to do?
  • Bridge in-person and artificial interactions. What if users knew a real person were tracking their responses to Zoe? What if they had a human coach who messaged them 1-on-1 each week to review progress? Social accountability is powerfully motivating and chatbots could help make these human-to-human interactions more effective.  

Related Projects

We’ve done lot’s of work, let’s check some from here.