Duolingo · B2C · language learning app
Sell ads directly to brands and have app characters introduce them
Users like the format; slow to sell because it's custom
What they did
What happened
In their words
Why Your Free Users Are Your Real Growth Engine – Cem Kansu, Duolingo CPO
Cem KansuIt's very cool. It's currently only in the US. So we're focusing on growing these in the US because obviously we created a great format, but to be able to scale this, we also need to be working with companies. And right now we're just focused on companies that would want to advertise with us in the US.
Cem KansuWe created multiple formats, but the one I love the most, and that seemed to be working really well, is one of our characters. So we have eight Duolingo characters on Duolingo that you see, introduces the ad.
Cem KansuFor example, pick a brand. Let's say it's a detergent. I'm making this up. It's not like we had exactly this, but one of our characters, Lily, would make jokes about like, "Oh, I need to wash my clothes. I wish I could do that."
Cem KansuAnd we write a custom script to introduce that ad that's very short and then the ad itself plays. So that at least we are building a little bit of our character world further and it's not jarring as you ended a lesson right now. That's what our ads are really a little bit where you see an ad, it feels like you're easing into the ad.
Cem KansuWe're trying this right now. When you see it as a user, it's actually as an ad, it's a very delightful format. Our challenge I would say is scaling it. I think since it's a custom format, well, you got to go up to advertise and explain how this works.
Cem KansuSo it's a bit of a slow adoption process, but we're going to, I mean, our goal is to basically increase the volume of these ads and reduce the programmatic by a good amount in 2026.
Get tactics like this every Monday
New tactics from the week's founder interviews, each linked to where it was said.
More from this episode
- Keep lessons free and sell learners' translations to news sitesSmall revenue; dropped by 2016 (price race and low translation quality)
- Charge $1-3 to fix a broken streakA good share of users paid; showed how much users value their streak
- Show one ad only after a lesson ends, and test it against retentionRetention mostly neutral, at most a slight hit, across ad tests
- Count ad complaints per million users and compare them to other complaintsMissing-course complaints were 3x ad complaints; ads launched
- Block gambling and sketchy ad types, even if it costs revenueAccepted lost ad revenue for better experience; no numbers
- Use the end-of-lesson ad slot to advertise your own paid planGuest says house ads beat programmatic ads; no numbers
- Run 3-6 month holdouts for changes whose effects show up lateNew push lifts can turn negative after about 6 weeks
- Sell a one-time ad-free month at $3, $5 or $10 to test demandUptake far above expectations; led to the subscription
- Launch a plan with no ads, offline use, and 'support our mission'About half of early buyers paid to support the app; started a run rate
- Offer a free trial even though the app is already freeOne of the biggest unlocks; guest had expected it to flop
- Tell users on the paywall you'll remind them on day 5 of a 7-day trialWon A/B tests by easing fear of subscription traps
- Change the buy button to say 'Try for $0.00'Beat 'Try for free' on both trial starts and trial-to-paid
- Give subscribers unlimited hearts so mistakes never stop their lessonsBig turning point: raised subscription conversion and retention
- Make paid features free when a test shows they earn littleTook a small revenue hit on purpose to grow free users
- Add new subjects inside the main app instead of launching new appsSeparate apps were 'hard mode'; in-app works better, but many users still don't know
- Offer live human tutors on demand in a higher-priced planFailed: users joined, panicked and left; later replaced by AI video call
Tags: direct-ads, brand-characters, native-ads