Your best friend growls at you. It can be an awful feeling.
But we shouldn't take it personally. Dogs have limited ways to communicate with us. They can't say "that hurt" or "I'm scared".
So what should we do when a growl or snap happens?
1. The very first thing we should do is absolutely nothing. Yes, you read that right. During the heat of the moment, when our dog growls at us, if we do anything at all, it's probably going to be wrong thing - i.e. hitting or yelling. So do nothing.
2. Along with doing nothing, immediately stop whatever is was that made your dog growl.
3. Take a breath, and calmly think about what lead to the growl. Make plans to cease or change that activity to reduce the likelihood of the growl happening again. For example, your dog growls when you mess with his food. For now let the dog eat in peace. Later you can work with a trainer on resource guarding
4. Start looking at training techniques, equipment, stress etc.. See more at
5. Schedule an appointment with your vet. Rule out pain or other issues that might affect behavior such as low thyroid
6. Find a good behaviorist. Be careful. Do NOT hire anyone who will set your dog up for failure then punish that failure. Find a skilled behaviorist who will set your dog up for success then reward success.
7. The trainer should help you with training, impulse control, management, and relaxation
A. Counter conditioning and desensitization might also be necessary.
For example, if your dog snapped at you for grabbing her collar, the trainer can help the dog feel better about collar grabs with counter conditioning and desensitization
B. A good trainer/behaviorist can also help you recognize "calming signals." Most dogs display calming signals long before they get to the point of growling or snapping. Dogs normally consider growling/snapping/biting to be the last resort after all of their calming signals have been ignored.
8. A vet might be able to help you with some calming aids
The most important thing is to never counter "aggression" with aggression. This will usually make the problem much worse.