Duolingo UX Analysis

Gaurav Makkar
UX Planet
Published in
7 min readMay 5, 2018

--

Image Credits: Duolingo

I’ve a gazillion apps installed on my phone. I’m the complete antithesis of people installing fewer apps on their phones nowadays. Mostly I install out of impulse if hear about an interesting app on Product Hunt or other tech blogs. Though, sometimes i install apps to analyse the best and worst parts of user experience or to develop my product thinking.

Recently, i did one such analysis for Duolingo. Duolingo is a famous language learning app used by millions of people across the world. It offers multiple languages to choose from and start learning.

I have divided my analysis into 3 parts: Onboarding, Language Learning Experience, and Gamification &Engagement to make it easily digestible. So, without wasting any time, let’s dive into it.

Onboarding

What’s Good

Upon opening the app for the first time, I was greeted with a flash screen stating a crisp value proposition — “Learn a language for free. Forever”. Powerful words to let a user know what the app is all about. A clear Call-To-Action (CTA) on the page also makes it easy for me to move forward.

Splash Screen

Clicking on “Get Started” doesn’t force me to create an account. Instead it lets me choose from the list of languages that i might be interested in. On choosing Spanish, it takes me ‘Pick a Goal’ page where I’ve to choose how many minutes a day i’m willing to commit towards learning Spanish.

There are couple of interesting things Duolingo is doing here that I love:

  • It’s delaying the account creation process at the start to reduce the number of drop offs at the signups process.
  • It’s not wasting any time in letting me pick the language that i’m interested in.
  • Also, it’s making me commit to a goal from the get-go. Forcing me to commit and then nudging me daily to complete helps with the engagement.
Language & Goal Selection Screens

On choosing the Daily Goal, i’m taken to Home/Learn page, where I’ve to select my proficiency level before proceeding. And, on choosing Beginner option, I’m on my first lesson.

This has been a super-slick experience so far. From opening the app for the first time time to starting my Spanish lesson, it took just 4 clicks (except notification pop-ups that i’d address later). No account creation needed and no need for keyboard during the onboarding flow — Perfect!

Taking a user to the core product as soon as possible is very critical, and Duolingo excels at it.

Home Screen

What can be improved

Asking for permission for push notifications at the right moment is the key to engagement and retention of users. Request for a permission too early — even before user understands the core value of the product — might prompt the user to opt out. Similarly, wait too long and you might fail to bring users into the virtuous loop necessary for engagement and growth.

I believe this is one of the areas where Duolingo can take a more nuanced approach. Currently, as soon as I select a language and land on Pick a Goal page, a dialog box pops up stating that Duolingo needs to send me notifications to make sure i don’t miss my daily goal. I can’t read what the animated owl is holding in the background before i give the permission. I can’t even change my daily goal before I accept or reject notification permission.

Notification Permission Popups

On clicking ‘OK’, a second dialog box appears, which is an iOS system-level dialog box with an option to opt-in/opt-out. It’s good that Duolingo is showing user a pre-permission dialogue box, so a user understands why Duolingo is asking for permission. But that’s not good enough. It still feels like notification is just slapped on the screen without giving any proper context.

One possible option to explore — Move the option to choose daily goal slightly late in the onboarding process. Let the user do a small language lesson for few seconds and then bring in the ‘Pick a Goal’ page. I love how Grasshopper, a coding app recently launched by Google, handles this part of the onboarding flow. After completing first lesson, as soon as i click on Next Lesson, i’m being shown an overlay where i can choose the type of schedule. On clicking, ‘Confirm’, i’m shown system-level notification. Bingo!

Grasshopper Notification Permission Flow

Language Learning Experience

What’s Good

I’m no expert on Language Learning. Therefore, commenting on the effectiveness of the Duolingo teaching methodology is out of the scope. Though, It’s worth highlighting that Duolingo uses multiple stimuli — visuals, audio, writing — to enhance your learning experience. Once i choose the “beginner” option, i’m dropped into the first lesson where i’ve to match images with the words. On finishing the lesson (in less than 2 minutes), Duolingo informs me how far away i’m from achieving my daily goal, and subtly nudges me to keep practicing to reach my goal.

As soon as I finish the first lesson, i’m asked to create a profile. Though, i have the option to skip and proceed with practice. I’m allowed to do so till the time i’m finished with all lessons in first level. Beyond that, for me to continue practice and save progress, I’ve to create a profile. I love how Duolingo lets me experience the core use of the app without account creation and delays the process of account creation for a “good-enough” time.

Even the signup process is seamless. Enter name, email, and password and it’s done.

Account Creation Screens

What can be improved

While learning anything new, I’ve a habit of preparing pocket size cards that I use to memorize and reference whenever needed. I wish I could do something similar in Duolingo. I can’t even save words/sentences that i got wrong the first time. If i forget a word in the middle of a new lesson, I have to go through the previous lesson again to find it. Exiting the app to google the word seems like a much easier option.

Signup process could be reduced further by using login services of most used apps such as Facebook and Google.

Gamification & Engagement

What’s Good

Gamification is at the heart of Duolingo experience, and therefore deserves a separate section even though it is a reinforcement mechanism for learning the language . Some of the gamification methods (rooted in behavioral psychology) used by the app are worth highlighting:

1) Bite-sized chapters to keep users motivated

Duolingo has divided the curriculum into skills, skills into levels and levels into bite-sized chapters that can be finished in a small sitting of few minutes. In addition, users can unlock the next skill (and see the contents of next chapters), only if they have reached the Level 1 on all the previous skills. Therefore, user is focused on the task at hand and thus spared the Cognitive Overload of rest of the curriculum.

Skills & Levels in Duolingo

2) Commitment to maintain practice streak

As soon as you achieve your first daily goal, Duolingo pushes you to commit to a 7-day streak goal. If you commit and miss your streak, you’d lose 50 gems, but if you maintain you’d get 100 gems back. A subtle use of Endowment Effect/Loss Aversion (humans tend to prefer avoiding losses to acquiring equivalent gains) to ensure that user engages and builds the habit of daily learning.

3) Keep users engaged with variable rewards

Duolingo also uses Variable Rewards, another very effective behavioral psychology methodology to ensures that users keep coming back to the app. As soon as you finish a chapter, you can open one of the 3 closed chests to find the number of gems you’ll be awarded, and the number of gems vary every time. And you can double that reward by watching an ad :)

What can be improved

Variable Reward isn’t ‘truly’ variable. User only gets variable number of gems on completion of a goal. Novelty dies off soon and it doesn’t give the dopamine hit I got the first time.

I’ve no internal data on usage of the product to give an informed opinion on what might work best as a variable reward, but some of the items present under the Shop tab — Health Shield for 30 mins, Full Health Refill, Streak Freeze — can also be used to reward the user. Duolingo can also consider giving Premium version (no ads and offline mode) free to the user for a limited amount of time.

In conclusion, I really like the experience of using the app and hope to use it regularly to learn a language. Once I’ve used it for a long enough time, i’d have a more nuanced opinion on effectiveness of language learning experience and will write more about it. Adios for now!!

Thanks Pooja for reading the draft and suggesting edits.

--

--