I would bill for the fixes, unless I was embarrassed that I made them in the first place. You need to explain to your customer that there are two basic kinds of contracts; Time and materials, and fixed price. With a fixed price contract you estimate how long it will take to complete a job, tack on a sufficient amount of padding to cover the things that always get missed and that is the price the customer agrees to pay you for that job and the price you agree to deliver on. If things go longer than your padding allowed, the customer "wins", if things work out unexpectedly well then you "win". The customer has the benefit of being able to budget a fixed amount of money towards this goal. (I'm ignoring all the headaches here of a customer wanting to change the project after it has been started and not wanting to pay for those changes). What you had was a time and materials contract. The customer has basically asked you to become a part time employee. You agree to work as efficiently as possible towards their goal and they agree to pay you what it takes to get the job done, with the option to fire you at any time for any reason. In the future you may be able to avoid some of this friction by developing an estimate like you would for a time and materials contract and providing that to the customer as an up front ESTIMATE for a time and materials contract. (Sorry for the large type, some customers are very flexible when the estimate is high and not so flexible when the estimate is low). A good time and materials estimate would include some time to fix bugs after the project is first delivered so the client would at least see a line item for that expense at the beginning. (I don't want to get into too many details, but a time and materials contract tends to be much more detailed and at least tries to cover issues like what is a bug and what is a change, what kinds of support are provided and for how long). Andy.