Duolingo · B2C · language learning app
Show one ad only after a lesson ends, and test it against retention
Retention mostly neutral, at most a slight hit, across ad tests
Workedexperimentationretention
What they did
Introduced ads in 2016 with a single placement: after a lesson is completed (not app open, not mid-lesson), still the only placement today. Team dogfooded the app daily to judge the feel, and A/B tested each ad change against retention, app closes and reviews.
What happened
Retention was neutral on most ad experiments, sometimes a slight hit.
- Stage
- Early (2016, first ads)
In their words
Sub Club by RevenueCat · Why Your Free Users Are Your Real Growth Engine – Cem Kansu, Duolingo CPO“Hence, our first test, and honestly even today, that's our only ad placement, is after you've completed a lesson, we show you an ad. Not during, not before, but always after, because we believe that doesn't interrupt your learning.”
“Honestly, our retention was maybe a slight hit, but mostly neutral for most of our ad tests over time.”
Related topics
Get tactics like this every Monday
New tactics from the week's founder interviews, each linked to where it was said.
More from Duolingo
All 32 Duolingo tactics- Cut the free trial from 14 days to 7More conversions overall and experiment results twice as fast
- Let trial users pick which day they get the reminder before being chargedTested; added friction but built trust and delayed cancel decisions. No numbers given
- Ask new users in onboarding if they want to learn with or without adsSignificantly higher uptake; one of the biggest wins of the year
- Change the paywall button from 'Try for free' to 'Try for $0.00'Meaningful conversion lift over 'Try for free'; no numbers given
- Give 3 free days of the paid tier, no card needed, even to current subscribersEffective for free-to-paid and for upgrading subscribers to the top tier, per guest
- Let people pick which day you remind them before their free trial endsLifted conversion; no numbers given
More from this episode
- Duolingo: Keep lessons free and sell learners' translations to news sitesSmall revenue; dropped by 2016 (price race and low translation quality)
- Duolingo: Charge $1-3 to fix a broken streakA good share of users paid; showed how much users value their streak
- Duolingo: Count ad complaints per million users and compare them to other complaintsMissing-course complaints were 3x ad complaints; ads launched
- Duolingo: Block gambling and sketchy ad types, even if it costs revenueAccepted lost ad revenue for better experience; no numbers
- Duolingo: Sell ads directly to brands and have app characters introduce themUsers like the format; slow to sell because it's custom
- Duolingo: Use the end-of-lesson ad slot to advertise your own paid planGuest says house ads beat programmatic ads; no numbers
- Duolingo: Run 3-6 month holdouts for changes whose effects show up lateNew push lifts can turn negative after about 6 weeks
- Duolingo: Sell a one-time ad-free month at $3, $5 or $10 to test demandUptake far above expectations; led to the subscription
- Duolingo: 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
- Duolingo: Offer a free trial even though the app is already freeOne of the biggest unlocks; guest had expected it to flop
- Duolingo: 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
- Duolingo: Change the buy button to say 'Try for $0.00'Beat 'Try for free' on both trial starts and trial-to-paid
- Duolingo: Give subscribers unlimited hearts so mistakes never stop their lessonsBig turning point: raised subscription conversion and retention
- Duolingo: Make paid features free when a test shows they earn littleTook a small revenue hit on purpose to grow free users
- Duolingo: 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
- Duolingo: Offer live human tutors on demand in a higher-priced planFailed: users joined, panicked and left; later replaced by AI video call