The biggest problem with key loggers is one of intent.
There are many commercial legitimate ones, installed by the owner of the system and obviously some ones not installed by the owner/user that are used for malicious purposes.
Whilst avast does detect keyloggers some commercial legitimate ones it doesn't, the problem being how does an AV determine the use that a keylogger will be put and who installed it.
My guess would be that many would be determined as PUPs (Potentially Unwanted Programs) alerting the user to their presence, but many legit commercial keyloggers use methods to try and hide from detection or there would be little point in installing them to watch over your kids/employees, etc.