..., you can send it when the mempool is almost empty
but lately it has been in that state most of the time anyway 
.
That's not quite true that mempools have been almost empty lately. There are a lot of very low fee rate (mostly spam crap) transactions worth a few dozens of full blocks, see below.

But of course, if you place your transaction fee rate bid smartly above all the crap, you can get your transaction confirmed still with a very modest transaction fee. From the perspective of starting e.g. from 1sat/vByte it looks more like you said (many spikes not rising above 1vMByte)...

Below is the current pending blocks according to mempool.space. If I'm not much in a rush with my transaction, aiming for a confirmation within about 0.5-1h or so, I would use a transaction fee of 0.35-0.40sat/vB.
