What would you do to make sure that your clients expectations are realistic?

Perhaps the most important thing is to know how much time you can dedicate to each customer. Whether it's good news or bad news, the sooner you tell your customer, the better. Encourage your client to do the same when they have news that could affect the project. To successfully manage expectations, take advantage of the trust you have with your customer and provide information about the way they operate.

Provide a list of the promises you will keep during work. For example, explain how you'll always respond to any email within X hours, with the guarantee that you'll always be there. Or maybe you could stipulate that you'll never send a surprise bill; that any additional work will be paid separately for them to consider.