I have not yet fired a client, but have had to talk to clients about various issues and establish boundaries. I think acceptable reasons for firing would include repeated no-shows and last minute cancellations. Clients need to respect your time.
For the most part, I really do have wonderful clients. On occasion, though,
I have thought about letting one or two go. I do have some who come to their sessions for their workout, but do not exercise outside of our sessions or change their eating behaviors in order to reach their goals–and they wonder why nothing has changed. However, I still feel there is value to our sessions, as some of my clients will not work on their own. So, I continue to train them as I feel some exercise is better than none.
Behavior change is another topic, though!