Skip to main content

State of web micropayments

As of 2021 there is little doubt that the world of web advertising is toxic and abusive for both the end users and content publishers, and negatively impacts web security. Are there any reasonable alternatives out there?

A comprehensive introduction into the core concepts and issues of the web monetization business can be found in What Happens Next Will Amaze You by Maciej Cegłowski, so I will skip the discussion about mass-scale sales of personal data.

There’s also a security angle here — ad-tech turned websites into massively oversized) bulletin boards that basically publish untrusted HTML distributed by an obscure network of third-parties of dubious reputation and unlimited appetite for unrestrained access to your web browser.

The fact that most ad networks will explicitly ban publishers from sandboxing their JavaScript using <iframe sandbox> is the most telling. And if you ever tried to deploy Content Security Policy to a website with third-party analytics and advertising code you surely realize it’s close to impossible without watering the policy down to such an extent that it makes little sense.

Are there any alternatives?

Web Monetization API

Web Monetization is quite an elegant solution where website owners publish their wallet identifier in the source code of their website. It looks like this:

<meta name="monetization" content="$">

Compliant browsers will send payments to the specified wallet based on time spent browsing the content. In their own words:

Web Monetization is intended for continuous payments rather than discrete payments. It is also designed to not have any user interaction: It is intended to provide a direct alternative to advertisements, rather than an alternative to traditional e-commerce checkout methods. With advertisements, the user agent decides whether to display the ads and the user decides whether to engage with the ads. With Web Monetization, the user’s provider decides whether to pay the site and, if so, how much to pay.

From website’s perspective it’s clean and elegant. No third-party code, no chain-loading of obscure JavaScript from dozens of CDNs, no bloat. The third-party that connects the publisher and the reader is called provider above and, as of 2021 there’s just one. Coil has a very simple business model: take a $5 monthly subscription from its users and distribute it among websites participating in WM proportional to the time spent.

WM is an open standard so you can imagine many other business models that will redistribute a stream of income, for example generated from premium subscriptions or advertisements displayed by a WM-compliant web browser.

Basic Attention Token (BAT)

Basic Attention Token (BAT) does precisely what the name says: it puts value on reader’s attention on a website, plus it allows interactive payments such as tips. BAT is the monetization technology behind Brave browser. From publisher’s perspective it’s just as clean as WM, there’s no third-party content, just a DNS verification of the domain.

Brave earns money from paid advertising that the Brave browser displays on specific pages, and redistributes part of the income to the websites and to the end-users. The latter is probably the most distinguishing feature of BAT, as all parts of the food chain are actually paid by advertisers. Publishers are paid for their content, end-users are paid for time spent reading it and watching ads.

Since advertising is involved, there is third-party HTML being displayed although as of today it’s clearly displayed by the browser rather than injected into the website contents.

Technically, BAT is a cryptocurrency token based on Ethereum, which means it can be used by any other party, not only Brave, and it can be also traded.


My favourite is LiberaPay which is both an open-source project and its own instance that is entirely funded by donations. LiberaPay, such as any other donation websites (PayPal, Patreon etc) make it easy to donate micropayment donations to websites you like by simplifying the payment and pay-out burden for both sides.

Popular open-source projects such as F-Droid, FreeCAD, MicroG etc are receiving hundreds of dollars per week each through LiberaPay from hundreds of donors, each paying very small donations on average. For example, LiberaPay itself receives €360 per week but it’s over 950 people who donate, so each of them donates less than €0.40 per week.

The service provided by LiberaPay here makes perfect sense — it wouldn’t make any sense to set up SEPA bank transfers or debit card payments for amounts such as weekly €0.40, as the transational costs would exceed the donation amount. This money streaming service offers economic benefit as well as some kind of privacy relay.


While cryptocurrencies such as Bitcoin and Ethereum were initially created with the intention of using them for payments and e-commerce, as of 2021 nobody is really using them for this purpose. It doesn’t make much sense to buy good for a currency so volatile that the item costs $200 when you add it to the basked, then $150 when you click check-out button and then $250 when you actually initiate the payment.

In Ethereum ecosystem the problem of volatility has been solved by “stablecoins” whose exchange rate is kept constant to a selected fiat currency using various techniques. One of them is DAI which keeps the exchange rate using quite clever financial mechanism operating entirely as Ethereum decentralised organisation.

I have been using playing with DAI a lot a couple of years ago and with a browser extension such as MetaMask the user experience was actually great. A payment took under a minute, transactional costs were negligible and transaction of $100 made with DAI was worth exactly that now and then. Back in 2018 it indeed looked like a great way to do micro-payments and finally one that was also user-friendly.

$23 transaction price for a $0 Ethereum transfer

Things started looking less optimistic as the Ethereum network started getting increasingly busy and even tiniest transactions got quite expensive. The screenshot above shows an Ethereum transaction to modify an .eth domain record where there’s no actual fee, but the transactional cost of the change operation on blockchain is equivalent to $23. Which, of course, makes the whole operation nonsense.

Of course, there’s a lot of innovation going on overcoming these but this effectively means we’re back to the starting point in terms of technology maturity and usability.

Is any of these prospective?

Certainly yes.

The only possible drawback may come from the other side: some mainstream advertising networks use exclusive agreements to prevent publishers who earn from them from engaging with any other publisher.

If you are not bound by such agreement, any website can today use Web Monetization and register with Brave Publishers. The biggest advantage of these two is that they do not come bundled with any committment: the registration doesn’t involve adding any third-party code apart from a single DNS entry for domain ownership validation (BAT) or a single HTML <meta> with identifier (WM).

Find me on Fediverse, feel free to comment! See how