I’ve been relatively happy with this USB-C powered soap dispenser that I found on AliExpress for about $15. It doesn’t have a brand name so it’s best to recognize it by appearance:
The tank is 400 mL, and it’s available in gel, spray, or foam. Gel makes the most sense because it works with generic hand soap.
I bought the first one around 10 months ago for my kitchen, and use it several times per week. Later got 2 more for my bathrooms. I’m impressed by the standby time, as the first charge lasted about 6 months, and it’s yet to need a second charge. The motor sounds sluggish when it’s about to die, but eventually it stops functioning and blinks the LEDs instead, so it seems to have working overdischarge protection.
It supports USB C-to-C charging at 5 volts. The biggest disadvantage is that there’s no way to open it nondestructively for inspection or repair, so I don’t know what kind of battery it uses. Recharging consumed 2641 mWh according to my USB-C power meter.
The first unit has developed a minor problem where it pumps a bit of air before soap comes out, so I had to compensate by raising the duration from 2 clicks to 3 clicks. The duration scale seems well-calibrated, as I’ve never needed to use 1 or 4.
There are several other USB-C soap dispensers available online, so leave a comment if you’ve tested one.