How Duolingo Built and Iterated Its Core Growth Feature: Streaks | Bolt Picks
Exploring How Innovative Features Drive Product Growth Through 600 Experiments

Have you ever seen someone post their Duolingo streak on social media? The language-learning app has a feature called "streaks" that gamifies consecutive days of practice to boost user retention — widely considered Duolingo's most important growth driver.
Recently, Duolingo product manager Jackson Shuttleworth sat down with Lenny's Podcast to share how the streak feature evolved, key insights from over 600 experiments, lessons from successes and failures, principles for building effective streak mechanics, how to run a high-performing product team, and advice on creating engaging notification systems. We've compiled and translated excerpts from the interview; the original podcast is available via the link at the end.
🔍 Key Takeaways
1. Retention comes first: For a learning app, is the learning itself more important, or user retention? Duolingo's answer: without sustained engagement, learning simply can't happen. Streak mechanics must be tuned to boost retention without compromising the learning experience.
2. Test-first strategy and key insights: Over-indexing on inactive users' short-term needs can hurt long-term retention. Design requires clear standards and a more precise understanding of user segments.
3. The importance of seven-day retention: Improving user retention within the first seven days has outsized impact. Setting streak targets helps users achieve seven consecutive days of practice, strengthening long-term stickiness.
4. Flexibility in design and user experience: Flexibility effectively boosts return rates and retention. But it needs to be balanced against challenge to avoid undermining long-term engagement.
5. Notification strategy and user participation: Timing and frequency of notifications are critical to retention. Reminding users at the right moment to maintain their streak can successfully motivate them to return and keep learning.
6. Celebrating achievements to deepen engagement: Small details have outsized impact on user experience. The "Perfect Streak" feature celebrates user achievements with no material reward, yet boosts engagement through visual badges and haptic feedback.

Image: Podcast shownotes
Part 01
The Evolution of Duolingo's Streak Mechanic
1) Lenny Rachitsky: What is the Duolingo streak, and how impactful is it?
Jackson Shuttleworth: Duolingo is a language-learning app where users track consecutive days of learning through a "streak." Start learning, complete your first lesson, and your streak begins; keep using the app each day, and the streak extends.
"Consecutive days" isn't absolute — we've built in flexibility. There's a feature called "Streak Freeze," basically insurance for your streak. The concept is simple, but over time we've layered on challenges, goal-setting, rewards, and social features. Many notifications are also tied to streaks.
2) Lenny Rachitsky: What did the earliest version look like?
Jackson Shuttleworth: Streaks were there from Duolingo's launch. Initially, users selected different XP (experience point) targets — say, 10 XP or 50 XP — and hitting that daily goal extended their streak. This worked early on and matched Duolingo's initial user base. But it meant if someone set an overly ambitious target, they could complete multiple lessons and still fail to maintain their streak. Obviously not ideal.
We ran many experiments. One of the most impactful, I believe, was shifting the streak system from hitting XP targets to simply completing one lesson per day. The risk was that users might care less about streaks since the tie to goals was weakened. But the results were striking — significant DAU growth.
Making streaks easier to maintain while still preserving meaning is crucial. The first question in building a streak system is: what's the unit of use? For Duolingo, it's completing one lesson. If what we care about is users coming back daily to finish one lesson, then basing streaks on that rather than multiple targets doesn't hurt us at all.
The core change was moving streaks from XP-based to lesson-completion-based. It's simpler and more direct, easier for users to grasp. Product managers easily fall into the trap of setting complex goals, wanting to attach multiple objectives or tasks to a feature. But the simple "complete one lesson" is more accessible to more users.
3) Lenny Rachitsky: Someone asked Luis [A. von Ahn, Duolingo co-founder] whether optimizing for learning or optimizing for engagement matters more, and he replied: "We focus everything on engagement, because if users don't come back, they can't learn at all." What do you think of this?
Jackson Shuttleworth: I strongly agree. On Duolingo, the direct consequence of users not returning is no opportunity to learn. Without retention, they never even get to use the learning features. Learning is a long-term process; simplifying the experience might drive short-term stickiness but won't lead to actual learning. So streaks work best when built on something users genuinely care about. We've used many approaches to ensure streak adjustments don't undermine the learning experience or over-intervene. We've constantly asked how to boost retention without sacrificing learning outcomes.
4) Lenny Rachitsky: Talk about key lessons, insights, and turning points in improving the streak mechanic.
Jackson Shuttleworth: Duolingo has a strong "test-first" philosophy — we prefer validating ideas through testing rather than endless debate. Data showed many users starting lessons without finishing, or losing streaks without loss aversion kicking in to bring them back. So we pursued this thread, thinking about how to make maintaining streaks easier.
We ran an experiment with a new rule: complete just one exercise, and your streak continues. But DAU didn't budge. We'd lowered the bar, but no one felt that doing a single exercise counted as "doing Duolingo." So we realized the streak standard still wasn't clear enough.
This approach attracted the least active users: they'd come in, do one or two exercises, and leave. Designing streak mechanics requires thinking about both habit formation and engagement. In this experiment, we over-indexed on one user segment that wouldn't stick with Duolingo long-term. The attempt reminded us to understand target users more precisely.
Part 02
Retention Lift at Critical Moments
5) Lenny Rachitsky: Any other UX lessons to share?
Jackson Shuttleworth: We focused first on days 0 to 7. We found that once users hit seven days, loss aversion kicks in and they're more likely to stay. So day-one-to-two streak retention improved significantly; day-two-to-three saw slightly less lift but still progress. By day seven, retention effects plateaued. This showed that while thirty-day streak users aren't necessarily more engaged than seven-day streak users, the biggest UX changes happen in that first week.
So we did extensive work to help users achieve seven-day streaks. Once they hit that milestone, they're much less willing to leave. We launched "Streak Goals" — setting targets to help users reach certain streak lengths. Rather than designing something complex from the start, we launched a simplified version, tested it, then iterated.
Initially, we ran a test inspired by another team. They'd used highly effective copy: "If you subscribe to Plus, you're 5.6x more likely to finish the course." This copy helped drive paid conversions. We tried something similar: "If you achieve a 30-day streak, you're 7x more likely to finish the course." It got excellent feedback, significantly boosting engagement.
We then ran a series of experiments testing different target lengths (14 days, 30 days, etc.). While all were effective, they appealed differently to different user segments. We realized we might need to offer different target options for different users. So we ran an experiment: start with a 30-day target, let users choose whether to continue, and if they declined, offer an easier goal. The intent was to get users to commit to a goal first. The results proved that the opt-out button itself had massive positive impact. Though we initially worried giving users an exit would reduce engagement, the data showed that offering choice actually deepened participation.
Ultimately, this strategy broke through: giving users different goal options significantly increased their engagement.
6) Lenny Rachitsky: You run product and company through constant experimentation and incremental improvements. Doesn't this risk making the product and experience incoherent, lacking consistency and cohesion, eventually becoming a mess? Do you have founders gatekeep all changes to maintain consistency? What else prevents feature bloat?
Jackson Shuttleworth: Our product design lead, product leads, and Luis are all involved in product review. They have strong product intuition, which helps maintain consistency. As PMs, we constantly reflect on where features are heading, regularly reviewing progress and roadmaps. At least quarterly, we revisit the streak feature: what have we learned, how has it evolved, what's the vision?
I believe having clear strategic goals is essential. Without clear strategy, it's easy to get trapped in local optima and eventually stall. So my view is: if you have clear strategic goals for a feature's evolution, all A/B tests should serve long-term objectives, not just chase short-term gains.
But when we hit local optima, we need to ask: can we simplify and reset features, interfaces, or characteristics based on everything learned, while preserving effectiveness? Can we make it cleaner and more intuitive to enable future expansion? These experiments are extremely hard — usually done when a feature is already highly optimized. But they're important; otherwise you end up with a cluttered app that loses its core value.
7) Lenny Rachitsky: Duolingo has a unique advantage other companies don't — people are inherently motivated to learn languages. Using incentives to get users back to an app to do something they already want to do is an advantage many other products lack. How do you see this?
Jackson Shuttleworth: This is indeed a huge advantage for Duolingo. But few companies would claim they don't deliver user value. Even games provide moments of relaxation, helping people temporarily escape life's pressures. Any company wanting streaks to work needs to find ways to surface value to users, to make them feel good about it. For a company like Duolingo this may be easier, but I believe others can creatively express this too.
Duolingo's streak mechanic works because progress in language learning is hard to directly perceive. Improving language ability is a long process; it may take years to truly get better, and Duolingo makes this simpler. But reaching C1 or C2 fluency still requires thousands of hours — progress that's hard to quantify. So for us, streaks are especially effective because we may not be able to tell you "today you learned 0.01% more Spanish," but we can tell you "your streak just grew."
So I think when your product involves progress that takes a long time to manifest or feel, streaks are an excellent way to help users perceive that progress — at least making it feel more concrete, more tangible.
Part 03
Experiments and Lessons in Product Design
8) Lenny Rachitsky: Were there any experiments you considered successful but ultimately decided not to ship?
Jackson Shuttleworth: On the lesson page, Duolingo's only UI elements were the progress bar at top and remaining hearts — this simplicity aligned with Duolingo's design philosophy. We then decided to show XP gain during lesson completion, so users could see their XP accumulate and be less likely to quit. After finishing, the system would display final XP earned. Internal testing got positive user feedback.
But Luis argued: "This is the most important screen in our app. It's the learning page; the focus is learning. Adding this element might distract users." We realized that while the XP display was a simple engagement boost, it might inadvertently interfere with the app's most core area. He asked: "What will you do with this later? How will this feature iterate? Will it make the lesson experience more gamified?" Ultimately, we shelved it because of potential interference with the learning experience.
Though we decided against it then, our XP systems and other engaging mechanics have since matured enough that in retrospect, that approach might work better in lessons now. But at the time, keeping it didn't seem wise.
9) Lenny Rachitsky: What lessons have you learned in the product design process?
Jackson Shuttleworth: We designed the "streak" as a flame icon, which occupies an important place in our signature design, symbolizing user engagement and retention — like keeping a flame burning. Many users understood the flame represented streaks, but we found users from different cultural backgrounds and life stages interpreted this metaphor differently. For example, in user experience research we conducted in India years ago, the flame concept resonated not at all. This reminded us that doing more global UX research based on user segments is essential — only then can we truly understand how users comprehend and experience product features.
Additionally, our previous screen design had a flame icon that would ignite daily to indicate continuity. While intuitive as a metaphor, when redesigning we created a cool milestone animation where numbers scroll as streak days increase. The visual effect was nice, but from a product perspective, what we really cared about was showing users' streak days, not just the flame icon image. So in designing the "streak" feature, we realized we shouldn't get too caught up in beautiful stories and metaphors, but ensure comprehensibility and usability.
From a product design standpoint, we learned an important lesson: clearly show the data we're actually tracking, with form serving function. Now, you can see in many places our designs emphasize showing the number more than the flame icon itself.
10) Lenny Rachitsky: Duolingo has added more flexibility features during learning, like freezing streaks. Was this a major discovery?
Jackson Shuttleworth: I'd like to share a special gift — my co-lead Antonia gave me the Duolingo Streak Serenity Prayer. It goes: "Grant me the serenity to accept the things I cannot change, the courage to change the things I can, and the wisdom to celebrate with joy at all times." This prayer emphasizes the balance between flexibility, forgiveness, and pursuing perfection, expressing the idea of "celebrating with joy at all times" — exactly the core philosophy behind our streak design.

At Duolingo, we view streaks as "a bend, not break" approach. In other words, if you miss a day, we want you to come back and keep your streak going. But if you won't miss any days, we'd rather you use the app daily.
Flexibility plays a crucial role in our design, especially for driving DAU growth. We once ran an experiment: originally each user had one Streak Freeze, and we changed the rule to allow two or three freezes maximum. Results showed this significantly improved user return rates and drove DAU growth.
However, another interesting finding: the difference between three Streak Freezes and two wasn't actually that large. This shows that while flexibility is key, how you balance it matters enormously. Too much flexibility and users might develop habits of frequent breaks, undermining engagement and learning outcomes.
The core question is: how much flexibility is right? Early on, we found that giving more flexibility when users are just starting streaks effectively improves retention. For example, we tested giving users two Streak Freezes directly when starting a new streak, without needing to purchase them with gems (Duolingo's virtual currency). The gem purchase was meant to add challenge, to make it feel like "a reward you earned." But we found giving users more flexibility directly was more effective — especially for streak starters, who more easily quit when hitting early obstacles, but with flexibility would stick with it longer.
Once users reach seven-day streaks, stability jumps dramatically and engagement rises. At this point, flexibility can appropriately decrease, because as streak length grows, users value their streaks more. And most users, unless in situations like backpacking travel where you can't find service, will maintain their streaks.
So designing flexibility mechanisms requires understanding different users' needs and avoiding cultivating "I can rest anytime" habits. This balance is one of the key challenges in streak system design, and also an ongoing learning process.
Part 04
Effective Strategies to Boost User Retention
11) Lenny Rachitsky: Duolingo's notifications are an important feature. Can you share your notification strategy?
Jackson Shuttleworth: We send two streak-related notifications daily. The first is a practice reminder, sent 23.5 hours after your last practice. If you practiced at noon today, we notify tomorrow at 11:30 AM. We used to let users set reminder times — you could set when you wanted to maintain your streak, say 7 PM, and we'd notify based on that. But we found life always interferes with plans; your intended practice time changes. We tried many complex experiments, but ultimately proved 23.5-hour reminders are most effective.
Besides this practice reminder, we send another notification called "streak save." If by 10 PM you haven't extended your streak, we notify you: "This is your last chance." You might think this is spammy — getting an app notification at 10 PM is annoying. But we found because users care so deeply about streaks, attaching so much positive emotion, they don't want to lose it. This reminder is actually viewed positively by most users, not negatively.
Obviously, this serves our purpose of getting users back to maintain streaks. I believe if you think about notification strategy in terms of the associated feature, understanding how users view that feature, you can increase notification frequency — just consider notification burden and timing. For us, this late-night message, though potentially seen as spam, is extremely effective; many users find it genuinely useful.
12) Lenny Rachitsky: Any other features that boost engagement?
Jackson Shuttleworth: Beyond providing flexibility, we heavily emphasize celebrating achievements, especially around streaks. To encourage sustained effort, we launched a feature called "Perfect Streak."
It's very simple: if users go consecutive days without using Streak Freeze, their streak gets marked gold and the calendar progress bar becomes prettier. This change brings no material reward; the only difference is that small visual indicator. Seemingly tiny, yet powerfully motivating.
"Perfect Streak" isn't just a reward; it sends a clear message: "If you go seven days without using Freeze, your streak becomes perfect." It also helps us identify users who aren't using Streak Freeze, triggering their pride and sense of accomplishment.
One employee once lost a four-month perfect streak due to crossing the International Date Line. For her, this was devastating. This example shows people's attachment to perfect streaks can sometimes exceed that to regular streaks. While flexibility mechanisms are crucial, helping users maintain "perfect status" is equally a key balance in our design.
13) Lenny Rachitsky: If there are celebratory behaviors that don't rely on copy or additional features, but create excitement through simple means, do they work better?
Jackson Shuttleworth: Yes. When users genuinely care about a feature, simple elements like animations, haptic feedback, and sound effects can have outsized impact.
For example, we didn't add sound effects to streaks, but we tested haptic feedback like phone vibrations. This has two benefits: first, it creates a wonderful experience. Every time you extend your streak, phone vibration paired with visual celebration feels especially delightful; second, it gives you a brief pause. Many PMs want users to complete tasks quickly, but sometimes I want you to stop and briefly enjoy the moment.
Of course, this design shouldn't apply to every screen, only at important moments. I want users to truly stop in that instant and savor the achievement. If you enjoy the process more, you'll care more about your streak and be more willing to return tomorrow.
So appropriate animations and haptic feedback are highly effective; they help users better focus on the moment and build deeper emotional connection with their streak.
14) Lenny Rachitsky: How do you balance these design strategies so they don't create excessive pressure while maintaining enough challenge and motivation?
Jackson Shuttleworth: We constantly think about feature bloat risk. For example, we have streaks, then added perfect streaks, then even started tracking consecutive weeks of perfect streaks. Suddenly we have two competing streak numbers.
But actually, the perfect streak concept is introduced only after users achieve seven-day streaks. The reason is simple: if we added extra streak features from the start, cognitive load increases. We have many great streak features, but they typically require users to maintain longer streaks before experiencing them. This comes from repeated testing. We've tried introducing these features early in the user journey, but usually found the earlier you introduce too many concepts, the worse the results. Because users struggle to process and digest so much information, especially before they've fully adapted to core features.
📮 Further Reading
Linear Bolt Bolt is an investment initiative by Linear Capital specifically for early-stage, global-market-facing AI applications. It upholds Linear's investment philosophy, focusing on projects where technology drives transformative change, hoping to help founders find the shortest path to their goals. Whether in speed of action or investment approach, Bolt's commitment is lighter, faster, more flexible. In the first half of 2024, Bolt invested in seven AI application projects including Final Round, Xinguang, Cathoven, Xbuddy, and Midreal.


