How long will I have a discharge after giving birth?

4-6 weeks. You will likely have discharge for 4-6 weeks after a vaginal birth. It will start out heavy and bloody and change to a brown, yellow and finally white color. If you are passing a clots or continue to have heavy bleeding after the first couple of days contact your doctor.
2-6 weeks. I agree that most bleeding is done by 6 weeks. If you discharge has a foul smell, is yellow/green, is accompanied by itching or irritation, or if you have a fever or feel sick; please contact your doctor immediately.