I think, generally speaking, the number of transactions and their fees can be easily predicted if you know the amount of time since the last block was mined. I think it is fairly unusual to see large spikes in the number of transactions.
Sometimes that is true, like these days that the bitcoin market is "calm". Other times it is not possible to predict, for example when the price is making sudden moves. Or even in some cases major altcoin pump and dumps require bitcoin moving to and from altcoin exchanges creating a lot of spikes that can not be predicted.
This would result in fee estimators consistently underestimating the cost to get a transaction confirmed. If a block was found 2 seconds ago, the fee estimator will show a minimum required fee for a next block confirmation that, if used, may result in a user waiting a day for confirmation. On average, half of all transactions will be broadcast 5 minutes prior to the next block is found, and the mempool will generally change during this time.
Fee estimators could be improved if users could see, and adjust assumptions made by the estimator.
I couldn't agree more. That is why visual representation of mempool such as
https://jochen-hoenicke.de/queue/ are always the best for fee estimation. You can see the mempool size, the fluctuations and in times of fee growth you can even estimate the rate at which fee is rising.