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
Mixedpartnershipsretention
What they did
US-only direct ad deals: one of Duolingo's eight characters (e.g. Lily) introduces the brand's ad with a short custom-written joke script, then the ad plays. Formats are Duolingo-built. Goal: cut programmatic volume substantially in 2026.
What happened
Guest says the format seems to be working really well and is delightful, but scaling is slow because each advertiser must be sold on a custom format.
In their words
Sub Club by RevenueCat · Why Your Free Users Are Your Real Growth Engine – Cem Kansu, Duolingo CPO“So we have eight Duolingo characters on Duolingo that you see, introduces the ad.”
“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.”
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 61 Duolingo tactics- Send tomorrow's reminder 23.5 hours after today's lesson, not at a time users pickBeat every other scheduling strategy tested, including user-chosen times
- Let an algorithm pick from 250 reminder messages, and A/B test adding new onesNotifications called a top retention driver; no numbers shared
- Keep reminders to about three words for newer users; say more to loyal onesThree-word messages 'worked really well'; no numbers shared
- Write 'Try for $0.00' on the trial button instead of 'Try for free'Worked well for Duolingo; not guaranteed for other apps
- Change the paywall button from 'Try for free' to 'Try for $0.00'Meaningful conversion lift over 'Try for free'; no numbers given
- 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
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: Show one ad only after a lesson ends, and test it against retentionRetention mostly neutral, at most a slight hit, across ad tests
- 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: 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