Duolingo Energy System: Why It Works and When to Copy It

Most energy mechanics in mobile apps feel like artificial gates designed to push users toward payment. Duolingo's is different, and the reason matters for any product team thinking about implementing a similar system: Duolingo's energy mechanic serves users' goals, not just the company's monetisation targets. Making mistakes cost energy makes users pay more attention, which produces better learning outcomes.
This post covers what makes Duolingo's implementation work, the conditions under which an energy mechanic will produce the same effect in other apps, and how to implement one without the backend overhead of building it from scratch.

Why Mistakes Need to Feel Consequential
Early Duolingo allowed unlimited mistakes with no penalty. Users tapped through questions quickly, treating wrong answers as trivial, because wrong answers had no cost. Attention during lessons was low and the quality of practice reflected it.
Adding an energy cost to mistakes changed user behaviour immediately. Users slowed down, thought more carefully, and engaged more deliberately with each question because carelessness had a consequence. This increased attention produced better learning outcomes — which is what users came to Duolingo for. The mechanic serves the user's goal, which is why resentment about losing energy is bounded. Users may be frustrated when they lose it, but they understand at some level why it exists.
Trophy's platform data supports the broader principle. Across apps on Trophy's infrastructure, users who complete achievements requiring three to ten times their average daily activity retain at 48.8%, compared to 34.9% for those completing achievements in the one-to-three times range. At the hardest measured tier, retention reaches 74.2%. The pattern is consistent: mechanics that make effort feel meaningful — whether through difficulty, consequence, or stakes — produce materially better retention than mechanics that remove friction entirely.
Why Depletion Feels Fair
Energy systems in mobile games often feel extractive because they deplete simply for playing, regardless of performance. You lose energy by being present, which makes the constraint feel designed to frustrate rather than to serve any user goal.
Duolingo's depletion is performance-based. You lose energy for mistakes you actually made. This is a small design distinction with a large psychological effect: the energy loss is a consequence of your own choices rather than a tax on your time. Users retain a sense of agency even within the constraint — they could have kept their energy if they had been more careful.
The regeneration timing reinforces this. Five hours to fully restore energy is long enough to create urgency within a session but short enough that free users can practice multiple times per day if they space sessions. This timing is calibrated to support a realistic usage pattern — morning, lunch, and evening practice sessions are all possible — rather than forcing a single daily interaction.
How the Mechanic Drives Subscription Revenue Without Feeling Exploitative
The distinction between Duolingo's energy system and a hard paywall is precise and important. A paywall blocks content — you cannot access what is behind it without paying. Duolingo's energy system gates pacing — you can access all of the content, but you cannot rush through it without paying. Free users get full access to every lesson and can make real progress toward learning a language. Users who frequently deplete their energy and want to continue recognise they are getting enough value from the app to justify paying for unlimited access.
This creates a conversion funnel based on demonstrated engagement rather than content restriction. The users most likely to subscribe are users who hit energy limits regularly, which means they are users who are actively learning and finding the app valuable. Subscription converts the most engaged free users rather than attempting to coerce less engaged ones.
What the Spacing Effect Has to Do With It
There is a secondary benefit to energy constraints that Duolingo did not design for explicitly but that the data on learning consistently supports: distributing practice across multiple sessions produces better retention of learned material than equivalent time spent in a single session. Psychologists call this the spacing effect.
Unlimited practice sounds like the better product. In learning contexts, it is not. Without session constraints, users tend toward longer, less focused sessions with diminishing returns, often followed by periods of burnout and disengagement. Energy depletion creates natural stopping points that, when they work well, produce a pattern of shorter, more focused, more frequent sessions. For a language learning app, this pattern is not a compromise forced by the business model — it is closer to what the learning science actually recommends.
This is worth noting because it sets a bar for when energy mechanics are appropriate. If the spacing effect applies to what your app is trying to help users do — language learning, music practice, coding exercises, physical training — then session constraints serve users even when they cause friction. If it does not apply — content browsing, creative work, task management — then the constraint is purely artificial and will be experienced as such.
When Energy Systems Work in Other Apps
The conditions that made Duolingo's energy mechanic work are replicable, and the framework for identifying them is straightforward: an energy system works when shorter, more focused sessions produce better outcomes than unlimited usage.
Learning and skill development apps are the most direct parallel. Any app where users practise a skill — music, coding, mathematics, writing — benefits from the same alignment Duolingo has: mistakes matter, attention during practice determines outcomes, and the constraint serves the user's goal. The energy mechanic can be configured to deplete on mistakes, on session length, or on a combination of both, depending on which behaviour the app is trying to shape.
Habit formation apps face a specific failure mode that energy mechanics can address: users start new habits with excessive activity, burn out in the first two weeks, and abandon the habit entirely. A session cap that limits workouts or practices in the early stages of habit formation prevents this by enforcing the pacing that leads to sustainable routines. The constraint is not artificial — it reflects what the science of habit formation suggests about sustainable behaviour change.
High-intensity engagement apps where session quality matters more than session duration — focused work tools, meditation apps, some fitness applications — can use energy to enforce the distinction between a meaningful session and an unfocused one. The mechanic works here for the same reason it works in learning: the constraint aligns with what users actually want from the experience.
When Energy Systems Fail
The same logic that explains when energy mechanics work explains when they fail.
Content consumption apps — social media, news readers, video platforms — exist to provide unlimited access to content. The core value proposition is browsing without constraint. An energy mechanic directly opposes what users come for, which is why every major content platform that has experimented with session limits has reversed the decision. There is no user benefit to the constraint, which makes it pure friction.
Creative and productivity tools have a different problem: the work itself determines natural stopping points, and artificial constraints interrupt flow states at exactly the moments when users are most productively engaged. A notes app, a design tool, or a task manager that limits usage with energy is making itself less useful without providing any compensating benefit.
Apps with existing natural constraints do not need manufactured ones. A fitness app where workouts are physically limited by recovery time, a food delivery app where meal timing limits usage, a ride-sharing app where geography and availability constrain demand — adding energy mechanics on top of these existing constraints adds friction without changing behaviour.
Implementing an Energy System With Trophy
The strategic decisions that matter in energy system design are not primarily engineering decisions. The engineering is tractable using Trophy's points infrastructure, which handles energy tracking, depletion, regeneration, and capping without custom backend work. The decisions that determine whether the system works are about calibration.

Sources and sinks. What actions grant energy and what actions consume it? Duolingo's answer is simple: energy regenerates over time and depletes on mistakes. More complex configurations are possible — action-based restoration (complete a review session to earn energy back), achievement-based grants, or friend-referral bonuses — but simple systems that users can understand quickly tend to outperform complex ones that require explanation. Trophy's points system handles positive triggers for restoration and negative triggers for depletion, with time-based regeneration configured at the platform level.
Cap and regeneration rate. These two numbers determine how the system feels in daily use. The right starting point is to look at your actual session length and return frequency data, then set the cap to support one to two typical sessions and the regeneration rate to allow three to four sessions per day for users who space them. Duolingo's five-heart cap supports roughly fifteen to twenty minutes of practice; five-hour full regeneration supports morning, lunch, and evening sessions. If your users' natural session patterns differ significantly from Duolingo's, your calibration should reflect that rather than copying those specific numbers.
Bypass mechanisms. An energy system with no path to restoration other than waiting will generate resentment among engaged users who want to continue. The bypass needs to require genuine engagement rather than a trivial action — Duolingo's practice exercises restore one heart but actually teach content, so gaming the bypass still provides value. Trophy's webhook integration allows you to trigger energy restoration as a reward for completing specific in-app actions, creating a restoration loop that benefits both the user and the product.
Metric targets. The signals that indicate a well-calibrated system: session frequency increases as sessions shorten (users are returning more often), completion rates on core activities improve (users are paying more attention), and some percentage of highly engaged free users convert to paid tiers. If session frequency does not increase when sessions shorten, the regeneration rate is probably too slow. If completion rates decline, the energy cap is too restrictive. Give the metrics two to three months to stabilise before drawing conclusions — energy systems change behaviour patterns that take time to establish.
Frequently Asked Questions
Why does Duolingo's energy system generate so many complaints but retain users anyway? The complaints reflect the friction of the constraint. The retention reflects the value of what the constraint produces. Users who complain about running out of hearts are users who wanted to keep practising — which means the mechanic is working as intended. The complaints are a signal of engagement, not a signal that the system is failing. Apps where the energy constraint genuinely serves users' goals will see this pattern: complaints from users who want more, alongside retention metrics that reflect sustained engagement.
Should I use energy or a points system? They serve opposite purposes and many apps use both. Points reward activity and accumulate over time — use them when you want to recognise and encourage engagement. Energy limits activity and depletes over time — use it when you want to control session pacing and create natural stopping points. Trophy's points system can model both: positive triggers for reward accumulation and negative triggers with time-based regeneration for energy mechanics.
How do I know if an energy mechanic fits my app? The diagnostic question is whether shorter, more focused sessions produce better outcomes than unlimited usage. If the answer is yes — because your app involves learning, skill development, or habit formation where the spacing effect applies — an energy mechanic is likely to serve users. If unlimited access is core to your value proposition, or if session quality is not meaningfully affected by session length, energy mechanics will create friction without benefit.
What is the right regeneration time? Base it on how frequently your users naturally return to the app and what session pattern you want to encourage. Duolingo's five-hour full regeneration supports three to four sessions per day for free users. If your users return less frequently, longer regeneration may be appropriate. If they return more often, shorter regeneration avoids frustrating users who want to practise across multiple short sessions in a single day. Start with your actual session frequency data, not with Duolingo's specific numbers.
How do I communicate the energy system to new users? Introduce it during onboarding with a brief explanation of what depletes energy and how it regenerates, but introduce it at a point in the onboarding flow where users are unlikely to deplete it immediately. Duolingo introduces hearts during early lessons when mistakes are less likely, giving users time to understand the system before restrictions become meaningful. The goal is comprehension before the first limitation is encountered, not an explanation of the system in the abstract.
Can energy mechanics work without a paid subscription tier? Yes. The monetisation opportunity is significant but not required. Energy restoration can be earned through engagement — completing review sessions, referring friends, watching optional content — rather than through payment. Some apps use energy mechanics purely as a pacing tool with no paywall, accepting that the monetisation benefit is sacrificed in exchange for the session quality and retention benefits the constraint provides.
How long does implementation take with Trophy? Using Trophy's points API for energy mechanics, implementation typically takes one to five days depending on your app's complexity. The main tasks are configuring depletion triggers, setting up time-based regeneration rules, implementing restoration actions, and building the UI to display current energy status. The calculation and tracking infrastructure is handled by Trophy. Building energy mechanics in-house typically takes three to six months because you are also building that infrastructure.
What metrics indicate the energy system is well-calibrated? Session frequency should increase as sessions shorten — users returning more often is the primary signal that spacing is working. Completion rates on core activities should improve, reflecting increased attention during sessions. Some percentage of highly engaged free users should convert to paid tiers over time. If session frequency does not increase alongside shorter sessions, regeneration is probably too slow. If completion rates decline, the cap is likely too restrictive.
Conclusion
The failure mode of most energy implementations is that the constraint does not serve users — it serves only the business. Duolingo's system has survived a decade of user complaints and product iteration because the underlying alignment is genuine: making mistakes consequential makes learning more effective, and users who understand that relationship accept the constraint even when it frustrates them. That alignment is the prerequisite. The calibration and implementation decisions matter, but they are secondary to getting the fundamental question right: does session-level friction serve what your users are trying to accomplish?
For a broader look at how Duolingo combines energy mechanics with streaks, achievements, and leagues into a complete gamification system, see our Duolingo gamification case study.
Get the latest on gamification
Product updates, best practices, and insights on retention and engagement — delivered straight to your inbox.