-
-
Notifications
You must be signed in to change notification settings - Fork 16
FAQ
a person edited this page Apr 28, 2026
·
37 revisions
I know its alot...
| Question | Answer |
|---|---|
| Can I use Duolingo Max and Duoblock Origin together? | You can but there is also no benefit to using both as Duolingo Max already removes ads. |
| Why is [random issue] happening? | You are likely using an older version of the extension. If not, create an issue. |
| Where are speaking practices? | Only on Firefox, speaking practices have never worked. For it to work you would need a polyfill since the speechRecognition API is not natively supported. Lucky for you, I have created a more general extension that brings decent support for the API. Once you install the extension, import (or manually create through the extension...) one of the prebuilt site-specific overrides. You should download the override specifically for the language you are learning because it needs that info to recognize your speech. Its pretty straightforward, but the GitHub is also linked here for more information. Update: You can use my new Speech Recogntiion Polyfill Userscript as an alternative, but the extension is better. |
| Why is my authentic Duolingo Super not changed to Duolingo Max? | No idea, but you don't need this extension if you have Super since either subscription provides the same exact feature set on the website aside from visual changes (on the app it is different). And no, I will never fix this because it would be a waste of time because of what I said above. Remember, this extension doesn't grant a server-side subscription. |
| What is remote patch sync? | It is just a number the remotely fetches from the extension-version.json that I change if one of the patches gets fixed by duolingo. For example, if I change the number to 2 it will select patch 2 for everyone who has remote patch sync enabled. It's just for quality of life and can be disabled. This feature does NOT execute any remote code. |
| Which patch should I use? | Whichever one works the best for you and that is not fixed by Duolingo. |
| Why can't I buy items in the shop? | You are likely using one of the network interception or userscript patches from v3.4 and lower. Update your extension. |
| Why should I use this extension over the userscript(s)? | The extension provides a constant stream of updates with more hardcoded changes to the site to prevent the bypasses from being patched. It also just comes with more QOL features. |
| Does this follow TOS? | In my opinion, yes. This is all on the client so there is no effect on the system. |
| Is this safe? | Yes, this extension is open source and only changes a few lines of code which are solely responsible for the paid features. |
| Is this all free? | Yes, but feel free to support me. |
| Can I get banned for using this? | You won't get banned period. Duolingo only bans if you actually abuse the system which brings me to my next question below. |
| Can you get me unlimited gems, streaks or XP? | It is possible with the Duolingo-PRO userscript (❗DUOLINGO-PRO IS NOT MY USERSCRIPT). I personally do not recommend it as it sends your account information to a server that isn't Duolingo's and you don't know what they do with your data. Duolingo-PRO also breaks TOS and could get your account permanantly banned. Also why would you want to do this anyways...you shouldn't be obsessed with some internet points (unless its gems which is useful) as it doesn't help you actually learn a language. To be safe stick to my Duolingo Userscripts or my extension as everything is localized meaning it doesn't send data to servers. Update: I have made an Unlimited Gems Userscript based on this python script. Use at your own discretion as I cannot guarantee you won't get banned. |
| Can you make a userscript like Duolingo-PRO that is safe or localized? | No, my goal here isn't to create cheats, it is just to make learning more accessible and easier on Duolingo like how it used to be a couple years ago. |
| Why do I still have Duolingo Max features after uninstalling the extension? | This is an old bug from v3.0 with firefox, update your extension. |
| How do I know if the extension needs to update? | You can either click on the extension icon or just wait until it notifies you. It will show a popup with the version number. It will tell you if the extension requires updates or not based on a fetched version number from this respository. |
| How do I install the Unlimited Hearts/Max Features userscript? | Install the Tampermonkey extension and download the raw file. Greasemonkey and other similar extensions may also work. |
Why am I missing the Video Calls, Roleplay, and Explain My Answer feature(s)? |
Duolingo hasn't implemented these mobile features into the website so I cannot add them. I don't think I'll be able to add these features anyways as it's likely fully server sided but I will try to if it gets implemented. In my opinion, I don't think these AI features are nesscessary and you shouldn't be relying solely on Duolingo for language learning. Talk with real people not AI! |
| Should I download the signed or unsigned extension listed in the release page? |
Signed extensions are directly from the add-on/web-store which is easier to install and can be updated automatically (chrome can't because it gets denied for bypassing paywalls). They also always have the same extension ID meaning an older version that was installed would be overwritten by the newer version. Unsigned extensions may require developer options enabled on your browser and have a different extension ID each time. Both variants contain the exact same content so it is up to you. |
| Does this work if I have energy and not hearts? | Energy is a mobile app only feature, go to the last question for more info. |
| How do I do this on my Apple (iPhone/iPad) or Android device? | - Android: You would first need to enable Install unknown apps for the app you install the APK from. There are plenty of modded APKs available that unlock premium features. These can be found on various forums and third-party app stores. Do your research and be cautious about what you install. Another option is using the Firefox Browser, which supports imported extensions similar to enabling developer mode on the desktop version of Chrome. This extension already has support for Firefox through the Mozilla Add-ons Store natively without debug mode. Other Android browsers that support extensions may also work. - Apple (iPhone/iPad): Modded IPAs do exist, but installing them requires sideloading, which means manually installing apps outside the App Store. This typically involves tools like SideStore (Recommended), or a jailbroken device. If you plan on using SideStore I also recommend looking into LiveContainer because of apple's sideloaded app limits. Do your research and be cautious about what you install. Another option is using the Userscripts App, which is basically Tampermonkey for iOS. You can use this by importing Unlimited Hearts Userscript or Max Features Userscript. After that, open duolingo (web) on Safari and you'll have unlimited hearts or max features (You may have to refresh the page). Although the steps for modded apps are somewhat tedious, the ability to download a wide range of modded apps more than makes up for the work—whether you're using an Android or Apple device. Think of the apps you use that have annoying ads or paywalled features...👀 |
Note
- This extension for the Safari Browser or any webkit browser AKA (EVERY BROWSER ON iPhone/iPad) will never be supported unless Apple fully implements
webRequestordeclarativeNetRequestAPIs, which are necessary for this extension to function.- Even if the above happened, not only would I need to buy a Mac to develop it on Apple’s proprietary Xcode platform, I would also need to pay $99/year for a developer license to publish the extension on the App Store.
- I could use a virtual machine, but I’d still have to pay for the license...
- TLDR: Use the userscript(s) if you are on iOS.
| Question | Answer |
|---|---|
| Why is the modified patched files minified/bundled? | The unpatched files are also minified because they are webpack chunks — there's nothing I can do. |
| Are there any third-party server components in the userscript or extension. | No and there never will be as my goal is to make everything local. I don't want your data lol. |
| How can I reproduce this? | Find your required webpack chunks/files then open 'duolingo patcher.html' and put it through. Then download the newly patched files and use firefox or chrome local overrides to point it towards the patched files you just downloaded. |
| Why aren't the modified patched files in this repository? | It is all done locally. It only fetches the github for the extension-version.json. |
| Why is the code slightly differen't for each browser? | Firefox and Chrome do not have equal extension support. I try my best to keep code parity between both browsers. |
| What happened to the chrome mv2 version of this extension? | I decided to remove it as major browsers don't support it anymore. |
| Will this always be open source? | Yes, this will never be closed source. |
| How does the userscript work? | It's very simple, the script intercepts your duolingo "account" json data file. It then finds and sets specfic objects related to premium features and sets them to true. |
| Is my Duolingo Account Token/Cookie being accessed? | With the extension, the hardcoded patches do not access any data. Though with the userscripts and the network patches, only your JSON data file is accessed which is all done locally anyways. |
| How do I know you won't add malicious code to the extension-version.json? | In versions v3.2 and newer, all remote JavaScript/XSS is automatically removed. Version v2.0 is also safe because an external banner wasn't implemented yet. This JS/XSS sanitization was added to ensure end users don't have to simply trust that I won't add anything malicious; they can be confident the extension is secure. |
| How can I contribute? | You can look on this page for documentation. After editing, submit a pull request and I'll review it. |