Another reason an employee could leave is the lack of direction and responsibilities. Do your employees have a job description, that they know about? Are they aware of what they should be doing and are you making sure they are doing it?
So often people get on with their day job, ticking off the to list, doing what needs to be done. Again, they can become bored but also, they can feel put upon. You need to give them responsibilities, stretch them, explain what is expected of them.
Having job descriptions and clarity to all employees can stop clashes and communication breakdown. If your employees know what they are meant to be doing and when, it helps the company achieving their goals and you to do your job rather than sorting out problems.
Go back to basics, it will help you and your employees.