Surprisingly, I didn't learn the hard way, I actually took advice from other people. Granted, I've learned a LOT the hard way, but not that one.
There's a clause that says the scope of the project is defined in an addendum document, and any changes to that may incur additional fees that must be agreed upon by both parties. There's also a clause that the deposit is 100% non-refundable once I have begun work in any manner, and that I'm not obligated to turn over anything until the final payment has been made. This way they have skin in the game, and can't try to pull a fast one with a huge change expecting me to do it free or lose the contract.
There's a clause that says the scope of the project is defined in an addendum document, and any changes to that may incur additional fees that must be agreed upon by both parties. There's also a clause that the deposit is 100% non-refundable once I have begun work in any manner, and that I'm not obligated to turn over anything until the final payment has been made. This way they have skin in the game, and can't try to pull a fast one with a huge change expecting me to do it free or lose the contract.