Bad breath is very common in dogs and cats for all sorts of reasons, some as simple as their diet.
However, persistent bad breath is definitely NOT normal! It is the most common sign of dental disease. What you are smelling is infection and pus. Plaque bacteria on the teeth causes gingivitis, resulting in painful, red, swollen, ulcerated or bleeding gums.
Left untreated, the bone surrounding the teeth also gets destroyed, leading to abscesses, loose teeth and even jaw fractures if nothing is done. Infection also spreads through the bloodstream to the vital organs, including the liver, heart and kidneys.
In a nutshell, persistent bad breath is most likely due to dental disease.