Complications of spaying too early:
- increased change spay incontinence
Complications of spaying too late (or never):
- increased chance of mammary carcinoma
- chance of pyometra
Its a trade off, which is why often vets recommend 6 months as most breeds are in their juvennile stage then (ie. like a teenager).
large breeds are more common to have a spay incontinence, and smaller breeds are more prone to developing a mammary cancer.
I think anywhere between 4-16 months is reasonable, knowing that there are pros and cons to early/late but often its a very balanced tradeoff.
Another thing to consider is the cost of a spay. Mature spays (bitches > 9 months) in our area do cost slightly more than the immature spays.