Blog
Writing proposals that define deliverables tightly enough that everyone knows what is and is not included.
Turn implementation unknowns into testable scope exclusions, then route each failed assumption into discovery or a priced change request.
Design the boundary of each stage before work starts. Define its output, included review, dependencies, and trigger for reopening the fee.
Price discovery as a defined engagement. Cost each output, name the unknowns it will test, and charge only for the risk that remains.
Three piles: what you price firm, what you price with a stated allowance, and what you refuse to price until the client answers. And how to write each into the quote.
A deliverable written as a noun has no edges. Give each one a count and an acceptance test, and there is nothing left for a client to widen.
A revision round becomes billable the moment it stops matching the proposal. Define a round properly, then price the extra ones from what delivering one costs.