Trevor McFedries

Behind the product: Duolingo streaks | Jackson Shuttleworth (Group PM, Retention Team)

Jackson Shuttleworth is a Group PM at Duolingo, where he leads the retention team and the powerful streak feature. The streak feature, which gamifies consecutive days of learning, has been Duolingo’s most important and innovative growth lever and a key driver of their growth to a $14 billion business with almost 600 million users. In our conversation, we dive deep into the history and lessons of this feature:

Published
Published Jun 14, 2025
Uploaded
Uploaded Jun 14, 2026
File type
YouTube
Queried
0

Full transcript

Showing the full transcript for this video.

AI-generated transcript with timestamped sections.

0:00-1:30

[00:00] Duolingo is a $14 billion company. It's hitting all-time highs too. It just keeps going up. I think it doubled in value in the past six months. Streaks is the most impactful feature. We have right now over 9 million users with a year-plus streak. If you look at the numbers, I think it's been our biggest growth lever. What Duolingo really focuses on is, you know, how do we help users build habits around language learning? Getting a user to come back the next day is the biggest problem to solve. Let's get into the mother load of learnings from the journey [00:30] turns along the way. I'd say like test everything. We've run in the last four years over [redacted address]. So every other day we've actually set up really good infrastructure for copy testing. We used to say continue our like standard CTAs continue and we changed that to commit to my goal and it was like a massive win. There's so much human psychology that you all learn through all these experiments of just like how to motivate people what motivates what demotivates. Say that you played a mobile game that you've done it for 3,000 days in a row. [01:00] I don't know, maybe that hits a little bit different than you've learned Spanish for 3,000 days in a row. [01:04] you [01:07] Today my guest is Jackson Shettleworth. Jackson is a Group Product Manager at Duolingo leading the retention team. [01:14] This is a different kind of episode that I'm experimenting with. [01:18] where we spent the entire conversation focused on the journey and lessons of a single feature [01:24] In this case, Duolingo Streaks. [01:26] Duolingo is a $14 billion business

1:30-3:02

[01:30] Just over the past six months, they doubled in value. They're hitting all-time highs in usage and market cap. They're also one of the very few successful and also the single biggest consumer app business in the world. [01:42] And as you'll hear from Jackson, the streaks feature is the single most impactful feature that most contributed to this growth and success. In other words, you could argue this one feature created billions of dollars of value, which to me means it is worth studying in depth. In our conversation, Jackson shares the history of the streaks feature, all the biggest wins and wrong turns they've taken along the way, what he and his team have learned about what works and doesn't work with a streaks mechanic, [02:12] in a way that allows them to run over 600 experiments on this product and continue to find big wins. I hope to do more episodes like this on features and products that you'd love to hear more about, so leave a comment either on YouTube or on Substack and tell me which product or feature you'd love to see me cover. And if you enjoy this podcast, don't forget to subscribe and follow it in your favorite podcasting app or YouTube. It's the best way to avoid missing future episodes, and it helps the podcast tremendously. With that, I bring you Jackson Shuttleworth. [02:44] Jackson, thank you so much for being here. Welcome to the podcast. [02:48] Yeah, thank you. Long time listener, first time caller. I appreciate it. So this is going to be a really interesting conversation. I've never done an episode like this before where we basically spend like an hour, an hour and a half going into one episode.

3:02-4:51

[03:02] Feature of one product? [03:05] But this is a very special feature. It's a very special product. Have you ever spent like an hour, an hour and a half just talking about this one feature with anyone? Well, internally, so when we when we onboard new folks to the team, we'll do I actually just did this with somebody that joined the team recently where we spent and I was like, hey, let's spend an hour just talking about the streak. [03:24] We got through an hour and I got through about 30% of what I wanted to share. There's just so much. We'll talk about this, but there's so much that we've learned over the years. [03:33] But never anything externally like this. I think we've shared bits and pieces of learnings, but this will be like the... [03:38] The mother load of learnings, hopefully, of how Duolingo is built the street. We should title this The Mother Load of Learnings of Duolingo Streaks. [04:08] into action, all so you can get your users to do what you actually want them to do. First, Pendo is built around product analytics, seeing what your users are actually doing in your apps so that you can optimize their experience. Next, Pendo lets you deploy in-app guides [04:23] that lead users through the actions that matter most. Then, Pendo integrates user feedback so that you can capture and analyze what people actually want. And the new thing in Pendo: Session Replace, a very cool way to visualize user sessions. I am not surprised at all that over 10,000 companies use it today. Visit Pendo.io/Lenny to create your free Pendo account today and start building better experiences across every corner of your product. P.S. You want to take your product-led

4:53-6:30

[04:53] Check out Pendo's lineup of free certification courses led by top product experts and designed to help you grow and advance in your career. Learn more and experience the power of the Pendo platform today at Pendo.io slash Lenny. [05:09] This episode is brought to you by Vanta. When it comes to ensuring your company has top-notch security practices, things get complicated fast. Now you can assess risk, secure the trust of your customers, and automate compliance for SOC 2, ISO 27001, HIPAA, and more with a single platform, Vanta. [05:39] Plus, you can save hours by completing security questionnaires with Vanta AI. Join thousands of global companies that use Vanta to automate evidence collection, unify risk management, and streamline security reviews. Get $1,000 off Vanta when you go to vanta.com slash lenny. That's V-A-N-T-A dot com slash lenny. [06:02] - Okay, so for people that don't know anything about what Duolingo Streaks are, can you just first give a brief explanation of what is Duolingo Streaks, what is this feature all about? - Well, presumably people know Duolingo is a language learning app. The Duolingo Streak tracks currently, anyway, how many days in a row you've done a lesson. So you come to Duolingo, you do a lesson, [06:22] Your first lesson, you'll start a streak, and then every consecutive day that you come, use the app, you'll extend your streak. And I should actually put an asterisk around...

6:30-8:02

[06:30] how many days in a row because we also have built flexibility into the features. So we have these things called streak freezes. It's like insurance for your streak. So [06:39] It's a pretty simple feature in theory, but over time we've layered on challenges and goal setting and rewards and social features. A lot of our notifications are tied to the streak. [06:53] Pretty simple feature to understand, but it's been a really rich feature for us to build on top of. Some people might be hearing this be like, Duolingo Streak, so what's the big deal? There's other people that are like, holy shit, I want to learn everything I can possibly learn about Duolingo Streak. So many companies are trying to copy what you've learned from this. Give people a sense of the impact that this one feature has had on Duolingo's success and growth. [07:14] This is, and this is not just the, you know, subjective retention PM talking. I think this is our biggest feature at, with the exception of the lessons. And I think it's actually worth start that like, [07:24] Streaks are a great engagement hack. I'm kind of the opinion that any team, any app out there can introduce a streak, and if you figure it out, it probably works. [07:33] to retain users, but at the core, you have to have an app that people want to use. And people really like using Duolingo. It's fun, it's delightful, you learn something. And so it allows us to layer an engagement mechanic on top of that. The streak is really powerful. So [07:47] It ships – [07:48] a disgusting amount of DAUs. Again, it is just, it is, it is our, um, one of our golden geese. And, and again, what's cool is that like, you know, you look at notifications, notifications for Duolingo is massive. I mean, you know, us sending better, uh,

8:02-9:45

[08:02] whether it's copy or timing, so many of our notifications work because they reference the streak, because users care about the streak. And so not only is it itself, us iterating on the streak, a huge driver of DAUs, but it's also something that enables other really high valuable features. [08:21] I was looking up some stats before I came on and... [08:24] It's pretty crazy. So we have right now over 9 million users with a year plus streak. So 9 million of our users have had... [08:33] use Duolingo, [08:35] every or almost every day for... [08:37] uh, you know, well over a year, um, which, which is pretty, which is, it's, I don't know. It's, I like to imagine things in terms of like, you know, okay, well, like if you put all these people in a city or, you know, in a place, where would it be? And like, ah, it's like a very large city, 9 million people. So. [08:53] For a year, have a year-long streak. That's incredible. I was just looking at the stock of Duolingo. Duolingo is a $14 billion company at the time we're recording this. It's hitting all-time highs, too. It just keeps going up. I think it doubled in value in the past six months, something like that. [09:23] Thank you. [09:23] I mean, if you look at the numbers, I think pretty objectively has been our biggest growth lover for driving DAUs. And also say a lot of it's just related to how we think about growth at Duolingo. And a lot of what we try to do is organic growth. You know, we think about growth, you know, just as much as bringing new users onto the platform is not losing them. If you're just bringing people onto the platform, then they churn.

9:45-11:25

[09:45] That's not going to be sustainable. And so as much as we can do to keep our users coming back and actually retaining as users, it's going to make it it's going to give us a much easier base to continue growing DAUs off of. [09:57] Perfect. Okay. [09:59] Talk about how this feature originally came to be. What was the original version of it? What was the original insight that led to V1? Yeah, so the oldest streaks are as old as Duolingo itself. When we launched Duolingo, we launched with the streak. And I say we, I was like just graduating undergrad when Duolingo launched. So this is well before my time. [10:18] But we launched with a streak feature. [10:21] The, you know, the initially how the feature worked was you'd come to Duolingo and you'd set a goal for yourself. And it was an XP based goal. So Duolingo, a little bit of like, you know, nomenclature. We have a experience point space system that drives a lot of our features in the app. [10:36] And the way you'd set it is you'd say, you know, based on what your language learning goal was, [10:40] Maybe you have a 10 experience point goal versus a 50 experience point goal. And so extending your streak would be [10:47] "Hey, can you hit 50 experience points if that's what you set your goal to be?" And this worked well. I think this also speaks to how Duolingo initially grew. Luis launched it with a TED Talk. We probably had a more tech-forward user base initially, so this whole idea of an experience points-based streak system made sense. But what that also meant is that you could have a user come and use the app, do multiple lessons a day, and maybe they just set too hard of a goal for themselves. [11:12] and then lose their streak, which I don't, you know, you don't need to be an expert in streaks to understand that's that's probably not good. You know, the nice thing with how we initially set it up, though, is it really did connect with what your goal was. So if you were serious, let's track.

11:25-13:11

[11:25] how good you are at being a serious language learner. [11:28] But I'd say one of the most impactful experiments we ran was about, this was actually as I was joining, or just after I joined, we had run this experiment. [11:37] was to move it from a XP based streak to just do one lesson a day and you'd extend your streak. And, you know, the risk that you can sort of imagine is, [11:47] Well, then users kind of care less about it because it's not connected with their goal. And we saw none of that. I mean, this was... [11:53] huge driver of DAUs, just making it easier to extend your streak, but I think really importantly, is still meaningful. The unit of use, as you're thinking about building a streak, I think it's really important to think about what the unit of use of your app is. [12:09] The unit of use for Duolingo is like doing a lesson. And so if what we care about is users coming back every day and doing a lesson because it shows that they're actually engaging with the app, then it doesn't hurt us to make our streak focus on just do one unit versus multiple. And so that was like probably the big sea change experiment that we ran, you know, at the time was moving from an XP based streak to a one lesson streak. [12:39] and potentially build a more complex feature [12:41] But in a one-lesson streak, it's just easy for more users to understand. Yeah, that's exactly what I was going to say. And just for folks that aren't super familiar with XP, it's basically experience points, and you get them from doing things. Yeah, you do stuff on Duolingo, and then based on what you did and how well you did it, we give you experience points. This actually drives a number of our features in our app. So leaderboards is the big one. We have a leaderboard system where you try over the course of the week. You battle with 29 other people, and you want to win. That's all driven by XP.

13:11-14:46

[13:11] other features in the app that [13:13] really benefit from this XP system. The streak is just no longer one of them. Awesome. Okay, so I want to talk about the journey from that point to what it is today, but a quick tangent. I saw Luis tweet just this week. Someone asked him, how do you decide whether to optimize for learning or engagement? And he's like, no question. Everything we do is focused on engagement because... [13:36] you won't learn anything if you're not coming back to the app. [13:39] As an engagement PM, that was like the coolest thing he could have ever tried. Well, again, very much as a subjectively, I guess, as an engagement PM. I'm sure the learning folks at Duolingo will cringe when they hear it. I see myself as a learning PM as much as an engagement PM because the easiest way not to learn on Duolingo is not to come back the next day. And so if we don't make the app retentive, you will have no opportunity to engage with our learning features. Now, [14:07] I do think that there is a long tale of learning where... [14:10] If you start to dumb down, and honestly, this is something we wrestle with the streak as well, you start to dumb down the experience and your users aren't actually learning, they're not going to care. I mean, streaks work best when they're sitting on top of an app, you know, that users care about. [14:26] But yeah, I mean, if you can't come, you know, if you don't come learn on Duolingo, you know, if you don't come back to Duolingo, then you're not learning. So now we I mean, we track a lot of this with. [14:36] The work that we do, we make sure that as we're making changes to the streak, we're not [14:41] hurting the learning experience and we don't have a ton of interaction with it. So we're constantly thinking about this, but

14:46-16:28

[14:46] Thank you, Luis, for saying that. It makes sense to me. Okay, so let's get into the mother load of learnings from the journey of streaks. So the first version went from XP to one lesson. Talk about the key lessons, insights, and also wrong turns along the way to what we see today. Duolingo has very much, you know, has a strong, like, test it philosophy, you know, where [15:10] willing to test a lot of different, honestly, we'd much rather test it than like debate it for, you know, days and days. So we actually followed up this experiment with, and this is a little bit later with, hey, what if we make it even easier to extend your streak? And so we actually tested [15:25] "Hey, if you do one exercise, just one exercise in a lesson, we'll extend your streak." And a lot of the insight was good. You look at the funnel, "Hey, there's a lot of users who are starting but not finishing lessons. They're not extending your streak. The loss aversion doesn't kick in. They don't come back." So this kind of followed that train of thought. [15:45] What we realized when we ran this experiment is... [15:48] you know, DAUs moved not one bit. And what we were doing by, and this, if we go back to like unit of measure, [15:57] You know, we had we had dumbed down the unit of nobody thinks about I just want to come. You do one question on Duolingo. Nobody thinks about that. So we had more like a less clear unit of measure that we were basing our streak around. [16:10] And the users that we are capturing with our streak, [16:13] you come, you do one or two questions on Duolingo, then you leave, where the least engaged user is imaginable. And so I think that's something also to think about as you're building your streak is like, what is the user that you're solving for? So not only what is the kind of habit that you're building for, but what is the level of commitment?

16:29-18:17

[16:29] That was an example where we over-indexed on a type of user who we honestly just weren't going to keep. That was a very easy shutdown decision. That's an awesome story. Just to comment on that real quick, just like you went, like, let's just go to the extreme and make it just like streaks. Yeah, get everyone going streaks forever. And then I love that it turned out. It's not bringing users that you want, and it's dumbing down experience. [16:59] like that lasts for a bit. And then eventually people are like, what the hell am I doing with my life? Exactly. No, we, I mean, and we test every, so we, I was looking at the numbers as well. We've run in the last four years, over [redacted address]. So every other day, effectively, we're running an experiment. And they range from big like this, like changing how the mechanic works to like, let's swap a string with another string and see if that copy is better, you know, for users. [17:29] I do think that like [17:30] I'd be more careful running that experiment now. Like at some point your streak gets big enough that, again I got nine million users on the streak, I gotta be really careful, those are our best retaining users. You know you gotta be careful, but in the early days of the streak, I'd say like test everything. I mean see what, don't get super caught up in it has to be like this, just test a bunch of stuff and see what speaks most to users. [17:53] Because I think, again, you will constantly be surprised by the insights that you get from whether you... We shut down about half of our experiments. So half of our experiments lose. We still learn a ton by virtue of running them. So super, super valuable. That's actually a good success rate. A lot of companies have only 20% of experiments be positive. What's your policy on if it's neutral? Do you ship it or do you...

18:17-19:48

[18:17] Kill it. [18:18] It really depends. If we're adding something and it's neutral, we tend to shut it down because it's just more cognitive load. It's something that we're going to have to start building around, a new UI element that we have to figure out how it fits into our system. I'd say when we do ship a neutral experiment is... [18:34] Thank you. [18:35] Something that we have real conviction around, okay, yeah, maybe this was neutral, but it's going to give us a new platform to then build on top of. So that experience might be neutral, but now we can build these DAU positive experiments. My general take there is, though, in that case, build that in as part of your V1 so that you make sure that at least your hypothesis around this roadmap has play. It should probably be the case, but in general... [19:05] shutting down a neutral experiment so you don't introduce more complexity to the app is the way we tend to go. Makes sense. All right, what else? What else have you learned along the journey? Well, I mean, maybe I can talk about a few different ways that we structure, you know, a few different themes that I think we lean on. So the first is... [19:22] Focusing on the zero to seven day user experience and I would say this is if you look at the kind of you know Whatever breakdown of experiments are we run? Definitely more than average number of experiments on getting users to go from a zero to seven day streak And a lot of this is because we've looked at the data for you know our retention curves And we found is that once you get to seven days loss aversion kicks in and and you retain so going from a one to a two-day streak

19:52-21:38

[19:52] It's still huge. It's up until day seven. Once you hit day seven, it flattens out. It's not to say that if you have a 30-day streak, you're way more attentive than day seven, but not in the order of magnitude that it is from day one through seven. [20:06] We do a ton of work to get users to that point where loss of version kicks in and then they don't want to they don't want to leave the app. One of the fun ones that we did, and it's honestly as much about process as it is about the feature itself was we have a feature called Street Goal. [20:23] And it is, again, so much of the stuff seems so obvious in retrospect, but it was really novel at the time. We had this idea of like, hey, maybe we'll just goal users to hitting a certain streak length. [20:36] As you can imagine, this is pretty powerful, you know, user psychology. And we started with the simplest version of this. And this is how Duolingo does a lot of our testing. You know, rather than design the big complex feature for V1, just do like the simplest encapsulation of what that feature can be, see if it has legs, and then just add to it iteratively over time. This is partially how we get to, you know, 600 plus experiments on streaks. They're not all big ones. [21:00] But we started, and it was funny, we actually took a learning from our modernization team. So one of the strings that they had, the pieces of copy that they had, [21:07] worked really, really well was [21:09] I think it was your... [21:11] like 5.6 times more likely to finish the course if you subscribe to Plus. Now it's super, our subscription. And it was a really good hook that if you really cared, [21:22] you'd sign up. And so we ran a similar, we had a similar thought where it's like, oh, let's just tell you how much more likely you are to finish the course if you get a 30 day streak. And so we started with that. And I think it was like, you're seven times more likely to finish the course if you have a 30 day streak.

21:39-23:12

[21:39] And just that message when you started your streak, us telling you that was awesome. Huge win. Um, [21:46] indicating an outcome. And like Duolingo doesn't have, we have a gem economy, but we don't actually have, it's all you learning. But being able to actually talk about it in terms of the outcomes that a user would think about, [21:58] in this case, trying to finish the course, was a huge win. So this is where we started and we're like, ah, goal setting. All right, we should go much harder on this. Found some. Yeah, we found some thing and now let's just beat the heck out of it. So we followed that up with another experiment where we tested different lengths. So we'll test 14 days and 50 days. We found that [22:18] They were all good, but they appealed to different users. And so we started to realize, all right, well, we probably need to be more thoughtful about who we give these different options to. And so then we followed that experiment up with, all right, let's start with 30 days, and then we're going to let you opt out. [22:36] you know what we'll say no I don't think I can hit it and our thinking was and then if you say no we'll hit you with an easier goal because we just wanted to get you to commit to a goal [22:45] And this was a fascinating one because it was a good win to give users that easier goal, to try to capture them before they said no. But it was almost just as big a win to add that opt-out button. So we tested separately, and I'm a huge fan of testing way too many arms for an experiment just to be able to isolate your hypotheses. [23:04] But we captured just what happens if we add an opt-out button. And adding an opt-out button, and you would think as a PM, oh, I'm like,

23:12-25:03

[23:12] Now users might not engage with my feature, that's a bad thing. But it was a huge win to let them do that. And the learning here was that [23:20] this intentionality of saying, [23:22] No, I want it previously was just to continue button. But now it's like, no, I want to hit 30 days and having that be an intentional decision for them. Yes or no. Even though, again, this had no impact, none or no impact past this screen. Everything that I'm talking about now was, you know, just that screen that day and then was all thrown out. [23:44] So that optionality was a huge insight. And so because of that, we built a goal setting feature where you could choose between different goals, giving users that optionality was likewise a huge win. I'll say one final learning on this. [24:00] Again, you talk about friction and good and bad friction. Once we built a goal picker screen where you could pick between different streak lengths, we were like, "Oh, well, [24:12] Let's like recommend that users do a hard, you know, a harder goal thinking that, OK, well, a harder goal is going to be better retention and we'll pre-select the harder goal for them. [24:19] And this, based on all the learnings that I just shared with you, you probably imagine lost pretty significantly. We realized that like, yes, we can speed users through the screen more by virtue of picking a goal for them. But like that act of selecting... [24:34] I think it's 30 days, I think it's 14 days, was where we were getting so much of the engagement from this feature. There's so much human psychology that you all learn through all these experiments of just like how to motivate people, what motivates, what demotivates. It was like you guys should write a book on human psychology and motivation. I feel very much like a amateur armchair psychologist with everything that at least as far as people who want to learn languages on their phone go. I really understand those folks.

25:04-26:29

[25:04] One kind of theme I'm hearing here so far is you guys are basically just like mining for gold, just like looking for like a vein in some mine. And once you hit it, you're like, oh, this worked. You just go crazy on just testing all kinds of things to see how far you can take that one little thread. [25:22] Yeah, and I think I shared how this idea came partially from a monetization win that they had. I think there's a lot of, because Duolingo runs, I don't know what percentile we're in, but it's got to be a very high percentile of per capita experiments run for a company. [25:43] you know based on company size we're just constantly learning so many things and there's a really great cross sharing of monetization say hey this thing worked for us is that something you can use so I'd say it's rare that we go into something where it's just like right now let's just let's just try something typically we have some insight because of all these experiments that we've run [26:00] that if we do this, [26:02] I don't know, it's won here or it's worked here, it's driven this user engagement. If we sort of massage that and make it try it in this scenario or a different screen, we come in at least with a strong hypothesis that this will work. A lot of times we do look and we're like, a lot of the apps that we look at actually are games themselves. So it's like, all right, you're playing Royal Match or there's a new Pokemon trading card game that I'm spending way too much time on.

26:32-28:06

[26:32] really good fodder for what we can do. But a lot of times you're at least going with a strong hypothesis based on what you've seen work elsewhere. Got it. So just to double down on that point, it's not like just random experiments. It's here's a hypothesis. We're fairly confident. [26:45] or has a chance to be true, let's try it. It's not just that. Let's just try everything. [26:49] And I think that like how strongly you feel about the hypothesis directly ties to how hard that experiment is. Like with copy, for instance, we we've actually set up really good infrastructure for copy testing. I'm of the opinion that companies should run as long as you have the user base to do it like. [27:04] copy test constantly. The amount of copy tests that we've had that have won and you just try things and you figure out what wins is definitely legion. And if ship massive wins from little copy changes. Is there an example of that? Of just the impact? Going back to that goal screen, we used to say continue. Our standard CTAs continue. [27:26] Can we change that to commit to my goal? [27:29] And it was like a massive win, even just, you know, and again, it was like, okay, users tapping on that. What are we asking them to do? Commit to the goal. What is that going to lead them to do? Commit, not, you know, churn. Just that little copy change that one time right there led to huge wins. [27:45] And copy changes are so cheap. [27:48] Like, it's just, you translate us, you know, for us, you know, we have a lot of, you know, users all over the world, a lot of UI languages, so... [27:55] but just come up with a bunch of ideas, translate some strings. This is one where [27:58] you know, the, the feedback that you'll typically get from Luisa. So all of our changes at Duolingo go through product review that, you know, are reviewed by Luisa. Luisa,

28:06-29:37

[28:06] reviews every single change that we propose or every experiment that we run. To Blue with Copy, he's just like, [28:13] I don't know, test it. Like, there's nothing better than to be told by Luis... [28:17] I don't think this is going to win, but... [28:19] Sure, if you want to. And a lot of times, to his credit, he's right. And a lot of times, our intuition was right. But it's just so cheap to do it. I think... [28:29] When the lift is smaller, it's great to have a hypothesis, but... [28:34] You know, you don't need to beat it up too much. So on this thread, I didn't realize Luis reviews everything you're planning to change. And this may be the answer to the question I was going to ask, which is one of the criticisms of running a product and company this way of just... [28:47] experimenting constantly with all these micro improvements and changes as it can lead to something like a monstrosity of a product and experience that isn't consistent and cohesive. And just like that often happens is the solution to that having the founder basically review all the changes. Is there anything else you all do to avoid it moving in a becoming farm bill or whatever? It's a good example. Yeah, our product review structure where we've got our head of product design, one of the lead, you know, the product management leaders and then Luis NPR. [29:17] they see everything, they have a really high product bar. And so that helps. I think over time, we just, as PMs, have to look at, okay, where is our feature headed? And so we do this with the streak, at least on a quarterly basis, to look at, okay, well, [29:34] What have we learned? How has our streak developed?

29:38-31:12

[29:38] how do we imagine this going in their future? I don't think, you know, it's easy to do, you know, and end in some sort of awful local maxima if you're not constantly looking at your roadmap and thinking, you know, you don't have a clear strategy. You know, for me, it's like, if you have a clear strategy for where your future is going, hopefully all of those A-B tests are not just done [29:58] to get some cheap gain. They're done with a long-term goal in mind. I do think though, and we do this every now and then with the streak, eventually you just hit a local maxima and you say, like you talked about lunch and neutral experiments. This is a great example where it's like, all right, cool. Now we need to throw a bunch of this stuff out based on all the learnings. Can we reset this real estate? Can we reset this UI, reset this feature in such a way that is just as good as what we have now, but is way more plain or simple that we can, again, start to layer on. [30:28] Those are really hard experiments to win, obviously, because they are so optimized, but they're really important to do. Otherwise, yeah, you just end up with a kitchen sink of a feature. One other tidbit I just want to mention is... [30:42] An advantage you all have that other companies don't have is [30:47] People want to learn, like they want to learn the language. And so getting pushed to come back to an app for something that they want to do is not an advantage. A lot of products have. So anything you want to add there of just like this is why Duolingo might be a little different from what you're working on. [31:02] I mean, that is definitely a benefit. If I had an app that... This is actually why I think a lot of mobile games do streaks differently, because...

31:12-32:51

[31:12] to say that you played a mobile game, and as somebody who plays a lot of mobile games, that you've done it for 3,000 days in a row, like, I don't know, maybe that hits a little bit different than you've learned Spanish for 3,000 days in a row. I think the comparison set is much larger, though, than a lot of companies give themselves credit for, and I think that there's, I mean, there's a lot of ways that companies think about their, there are very few companies I imagine out there in the world saying, oh, we don't do some degree of good for our users. [31:40] Even if it's like a game, it's like, I don't know, you're like making your given somebody a moment away from the craziness of their lives. And so I do think, though, that is contingent on companies who are going to figure out if a streak works for them to figure out how can you frame the streak in such a way that a user does feel good about it. [31:56] And it's easier for, you know, a Duolingo, but... [32:00] You know, I think there's creative ways to phrase this for users. You know, the other thing maybe just on that that I'll say is, [32:06] The Streak works really well for Duolingo because with language learning, it's really hard to see day-to-day progress in becoming more fluent. And fluency is not even the right word. It's like becoming better at Spanish or whatever. It is a years-long process for someone to get better at a language. I mean, Duolingo makes it easier, but you still got to put in thousands of hours if you're going to reach C1 or C2 fluency. And I think that's [32:32] That is really hard to track on a day to day. And so the streak works really well for us because, [32:37] We might not be able to tell you, hey, you now know, [32:40] 0.01% more Spanish, but we can show you, hey, you've gotten your streak a little bit higher. And so I think this works particularly well when you're an app that,

32:51-34:26

[32:51] is doing something that's going to be sensed or felt over a longer term to help contextualize that progress in a way that, [32:58] makes more sense or at least feels more tangible to a user. Great. That was a great context, empowering to a lot of companies that aren't necessarily doing language learning. Okay. So it took us on a long tangent away from lessons and [33:11] experiments you ran along the journey of iterating on the streak. So a few things you've shared so far is just like it started being like started with this XP idea and then went to like a lesson. Then you iterated on ways to make it simpler, maybe harder. You added streak goals where you commit to like I'm going to hit a certain goal of streak. What else? What else have you found that has worked? Didn't work? Lessons learned. [33:40] like, oh, it's a streak, it just counts how many days. We've realized over time that a lot of users do not understand how a streak works. And it can be as big as, as small as, well, I don't understand how streak freezes work, or I don't, like my mom the other day was talking to me about it. She's like, oh, I didn't use Duolingo, and I come back, my streak's still there. So there's certain elements of the feature [34:03] that we can do better at explaining. But even like... [34:08] what a streak is. It's, it's, [34:11] tracking how many days that I've used the app. Yeah, the more that we can make the feature easily comprehensible to users, [34:18] the more retentive it is. And we've run a number of experiments to do this. You talked about, you asked about early easy copy changes that we made.

34:26-36:15

[34:26] Actually, this is my first experiment win when I joined Duolingo was... [34:31] When you start a streak, we have a little copy at the bottom of the screen that just, I don't know, it's kind of like flavor copy. We use it to celebrate you or give you context. And I ran some tests that just tried to, in eight words, explain what a streak was. That was it. And it was a massive win because it really dumbed down, here is exactly how the streak worked. And... [34:54] it really helped users just understand what they needed to do. And I think this is something that's like you kind of constantly got to remind yourself, particularly if you work in tech and you're building cool tech features, but your user base is not a bunch of tech workers to like think about, all right, who is my audience? And for us, it's not just like tech workers, people in America, people all over the world of all ages, of all cultures. And so [35:21] making sure that your feature is... [35:24] even something as simple as the streak is understandable as critical. What was the actual copy? Do you remember? It was, it's still, I think it's still on the app. It's like, [35:33] Start a day to extend your streak, but miss a day and it resets. Something like that. That makes sense to me. Very clear. Eight words. I love that. Okay. And then when you say massive win, by the way, just to give people a reference point, what does that look like? What is a massive win in this scale? [35:49] Well, and it's funny. I mean, this was four years ago, but I think it was like in the order of magnitude of over 10,000 DAUs for us. And actually, maybe this small bit of context. So Duolingo really cares about the metric current user retention rate. And actually, our first ever Duolingo post with Lenny was the newsletter that our former head of product wrote, Jorge. Still the single most popular newsletter post of all time in my newsletter across 300.

36:19-37:53

[36:19] to summarize basically what we found is that, [36:22] If we wanted to drive DAUs and Duolingo cares, you know, our growth Northstar is DAUs. The metric that is most effective, you know, where a percentage change that metric is most effective at driving DAUs is current user retention rate. And this is just users who are not new or resurrected, getting them to come back tomorrow. [36:40] And so most of the work that our teams do, our retention-based teams do, is focused on Kerr. [36:47] And so the retention team that I lead, [36:49] focused on Kerr. It just so happens the streak is the best feature at driving Kerr. And so this experiment was the biggest Kerr win that we had had before. [37:00] That was like a top three Kerwin anyway for us. Just this little copy, right? That's what I say, like, just copy a thousand different ways. Sometimes it's not the big, beautiful feature, you know, that's going to drive the huge gains. Sometimes it's just something simple as a few words. I love this. Okay, so when you said 10,000 DAUs, I think that references you guys measure incremental impact and absolute numbers of New Deal users you're going to drive with attributed to that experiment. [37:30] A lot of times I'll look at [37:33] You know, for retention day one versus day seven versus day 14. A lot of what I'm looking for is for us to have a better day 14, excuse me, better day 14 impact than better day day one impact because it means that users are retaining better over time. This is particularly for users that would see a feature multiple times. I just like absolute DAU numbers because.

37:54-39:34

[37:54] As long as you're controlling for different biases, like a recency bias or a novelty bias, it's a really easy way to just have an absolute comparison. [38:04] You start to look at percentage changes, and then it's influenced by your treatment. How many users saw the experiment? But at least an absolute number is easier, in my mind, to start comparing. Again, there are pitfalls with it, but we find that that's a pretty useful way. That lesson comes up a lot on this podcast in that approach to experiment. So yeah, you're in good company. Quick tangent. [38:29] If there's not an answer to this, no problem. [38:31] Coming back to the idea of just experimenting like crazy and not creating a product that nobody wants to use anymore long term. Is there an example of an experiment that was positive that you all decided, no, we don't actually think... [38:44] this is what we want in the product that ended up not shipping. You know, retention doesn't only work on the streak, although, you know, you would you would think we do most of our work is the streak. We've touched a lot of different surfaces over the years. And there was one experiment that we launched that, you know, we talked about XP earlier in the lesson. The only UI elements are a progress bar at the top and then how many hearts you have. Right. So we keep it really simple. And this very much speaks to the design, you know, [39:08] philosophy of Duolingo, which is simpler UI is better. And we decided, hey, let's add XP in there. And so let's show your XP ticking up as you're going through a lesson. That's going to make the user feel good. It's going to show you what you've earned. You're going to be less likely to quit. All of these good reasons to do it. And then you finish the lesson and then we'll show you've collected all this XP. And it won. I mean, the hypothesis was a good one. But we realized,

39:38-41:15

[39:38] screen in the app. It is our lesson. It is where users learn. And the focus here is on learning. And now you've added this other... [39:45] thing up there to distract, you know, that could be distracting for users. And I think the question, you know, we talked about roadmaps and strategy here. The question that he had for me, and I didn't have a good answer for at the time was like, [39:56] So what else are you going to do with us? Like what's your iteration ideas? Where's this going to go? Is this going to make the, you know, lesson experience more gamified or, [40:05] And what we realized is that, like, honestly, it was kind of just a, you know, an easy engagement win idea, but we had touched our most, you know, sacred space in the app to do that. And so. [40:17] That was a case where it's like, yeah, it was a nice win, but we had added that UI element, and... [40:23] you know, at least at the time it was less clear what we would do with it. And we realized that like long-term it was just going to get in the way. And, you know, [40:30] We'd rather, for simplicity's sake, pause that, you know, shut it down and keep the lesson, you know, to be the a little bit of learning sanctuary it was. Now, it's funny. Nowadays, I think we actually have enough. [40:42] XP based mechanics and fun things that we can do that like, I think actually a lot of our, you know, the beliefs about the lesson experience have changed. Something like that could work. But at the time. [40:53] you know, didn't feel good to keep that around. That is an awesome example. Uh, [40:58] Hopefully we have time to talk about how the team operates. Where my mind goes is like, oh, but you have all these PMs and teams that want to show impact and the performance reviews and all that stuff. And you're not shipping something. They're like, oh, look, we did a win. So I want to chat about that later. But let's keep going on things you've learned and things that didn't work on the journey.

41:15-43:05

[41:15] The other thing that I'll call out with... [41:18] the streak is, you know, it's like we have the image of the streak is this flame, right? And, you know, we have the streak flame and it's very much core to our iconography. It's important to acknowledge that that's a metaphor for a retention mechanic, like the idea of keeping a flame lit. And again, if you've, [41:35] I think we've established the flame for a lot of users as sort of their understanding of a streak, which is great, but there's a lot of people... [41:43] in different cultural context, in different stages of life, where the idea of keeping a flame lit to show your commitment to something makes less sense. We did some UXR in India many years ago, and this was something that just did not resonate at all there, which was a really interesting learning. And that's something that's like, again, depending upon what your user base is, [42:04] the more global UXR you can do to understand how users are actually [42:08] understanding and experience your feature the better because you just again encounter insights like this and so [42:13] Even our screen design, we used to have a flame. It was mostly this flame that would light up every day. But again, it was like an indication of a metaphor for a mechanic. And when we redesigned it, we did this. Kurt, one of our animators, did this awesome odometer animation where it's like your number would tick every day. It kind of looked good, but from a product perspective, what was cool is... [42:35] we actually focus the design on the screen to show your number going up. And then it would say, you know, like seven day streak, eight day streak. And I think that as you're thinking about designing around a streak, don't get too bought up, you know, or caught up into like, what is this, you know, like the beautiful story that you're trying to tell at the expense of it being a really comprehensible feature. And so as you're thinking about product design, making that product design a clear distillation of this is what we're actually

43:05-45:01

[43:05] you know form should follow a function here you know was a was it was a learning for us and you'll see that now in a lot of places where we're showing streak we're really leading with the number not necessarily the the flame that's all that's a theme that i'm hearing again and again is clarity don't obsess with making it too thought like clever and don't ever think it just like clarity has a big impact clarity also doesn't have to come at the expense of delight and this [43:35] duo, we call them a Phoenix duo, and he becomes awesome and lights on fire. I think there are things that you can do to still make the experience really exciting and delightful and celebratory. [43:49] I would not lose that, but just don't do it at the expense. And I think it's also about figuring out for what, you know, you can get away with doing more of this for users who are deeper into their streak experience than users who are starting where it's like your goal for the one day streak users just to make sure. Do they understand how this feature works? I mean, even something again, just like another random experiment at the bottom of the streak screen with a calendar. [44:12] And over the years, it just looks more and more calendar-like. And that is simply because we find that the more we make it look like a calendar, days on top, little circles, the more we make it look like calendar, the more that people realize, hey, this is a daily mechanic. And so... [44:28] Think about the screen holistically, but every single thing that you're doing on the screen, how can you use it to communicate? [44:33] What is the point of this feature? How does it work? This episode is brought to you by Coda. I use Coda every day to coordinate my podcasting and newsletter workflows. From collecting questions for guests, to storing all my research, to managing my newsletter content calendar, Coda is my go-to app and has been for years. Coda combines the best of documents, spreadsheets, and apps to help me get more done. And Coda can help your team to stay aligned and ship faster

45:03-46:37

[45:03] set and measure OKRs with full visibility across teams and stakeholders, map dependencies, create progress visualizations, and identify risk areas. You can also access hundreds of pressure-tested templates for everything from roadmap strategy to final decision-making frameworks. See for yourself why companies like DoorDash, Figma, and Qualtrics run on Coda. Take advantage of this special, limited-time offer just for startups. Head over to coda.io [45:33] the team plan. That's coda.io slash Lenny to sign up and get six months of the team plan. coda.io slash Lenny. [45:43] I imagine one of the biggest wins was just giving people flexibility along the journey, like streak freezes and all these things. Is that a big vein of opportunity discovery? It is. Actually, I'm going to show you one of the most thoughtful gifts that anybody has ever given to me. This is our Duolingo Serenity, our streak serenity prayer, my co-lead, Antonia. It's like knitted, right? For me, it's amazing. And so it says... [46:07] Luis, grant me the serenity to accept the flexibility I need, the courage to reach perfection when I can, and the wisdom to celebrate regardless. And that actually is like kind of our strategy with the streak. I love the show and tell, by the way. That was great. Yeah, well, I guess for, you know, podcast listeners, we'll have to, you know, get an image somewhere. This idea of like flexibility versus perfection and then regardless celebration is core to how we think about the streak. Because, you know, I think for the streak for us, it's very much a bend, not break.

46:37-48:08

[46:37] Thank you. [46:37] If you're going to miss a day, [46:40] I'd rather you come back, you know, having not, you know, having missed that day to an intact streak. [46:45] But if you don't have to miss a day, I'd much rather you don't. I'd much rather you come back and use the app every day. [46:53] That thing on flexibility, though, that's almost certainly been the biggest, from a mechanic perspective, the biggest DAU driver. One of the earliest experiments we ran was going from you used to only be able to have one streak freeze, and then we let you have... [47:06] either two or three. So we tested two different arms. [47:09] It was, again, another huge DAU win. This actually is funny. It was something that, and this is, again, kind of a callback to that growth model post from Jorge. It actually was really bad for Kerr. [47:21] Because we were basically saying, hey, you can take a day off, you know, and that's okay. But it was really good for... [47:27] This is going to be like Alphabet Soup, IWAR, an active weekly active user return rate. [47:32] So basically users who had taken a day off, [47:35] we were getting them to come back more at higher rates, and so it made up for our losses in Kerr. But effectively what this meant is that, you know, why two streak freezes work better than one was, [47:46] I don't know, sometimes people just need a little more flexibility than one day. But one of the, again, the really interesting insight of this experiment was that three-streak freezes, [47:54] was actually no better than two street freezes. And there were two competing things here. And I think this is important. If you're going to build a street, [48:00] to figure out what your flexibility mechanic is. [48:03] we are getting more users to return after longer times away to an intact streak.

48:09-49:47

[48:09] But if you start taking three days off from any habit, it's just going to be less likely that you return even four days later. And so we had these competing things where... [48:17] more users might be returning to a streak, but a lot of users were also just not coming back. We were training them to, you know, take more time off. So... [48:26] That flexibility, what's the right amount of, I mean, we've, again, this is another area we've run, [48:31] hundreds of experiments on what is the right number of flexibility, what is the right amount of flexibility and we [48:37] We are constantly surprised here. We don't, I still don't have the answer for at every point in your streak journey, how much flexibility you need. [48:45] One thing that I can say with certainty, though, is... [48:48] Give more flexibility when a user is starting their streak. Again, one of our biggest streak freeze experiment when I feel like I'm [48:55] Constantly saying this, one of our biggest wins, but they all were really, really big. One of our biggest streak freeze wins was when you start a new streak, we give you two streak freezes. And again, it's so funny to think back. It's like, how are we not doing this to begin with? But at the time, the streak freeze was kind of an overly gamified mechanic. You had to buy them with gems. That's our in-app currency, you know, because we wanted the whole idea of... [49:18] to feel like it was really something you earned, that there was a little bit of pain to getting that streak freeze. [49:25] And so we tested, though, what if we just give users when they start off their streak to streak freezes? [49:31] And holy smokes, did that win. And it's sort of obvious now, you know, in retrospect, but... [49:36] If you have a one or a two or a three day streak, it's really easy just to let it die and restart. You know, again, you need to get to seven days. What we've seen in the data for it to really lock in. And so.

49:47-51:23

[49:47] giving users more flexibility so it's harder to lose their streak initially. [49:51] And then conversely, and this is what we keep learning, [49:54] Eventually, once people get on long streaks, you kind of don't want to give them as much flexibility, you know, because... [50:01] there's a lot of times where [50:04] Yeah, users don't, and I'm like this, I've got like a 400 day streak, note that [50:08] That is a lot less time than I've been at Duolingo. I have lost and restarted streaks a lot of times in my time at Duolingo. But you start getting a lot in streaks and you really care about this feature. You really care about your streak. And most people... [50:21] as long as you're not like backpacking through, I don't know, you know, the, the back country of, uh, Utah, you know, you'll, you'll be in a place where you can get service. And so figuring out [50:32] Who is the user that actually could use Duolingo and not conditioning them to start taking days off that they didn't otherwise need to do? [50:41] is important to figure out sort of where that line is for your future. This is fascinating. You can also buy a streak, right? Like with money. That's a feature, right? Yeah, you can. It's funny. This is also something that we wrestle with. Yeah, you can buy a streak freeze. And the way it works is you can buy gems and then you can use those gems to buy a streak. And this is something we wrestle with. We're actively working on an experiment right now that's having a small hit revenue, [51:11] and [51:13] I think it's actually worth thinking about from day one as you're building a streak. Do you see this more as a monetization feature? And do you see this more as a retention feature? What's the role of monetization in this? What's the role of retention? And I think.

51:23-52:54

[51:23] For us, it started out much more organically, and so we have a lot of like monetization hooks that again is the retention PM. I would love to get rid of. But again, it's sort of part of how the streak works right now. And so we always have this tension of. [51:36] hey, if we start to make it [51:38] Harder to buy streak freezes, then fewer people buy them, you know, buy gems to buy them. And so there's this more convoluted, you know, series of impacts that happen. [52:08] You used to lose the streak. We had a feature in the day, you know, back in the day called streak repair. We'd give you your streak back, you had to pay gems. But what we found out worked way better was a feature called earn back. And this is basically where you would have to do a certain number of lessons as long as you came back within a window soon after losing your streak. [52:28] do a few lessons and we just give you your streak back. And it was such a retention winner. And again, what we thought about was, [52:34] It feels like you've earned it so much more when you've done, like you deserve to have your streak back. We haven't cheapened the streak. [52:42] Because you've done something. And in this sense, this idea of cheapening the streak is something like from a philosophical perspective. [52:49] philosophy of the street from a philosophical level. We wrestle with all the time of,

52:54-54:16

[52:54] Cool, we're giving out more streak freezes. At what point do we cross the line and users start to realize their streak means nothing? Now, everything that we've seen, users are totally cool with using streak freezes and still thinking about their streak as this meaningful thing, but... [53:07] My co-lead Antonio who made that awesome cross stitch for me, [53:11] She is sort of the keeper for us of the sanctity of the streak. And a lot of times as we, and I think this is really important to have as you're thinking about building your streak, you can almost always get engagement wins up to a certain point by just. [53:22] cheapening the streak, making it easier to extend, letting users have more flexibility, [53:28] But you kind of got to hold the line at some point. It's not clear where that line is. And once you you talk about one way doors or two way doors, [53:35] There's a point where you go too far and it's a one-way door. And all of a sudden, those users, those 9 million users on one-year streaks don't care about their streak anymore. And that is... [53:46] I don't know, again, retention PM perspective, that'd be an extinction level event for us. I don't want all of these users to stop caring about their streak. [53:52] And so to have somebody... [53:54] who is invested in the sanctity of the streak, and for us it's Antonia and Luis, he's very good about this, is really important just so you make sure you don't go too far. That's an awesome insight. [54:08] So to protect, and push notifications I think are another example of this in general for companies, like how much is too much? Because everyone's just like, let's just send another push, it's fine, just one more.

54:24-55:53

[54:24] How far is too far? [54:25] That it's, yeah, it's good if you can, if you can have that. I think push notifications are also easier because, you know, there's a lot of things you can do around. All right, we'll set a budget cap for how many notifications we'll send. You know, you can, you can. Like a creative policy. [54:38] Yeah, policies. But I think with a lot of things, at least for the streak, it's harder to create policies for in the same way. A lot of it has to be done based on feel. [54:46] And so you kind of just got to use your best judgment at times. [54:49] Sweet. Okay. Any other, maybe like one or two more lessons from this journey of what Streaks has become today? [54:55] I mean, you mentioned notifications. I've mentioned this a few times. It's funny. You tend to think of exactly as you say. You can just always send another notification. It's going to be some win and at some point, you know, it'll be a bad experience, but it's tough to see that. [55:08] There's actually a notification that we, so we send two notifications related to your course streak each day. The first is a practice reminder, we send it, and this is actually an interesting insight, 23 and a half hours after you practice the day before. - Whoa. - That is the line. - 23 and a half, okay. - So basically, if you practice at noon today, [55:26] We'll send it to you at 11.30. [55:28] AM tomorrow. And we have done it because it's like assuming they are free in that time the day before. Maybe they'll be free the same time. [55:35] And we actually moved. We used to let users set this practice reminder time. And, you know, our thinking was, cool, you're going to say... [55:43] 7:00 p.m. That's when I really want to extend my streak each day. And then you know what? I said this is somebody with two kids life gets in the way life always gets in the way and when you think you're going to practice.

55:53-57:47

[55:53] will change, your life will change, whatever. And what we realize is the best indicator of when you should practice was when did you practice the day before. We could almost certainly get more detailed. We have tried a bunch of ways to have much more complex logic. And what always wins is 23 and a half hours. That's so interesting. Revealed behavior versus... Yeah, exactly. So again, we send this practice reminder 23 and a half hours later. The other thing that we'll do though is we'll send what we call a streak saver. And this is at 10 o'clock at night, if you have not extended your streak, we'll send you a message saying, [56:23] Thank you. [56:24] "Hey, it's your last chance, this is it, if you don't extend your streak." And you would think that [56:31] That's kind of spammy. That's kind of annoying to get a notification from an app at 10 p.m. [56:36] But what we found is because people care about their streak, their streak is this good thing that they attach positive emotions that they don't really want to lose. That notification reminding them, "Hey, come back." People see this, by and large, as a positive notification and not a negative notification. Obviously, it serves our purpose as well of getting users to come back and not lose their streaks. [56:57] Again, I think if you can think about your notification strategy related to what is the feature that it's tied to, how do users perceive that, you can... [57:04] almost certainly not get away with more, but you know, you can be thoughtful about notification load and when to send notifications. And again, for us, this like late night message, that's also highly impactful, super good, you know, is actually something that [57:20] could be perceived as spammy, but a lot of our users really do. Somebody who it's often late at night and I work here and I'm like, oh, forgot to do my, you know, I was thinking about Duolingo all day. You know, here it is, 11.15 and I saw it down at that message is really powerful. Yeah, it has saved me many times. I totally know that message. And I love that it's like a late night message from an app. Very rarely do you actually are happy about that.

57:50-59:31

[57:50] It's really funny, all of the stories that you hear about people extending their streak. If you look around a Duolingo party, where it's like 1130, 1145, all the Duolingo employees that are doing their lesson at the last minute. You always see these pictures of people in the club or at a concert doing Duolingo. And yeah, because it's like, otherwise, you're going to use a streak freezer. God forbid, you will lose your streak. That's so funny. Okay, anything else? And if there's more than one more, definitely share. [58:20] lessons or wrong turns or insights. I talked about streak freezes and we've done a lot with streak freeze, but I think if you're going to make flexibility a thing, it's probably also useful thinking about how do you celebrate perfection. And so we have a feature that we have [58:34] It is the simplest thing in the world. It's called perfect streak. And it's just if you don't use a streak freeze for a few days, we make your streak look gold and we make your little progress bar on the calendar just look a little bit nicer. There's no reward for doing it. You don't get anything other than this nice little indication. [58:51] And it is awesome. It is a simple feature. It is ultra, not complex. And it is really powerful, not only for getting users to... [59:03] as a bit of a reward, they'd be, hey, get to seven days without using a streak freeze, and your streak becomes perfect. But it's also a really nice indication of users who aren't using streak freezes. Here is the thing that if you don't use a streak freeze, which, again, candidly, I would love for you never to use a streak freeze. If you don't use a streak freeze, your streak will stay perfect. It's funny, we're constantly responding to bug reports about the streak.

59:33-1:01:21

[59:33] swear to God, we have the best infrastructure around this feature because it is so important. We had an employee who lost her [59:41] I had a four month perfect streak. It was a big deal for her because she did her lesson as she was crossing international dateline. There was a bunch of stuff going on that was just kind of weird in her back end. [59:53] People start to care about perfection as much as they do their streak, and for that person, it was... [59:59] it was a big deal when they lost their perfect streak and so [1:00:02] This is just an example of, look, if you're gonna go after flexibility, which is good, finding a way to pull users back into perfection. [1:00:11] is a really important counterweight to have. - What I'm imagining is you guys need an Amazon-style chatbot that just gives you the streak back, just like, "Okay, here you go." - We have very much, so we have, if people lose their streak, there's ways to get in contact with us, but we've actually thought about that, where it's like, "Okay, we should just build a self-service feature, and if we think that your excuse is good enough, whatever, we'll just..." - Yeah, yeah. - Because again, it's for us. - Don't even ship it back. - I'd much rather you be on a streak than have lost it. [1:00:41] Right. But it also can't feel that easy. I love this. I also love this point about just the power of the... [1:00:48] animation and user experience having impact. That's really interesting. Is that something you find often just like make like celebrating and making it feel really [1:00:56] amazing without like copy or you know or like any feature it's just like holy you're awesome this is another thing where it's like when users care about the feature using not only uh animation haptics sound effects using it's funny we don't have sound effects on the streak this is probably something we'll look at in the not too distant future but like haptics are like something we have done a lot of testing like the phone vibrating yeah exactly your phone you know like there being

1:01:26-1:03:13

[1:01:26] stuff wins. And it's cool because I think it wins [1:01:29] There's a few reasons. One is it just makes you feel good, right? You get some cool moment in your streak and we celebrate you and we celebrate you in this visual way and your phone's buzzing and it just feels awesome. The other thing it does is it causes you to pause on that screen and I think there's this desire as you think through a lot of SPMs think through like, oh, how can I get users through this funnel as painlessly as possible? I talked about conversion early. There's a lot of times where I don't. I want you to stop. [1:01:54] I want you to stop and like land on this screen. You gotta be careful not to do this for too many screens, right? But like, for the one big ones, sometimes I just want you to pause there and enjoy the moment. 'Cause if I can get you to enjoy the moment more, you're gonna care more about your streak and you're gonna be coming back tomorrow. And so animations that are cool and that cause you to like really soak it in, haptics, you know, that feel good, [1:02:14] All of that comes together to make you really focus on that moment. All of that just gets users more connected to their streak. So animation in the right times works well, and it's something we've had when... [1:02:29] Quite a lot. Who designs the haptic stuff? Is there like a haptic designer? [1:02:33] For the longest time, it would be a product designer. Or it initially started as like the engineer would be like, all right, you know, we'd cobble together haptics based on what they felt good. Then it became a product design. [1:02:45] role where they would kind of use their best judgment. We actually just recently acquired an animation studio, Hobbs, in Detroit, and now they are the sort of keepers of, you know, they do a lot of motion design work, Haptics, very close to that, and so they do a lot of that. I do remember trying to hire for a while a Haptics, like, contractor, like, Haptics design, and it was the saddest hiring I've ever done because it was just like, I don't know, like, it was such a specific...

1:03:13-1:04:51

[1:03:13] I just went through a lot of people who... [1:03:17] You know, it's just a really tricky space of like kind of sound effects, kind of motion design, sort of technical. Yeah. Such a unique role. Very unique, specific skill set. Right. And there's very few apps that really need this this deeply. So you're almost creating this person. Yeah, that is fascinating. I don't want I'm going to that's like a whole podcast on its own. By the way, I was going to say, as you're talking about this, I love that it's a win to celebrate people that don't lose their streak. [1:03:47] you could go the opposite direction of if you don't use this feature, you also feel even better. [1:03:51] Well, and it's funny, you... [1:03:52] - You talked about the danger of feature bloat. We sort of talked about the danger of feature bloat. This is actually something I'm constantly thinking about with this. We have the streak, but then we also have the perfect streak, and we count how many weeks you've had a perfect streak, while all of a sudden you have two [1:04:06] streak numbers that are kind of competing with each other. [1:04:09] It's funny, we actually don't introduce the concept of a perfect streak until... [1:04:13] after you've hit seven days. And some of this is just because the cognitive load of additional streak features, a lot of our like cooler streak features are [1:04:22] You got to get on a long enough streak. And not to say we haven't tested it because we have, because we test everything, introducing these features earlier. But what we've found is that pretty universally they lose when we, [1:04:33] introduce too many things, too many concepts to users too early in the experience. It's just [1:04:38] hard for them to manage. [1:04:39] Okay, sweet. I know that we can go down this track for hours and hours. There's endless learnings about all the things you all have done along the journey. I'm going to shift to talking about how your team operates.

1:04:51-1:06:35

[1:04:51] So there's a lot of threads you touched on of just how a team can do this so well. Ship 600 experiments, as you said. Continue to find opportunity. What are some maybe lessons or advice you'd have for folks that are like, oh, wow, I want to work more like this from your team's experience? How do you use your team to operate that folks can learn? Yeah, maybe just a little bit of context. So Duolingo cares a lot about metrics. So most of our teams are metric-based teams. [1:05:21] but the metric, what we really care about at the end of the day is Kerr, and DAUs, because we see that DAUs hit Kerr. And so, when you can be really laser focused on, "My goal each quarter is to make this metric go up." [1:05:36] I think it's much easier to make sure that you're working on the highest ROI thing. I think when you think more about like, oh, I want to make this feature better. I think it's easier to get lost in what better means and how you think about better. And so I do think that like having a really strong degree of focus, you know, as a team on. [1:05:55] what is the metric that I'm caring about, and how is that directing my efforts is-- Versus feature-oriented. So basically, your teams are structured around [1:06:02] a metric slash a goal slash outcome versus we own this feature or this. So retention owns Streak, I guess, but that's only because we've seen Streak drive Kerr better than any feature. But [1:06:17] We are not, I mean, we have this, you know, IAP hook with our streak freeze purchases. There are other teams that work on, you know, that can and have worked on the streak because it's not ours to say, no, no, we do all the iterations here. We just know that it drives our metric better in the same way that like leaderboards.

1:06:35-1:08:05

[1:06:35] You know, we have a team that focuses on how much time you spend. We want users to spend more time on Duolingo so they're learning more. Leaderboards is the best vector for doing it. So that team does a lot of leaderboards work. But every now and then I have an idea that I think will be highly retentive and I will go in and I will pitch to them and then we'll do some change to the leaderboard to make it more retentive. And so but I do think having that clear metric of. [1:06:55] we're trying to drive Kerr, not we're trying to just make this feature better, helps at least. [1:07:01] make sure you know give the team clear marching orders and that focus i think is really good for prioritizing backlog [1:07:07] Cool. This is a really important point. This is the same way Airbnb worked when I worked there for a long time. It's here's a goal that we want your team to be responsible for. [1:07:15] You can work on any product you need to hit this goal. As you said, often various products are most connected to what you're doing. But what you're describing is like, even though a team's kind of, like I imagine you own it from a bug perspective and you kind of like are the shepherd of this part of the feature because it hits your goal. [1:07:33] helps your girl most but [1:07:35] Any other team can come in and be like, Jackson, we need to work on some streak stuff to help with learning. You're like, go for it. Does that... [1:07:41] Just a tangent there. Do they work really closely with your team if they want to do some work in the code? How does that work? Yeah. If you're, again, this is where I say there's soft ownership. We're not against teams doing things to the streak. But if we're going to do something, given we probably have multiple quarters worth of a roadmap around the streak, I say probably we do, multiple quarters of roadmap for what we can do to the streak,

1:08:05-1:09:24

[1:08:05] if other teams want to come and mess with it, okay, we got to just figure out how is that going to work with, you know, what our plans for the streak were. [1:08:13] How do we make sure a lot of times when teams are coming in thinking, hey, let's do this to the streak, they're like in context that we might have. And so there's as much of like a much simpler version of what we're doing now, a bit of a knowledge sharing of saying, all right, well, this is what we think about the streak. This is what we've seen work hasn't worked. [1:08:25] how does that influence some of the hypothesis that you have? And so I think getting that really, [1:08:29] um making sure the juice is worth the squeeze good old-fashioned product management work right there uh cool what else is interesting about how y'all operate and how y'all work to achieve this sort of success again my my team lead runs is antonio runs like the most effect you know a really process if you're going to run this mini experience you have to be really process oriented and really thoughtful about which experiments am i going to run when how is that going to set up the next one [1:08:59] And I think sometimes the Atlassian suite makes my eyes bleed. But there's a lot of times where that degree of process helps the team unblock engineers and make them move really fast. And so making sure that you have really good process around how are you going to run so many experiments, it's worth investing in. Can you follow that thread, actually? When you say that, what does that look like? What are some elements of that process to make this work efficiently?

1:09:29-1:11:00

[1:09:29] This experiment is based on the results of this experiment, or might hook into an element of this feature. How do we make sure that we're lining up? [1:09:37] implementation on this so that as soon as this thing runs and we're ready to go [1:09:42] we can start rolling out the next one. You know, I hate features just sitting around and us not, again, continuing that thread. So it's not just thinking about what's our engineering bandwidth, but also what's the design bandwidth to make sure that we have the next iteration of this feature ready to go. [1:09:56] you know, we're planning, you know, [1:09:58] months out as we think about these feature iterations, even small ones, you know, feature iterations, because, again, you just you lose when you lose cycles, you know, not pushing on a feature. It's just sort of lost opportunity. And so everything from manage, you know, [1:10:13] being thoughtful about engineering roadmaps to design roadmaps to product roadmaps. All of that needs to come together in a system. So essentially mapping dependencies across function. And you're saying in Jira you can do this. You can do a lot of it in Jira. There is a non-zero amount of Google Docs that we have that sometimes does things a little bit. I don't know. Sometimes it just looks a little bit nicer. It's a little bit more flexible. But Jira is our... [1:10:39] It is where the mother load of process is. Great. Okay. What else? Another thing that I'll just say is we really resist the urge to do the big V1. And I think this is – I shared the street goal example where – [1:10:54] A lot of times when we're exploring something, we will say, okay, well, that's cool.

1:11:01-1:12:34

[1:11:01] how do we strip away a bunch of stuff and figure out what our core hypothesis is and then just ship that thing first as a view on because it's easy and I found this time and time again it's easy to add things to features that make them win like I've worked in retention engagement long enough I can like add I know enough like things to pull and bells to add whistles and you know to make something win but [1:11:24] you know, there's a lot of times where it's like, cool, well then at one, cause all the whistles you added, not cause of what your core hypothesis was. And, [1:11:31] A lot of times if you can just really simplify what the feature is, [1:11:34] it's also much easier to ship it's easier to design you're not designing for a whole system you're designing for [1:11:39] something much simpler. And so getting everybody to think that way, ends up allows us to end up shipping faster [1:11:47] shipping simpler, designing faster, getting faster approval, getting insight, and then doing what I talked about with Street Goal. [1:11:56] being able to run iteration after iteration after iteration, add these things iteratively. [1:12:01] And then, you know, you not only by doing this, are you able to move faster, but you get confidence at each step of the way that. [1:12:08] hey, my series of hypotheses is actually borne out, or if it's not, [1:12:13] Cool, then we're going to drop that part of the feature and then just ship what actually matters. If I can try to summarize kind of the broad lesson so far that I'm hearing, and maybe you would have shared this, but I'm just thinking like if I were to try to design a company to operate the way you all operate, you essentially map all the levers that drive the business.

1:12:43-1:14:22

[1:12:43] biggest specific metric to move to, [1:12:47] drive growth long term. So there's like imagining a tree of all the opportunities you could work on. You found like this is what is most connected to our growth long term. [1:12:56] You basically just start mining. I don't know if mining is the right metaphor, but just like looking for things that move that specific metric. You just like look and poke and explore. And then once you find one, you just go real deep on trying a lot of different. You come up with a hypothesis and a strategy of here's how we think we can do this. [1:13:14] and how we can move this, and then you just try a bunch of stuff. [1:13:17] There's also this element of the rest of development quote, there's always money in the banana stand comes to mind where it's just like keep working on. See, there's more. There's going to be more opportunity. When I joined Duolingo, the PM that I took over for Anton, who used to lead the retention team, I remember saying, [1:13:37] Dude. [1:13:38] The streak, it just counts up. You guys have been testing on it for years. How much more work can we do on the streak? And he was like, Jackson, you child. He didn't say exactly this, but this is how I felt it. Jackson, you child. We're not even 30% of the way optimized. And four years later... [1:13:54] I say that with such conviction, we are so far away from, I mean, we've made a ton of strides, but we are still so far away. And every quarter where we ship a ton of wins and improvements to the streak, it just continues to prove to me that there is so much more to be done. So I think your framing of it is, and I would say there's a lot of thought that goes into, again, I talk about the strength of the hypothesis that you have to have as you start to build that

1:14:24-1:16:00

[1:14:24] I think it's really important to not just do a bunch of random stuff, but do it. [1:14:27] with intent, you know, with a goal in mind. Otherwise, you do end up in these local... [1:14:33] you know, local maximas, but, [1:14:36] Yeah, I mean, there's still a bunch of stuff that we haven't tried that, you know, I think we have high confidence in, you know, working out. And so we'll keep doing that. Are there any other, say, lasting lessons from this journey that if someone were to try to operate this way, build streaks into their product, anything you'd recommend? Yeah, I really do think it starts with, you know, streaks are an engagement hack. You know, you can make your app, [1:15:03] more retentive. I'm almost positive almost every app out there can make it more retentive. It is loss aversion. That is, you know, again, armchair psychologist Jackson, like it's just a human thing that works on humans. But if your app is not [1:15:20] something that users want to use every day or whatever, [1:15:24] you know, cadence you want your app to be, you know, to work on. It's going to be, you're only going to get so much from that streak. And honestly, it's probably going to distract you from what really should matter, which is making your app something that people want to use every day. And so if you start focusing on the streak, but you haven't made that an enjoyable experience, [1:15:41] you're just going to waste a lot of time, honestly. And so I think making sure that you have your core loop of your app figured out that it is giving value to users is something that they want to come back to every day. [1:15:51] That really sets the stage for something to layer a streak on. So resist the temptation if you don't think you've reached that point to

1:16:00-1:17:37

[1:16:00] go too hard down the path of streak. That's a really good point. Just like a streak is not going to solve your problems if people don't actually care about the core value you're providing. No, and honestly, it'll probably cause more problems if what you end up focusing on is, how do I make the streak highly engaging, but your app isn't? I mean, you're just, you're wasting time that could otherwise be better spent on solving more critical problems. So [1:16:24] That's one learning. The other thing that I'll say is, we met with one of our board members, Bing Gordon, a few months ago, and he had this comment where he was just like, [1:16:37] The reason why users care about your streak so much is because you care about your streak so much, you being Duolingo. Like the reason why users care about our streak so much is because Duolingo cares about the streak so much. We're like, what do you mean? Well, he's like, well, [1:16:48] After every session you see a big streak screen and it's animated cooler than almost any other screen in the app. And then sometimes you see some other screens and there's all these other features. Like you don't let a user forget it. You talk about them in messages. [1:17:01] And so I think it's worth thinking about, look, if you're going to build a streak and then you're going to second it off into the corner of your app, you know, where users aren't going to see it. [1:17:09] like they're probably not going to care about it as much and which might be fine because there might be other lovers that you think are more important to pull on. But there's a reason why, you know, we focus as much on the street, you know, as we do. And that's because we want it to be top of mind for for users. And. [1:17:26] It's not by accident then that users start to care about. And so I think just as you're thinking about building the streak, making sure that you're giving it the visibility it deserves if you want it to have the kind of impact that Duolingo has.

1:17:37-1:19:12

[1:17:37] You know, it's sort of an important hierarchy principle to think about as you design things. [1:17:42] That's such a good point. You look for cues to the app of tell me what I should pay attention to, what's important. If you're just like, fire explosions, you've hit a streak. Oh, maybe I should pay attention to this feature. And then the push notifications obviously encourage you there too. Anything else along those lines? [1:17:58] Maybe final thing is, look, we ran so many tests on our Duolingo streak to figure out what worked. I mean, we have a philosophy at Duolingo of tests at first. You know, we are a lot of times willing to test things. I really think that if you're going to try to introduce a streak or you want to improve on the streak you have, like, don't get too caught up in... [1:18:20] the the the philosophy of everything i mean make sure your hypotheses feel like they're good but my recommendation is just try things and this is again you said it earlier it's like this is much human psychology as anything and [1:18:33] As soon as that becomes the case, you kind of just got to understand what users respond to. And the easiest way to do that is to stop spending time batting around ideas in a conference room and just... [1:18:45] try some stuff um so huge recommendation to like if you're going to invest in a streak [1:18:50] Try and figure out what works through testing with users rather than trying to get it perfect on the first try. [1:18:57] Say someone's listening and they're like, should we do Streak? Because it's worth doing. [1:19:01] What's your take on just like the chances that a streak feature would be helpful to another consumer? I am well known for saying in a company that I think every streak, every team, every app,

1:19:12-1:20:59

[1:19:12] could benefit from a streak. Now how you implement it is very different. And I think you gotta like, what is your user's use case? Like if they're gonna come use, I don't know, [1:19:22] tax software. [1:19:24] Okay, now that I say this, tax software would be a hard one, but maybe it's all about you need users to come back every day during the tax season or how many times? I don't know. Now that I say this out loud. Times you upload your bank forms. Yeah, that is a hard use case. But the vast majority of companies, I think, have a good idea of like, all right, here is my ideal use case. I want users to come here. [1:19:47] Three times a month, that would be ideal. Or four times a month, you can build a streak to work. I mean, Peloton has weekly streaks because the idea of doing a Peloton workout every single day is hard for a lot of, was hard for this user during COVID. It's just like every now and then you get on the Peloton, that was great. [1:20:06] But the idea of a weekly streak was something that I could keep up. And so I think figure out what your usage pattern is as a user and then build your streak around it. [1:20:15] As long as you're not, again, the tax example was probably a good counterfactual, but you're [1:20:23] as long as you have some degree of frequency in your, in your use, um, [1:20:27] I think almost anything can have a [1:20:28] can have a streak. So Duolingo, it's again a $14 billion company. This feature, [1:20:34] possibly the most contributing factor other than the core product to that level of success and market cap. And it's hard to imagine another just feature of a product that has had this much impact on growth and revenue and building this sort of business. So I love that we spent this much time on it, the mother load of advice and insights. So thank you again for putting it.

1:21:00-1:22:42

[1:21:00] With that, we've reached our very exciting lightning round. Are you ready? I'm ready. [1:21:05] First question, what are two or three books you've recommended most to other people? All right, I'll start with a guide to Midwest conversation. So I'm based in Kansas City. I'm a proud Midwesterner. And us Midwesterners talk in a certain way. I think you hear about Minnesota Nice, but we tend not to say what we mean. And it is a very funny primer into what Midwesterners actually mean when they say what they say. So highly recommend reading that. [1:21:35] be telling you, which you may not read. My wife is German, and I gave it to her. I can see German being the opposite of that. Very different. Another book, this is a good one, Fate is the Hunters. This is a really cool book. It's a memoir of one of the early commercial airline pilots. [1:21:55] And it is wild to hear the stories about... [1:21:58] what flying was back in the day. I'm a former management consultant. I flew every week for almost six years and I never once had to worry about, am I going to make it to the other end of this flight alive? [1:22:09] That was not the case back then. And so some of the stories about what it used to be like to be a pilot on some of these planes before modern aviation technology is happening. [1:22:19] Fascinating. It makes you really appreciate what we have. [1:22:21] It feels good to read a book like that, being a software PM or engineer or whatever, like how different that life is. Hardware is hard. Ridiculous. Oh, man. It's not haptic design. Okay, next. Unless there's any other books you're going to share. Okay, great. What's a favorite recent movie or TV show you've really enjoyed? So I have two kids. I watch a lot of Bluey.

1:22:42-1:24:25

[1:22:42] um it's really good i swear it's it brings me no shortage of joy um but adult show that i heard or show not meant for four-year-olds that i have watched i just finished the latest season of emily in paris [1:22:55] Man, wonderful. I realize it's not the highest brow of television, but just beautiful people in beautiful cities solving problems that are not earth-shattering. Sometimes it is nice to just... [1:23:07] Also, I'm learning French on Duolingo. [1:23:10] A slight plug for the app, I can understand a lot of the French that is being spoken. And there is no better joy than having invested as much time as I have in French and actually being able to use it. So... [1:23:22] Huge fan of Emily. That is so funny. What a fun Venn diagram of interests. My mother-in-law loves Emily in Paris. I saw someone tweeting about, like, what visa is she on? How is she still in Paris? Yeah, you bet it's just not ask questions. There's a lot of questions for this show that are better left unasked. Do you have a favorite product you recently discovered that you really like? [1:23:42] Other than the Oinko. Last week I went to Home Depot and I bought a new ladder and I, [1:23:47] ladder innovations you don't think of often, but you can make one of the legs go a little bit further than the other leg. And as somebody like myself who has a house that is built on a slight slope, [1:23:59] Every time I go up on my ladder, I take my life in my hands. But with this ladder, I'm always even. I cleaned my gutters twice last week. [1:24:06] just because of how awesome this ladder has, has how much this ladder has changed my life. So yeah, [1:24:12] Ladder innovation, I don't think it gets talked enough about, and so I'm happy to give it the spotlight it deserves. I appreciate you doing that. This is the first ladder recommendation we've had on the podcast. Two more questions. Do you have a favorite life motto that you really find useful in worker and life that you share with folks?

1:24:26-1:26:12

[1:24:26] This probably will not be much of a surprise based on how I've talked about our willingness to test things, but you miss 100% of the shots that you don't take. I'm a big fan of just trying things, even if you're... [1:24:38] Uh, [1:24:39] Possibility of success is not 100 because you learn a lot along the way. Final question. [1:24:46] Do you have any fun traditions at Duolingo amongst either the PM team or the company in general that might be delightful to share? We have way too many traditions to count. [1:24:57] I will share the weird tradition that we do at every retention standup. [1:25:02] And this started during the pandemic. You know, we obviously used to stand up in person. And then when we went remote, [1:25:08] We did this thing where whoever's the last person to go would count down three, two, one, [1:25:13] And then we'd all try to clap at the same time, which was kind of fun and dorky, but we fell in love with it. And four years later, we're still doing it. Recently, we've added... [1:25:23] We all say yee-haw in unison afterwards. [1:25:28] I can't tell you why, but trying to synchronize a clap via Zoom and then all shouting yeehaw. I did this in a phone booth the other day, and after I came out, someone told me, you know that those aren't as soundproof as you think, but you know, when you get a good opportunity to give a yeehaw, you kind of can't pass up on it. [1:25:47] I love these little things. They sound so minor, but they're such important elements of team culture and tradition. It's so important for PMs to find ways to just have fun and do something ridiculous. I will say it took a while to get people behind shouting yeehaw. But now that we have people doing it, you can't take it away from that. We all love it. Oh, man. I called our all hands for a while, y'all hands.

1:26:13-1:27:57

[1:26:13] Feel free to steal that. You get it. You get it, Lenny. Yeah, I get it. Jackson, this is incredible. I feel like people are going to listen to this with notebooks and just like, okay, here's a bunch of ideas we should try with whatever we're working on, whether it's streaks or not. Thank you so much for being here. Two final questions. Where can folks find you online if they want to reach out, learn more, learn more about Duolingo? I know you're hiring product managers, so share more there. And finally, how can listeners be useful to you? [1:26:36] Yes, you can find me on LinkedIn. That is where most of my online social media is, so Jackson Shuttleworth. And then how people can be useful to me. Yes, as you said, we are hiring. We're actually hiring for my team. Are you interested in thinking about streaks as much as we do? We might be the right home for you, so please. [1:26:57] You can plan our website. We're also hiring for a number of other product management roles and they're all as thrilling as this work is. [1:27:05] And then, you know, I'm always interested about how other companies have implemented streaks and what they've learned. [1:27:13] What I'd say is if you're a company who's implemented a streak, maybe in a different way than Duolingo has, or you found a whole ton of success and another vector, another element to the feature that we didn't talk about today, I would love to know more. I used to catalog basically every streak I found out there. [1:27:30] And as it's become more of a popular feature, it's just been hard to keep up on. [1:27:36] If you have interesting streak insights to send my way, I would love to hear them. I love that. A collection of all the best ways of doing streaks. Jackson, I just want to say congrats to your team and you for having so much impact. This is like the dream of a lot of PMs and teams is to see this much impact and continue to ship wins. And so congrats. Nice work.

1:27:57-1:28:05

[1:27:57] Thank you very much. And with that, Jackson, thanks so much for being here. [1:28:01] Yeah, thank you, Lenny. This was a lot of fun. Same. Bye, everyone.

Want to learn more?