Talking to my friend Ross about WebMonetization for musicians the obvious question came up - how does $5 cover all the payments, so I thought I’d do a little experiment.

I’ve made a page which funnels payments to a wallet for 10 seconds, then returns to the sites default wallet (and shows a nice surprise for the reader). It uses the web monetisation API’s to print to the screen how much has been streamed in those ten seconds.

Ten second test results

This should let me do two things:

  1. I can see how accurate those APIs are
  2. I can take a stab at working out the break down of the $5 Coil subscription

It turns out, though, that how micropayments flow from Coil to Uphold isn’t quite as simple you’d expect. I think what happens is they bundle up small payment into one larger one, presumably to ease load & simplify things on their backend. I think the number shown in the browser is right, but I’ve not seen a corresponding payment, just aggregated ones rounding up all the smaller payments in a day. The number shown is always around 0.0035-0.004 XRP. This agrees with Coil’s documentation says, assuming XRP:$is about $0.25.

Breaking down $5

Uphold is telling me that $1 would buy me £0.76, that 1 XRP is worth £0.217 and XRP:$ is $0.284. So $5 is, at time of writing, 17.605 XRP. Lets say that 1 second of streamed payments is worth XRP 0.0004 (a tenth of the higher number above). That means that my $5 pays for a little over 44,000 seconds, or about 12 hours of entertainment. This roughly agrees with Coils documentation ($0.36/hour, or $0.0001/sec = 12.5 hours). So that’s nice.

They also say they tail off payments, as you approach your $5 subscription, presumably to give them some revenue/cover of running costs. I’m not sure what this tailing off looks like, yet. They will also pay providers (at the lower rate) even if you over run your $5.

This shows Coil is doing what they say, and the allocation of payments really is as clear as documented. It’s also a significantly larger payment than a streaming platform.