Credit cards are 2 to 4 percent.
Most people pay their only large payments(Rent and bills) with cheaper direct transfer schemes from zero to a few USD.
For a 16 dollar fee to be better than 3%, you would have to spend 480USD in one transaction, on the kind of thing that you'd normally have a fee at all for. Something I have only done an extremely small handful of times in my entire life.
A few of my more well off friends might have computer parts or jewelry worth that much. My laptop is the only single thing I own close to that price, and even then, it's not much over it.
For a trip to the grocery store for a single person, bitcoin would probably be a 8% to 20% fee.
Flat fees are a regressive sales tax.
In the middle you have the space where you can do BTC to BTC transactions with somewhat smaller fees, sure.
As an example, Coinbase charges reasonable withdrawal fees that correspond to the actual TX fee, around $0.05 when I last used it a few weeks ago. Others charge absurdly high fees, biggest examples of that being Binance and Bitstamp that charged ~$20 for a Bitcoin withdrawal around the same time Coinbase was charging $0.05.
Point being, different exchanges charge different fees, and LocalBitcoins is always an option if you want to avoid exchanges altogether.
Sure its a little different than most payment providers where the person initiating the payment pays the fees, but the fees are well under credit card rates.