https://developer.chrome.com/docs/webstore/money/
"The web has come a long way in the 11 years since we launched the Chrome Web Store. Back then, we wanted to provide a way for developers to monetize their Web Store items. But in the years since, the ecosystem has grown and developers now have many payment-handling options available to them."
There is no way for monetization to solve this, because the two potential customers are not purchasing the same product.
There are lots of business models to choose from
- subscription
- affiliate links
- sponsors
- one time charge, this one is tricky as restricting access requires a back-end that needs ongoing maintenance and server costs
[edit: formatting, spelling]Extension devs know the rules of the game up front and have no expectation of profit.
It's wonderful that people are willing to share their knowledge and time for free - why not let it be the way it is?
Project being maintained by a single dev being another, there needs to be incentive to keep the project going and not abondon or sell out.
If a browser extension is allowed to use license keys (not sure on the various store rules i.r.t. browser extensions), you could create a timed license key that is cryptographically signed.
No back-end required for that.
Everyone has a price, and when everything is going smoothly, that price goes up.
I'm not sure I advise doing it, but you can go to about:addons and hit the gear icon and you can uncheck "Update Addons Automatically". Even better, click on an extension and under the "details" tab there's an option per-addon to set whether you want automatic updates or not, so you can disable updates just for the one addon you don't trust (or enable updates just for the one addon you do trust).
Also, want to run older version of an extension? The Mozilla Addons page for each extension has a list of every release and you can download each version independently as a signed XPI file if you want to sideload it.
The big thing I wish Mozilla would add is self-compiled releases like F-Droid does, especially since their ill-advised signing process means it's hard for users to compile an extension from source -- it's way too easy for a submitted extension to deviate from its source code. But that (admittedly large) issue aside, Firefox offers a lot of control for users who want to manage their own extension versions. Forced automatic updates are a Chrome problem.
So there are monetization opportunities, just like any other distribution channel.
That's kinda lame because now you have to have a backend setup, just so you can charge for some features.
If we approach it from that angle, then your extension can only restrict access to it's features via a round trip to your own servers to validate access and/or show a checkout view to purchase access.
Some of the difficulty around securing extensions boils down to the fact that Javascript permissions could be better. Websites do a decent job of sandboxing the website, but sandboxing within websites (without relying on iframes) is much more difficult.
Per-site permissions and click-to-activate are also really useful features here. It's easy to forget how recent they are. But it would be good to go further if possible and having barriers in front of exfiltration would be a big part of that -- there are many browser permissions that would become less dangerous if you could know for sure that the data they generate can't get off your device. I just think it would be really difficult to try and build browser permissions around that in a user-legible way.
If monetization was better, it would just end up like Google Play, with adtech spam crowding out the "legitimately" monetized apps.
Dracionian restrictions on web access (like requiring a prompt whenever an extension wants to upload/download data) might help a little.