It's all about expectations, really. That goes beyond just the quality of the work. What you do, when you do it, why you do it, what happens when x goes wrong at time y. You need to set the boundaries for both yourself and the client, like with the revisions. Nearly every conflict in group work stems from different expectations. "But I wanted this feature implemented that way": different expectations of content. "Why isn't it done yet?" Different expectation of the timeline. The problem is that you can never avoid those conflicts (sadly all communication is imperfect), but that extra work you do upfront really helps a lot. And when you do your work according to their expectations, they will easily hand you over the money. After all, you did what they expected, so it's definitely worth the 10k.Since I started taking the time at the beginning to plan and educate clients I've had so much better luck getting paid and getting things done without ripping my hair out. It's amazing. It also weeds out all clients who aren't serious about it and therefore doesn't waste either of our time.