What is the best way to protect your interests as a freelance web designer when:
- The client is unresponsive and takes a long time to make decisions
- The client makes constant changes
- Feature creep
You must sit with the customer before the project begins and set guidelines on how the project will proceed and let the customer agree on the method by which you design and execute your project plan. If this planning step is not accomplished up-front, it is hard to make the customer happy at the end of the project. Of course this assumes that you have a plan and you can scope the work correctly and can make a good estimate on effort required.
Many customers don't appreciate the effort required in making change (or simply don't care). Some belive that they can ask for anything as long as they are paying, that is not quite their mistake unless they were warned.
Still, if you passed this chance, try this now. Try to create a basic set of requirements that won't change and identify others as nice to have in the next release. Log the changes that were requested so far and the deviations from original scope and invite them for a discussion. If you are sure of yourself, you could ask for independent arbitration or ask for extra time/money.
Remember that this customer may be needed in the future as a referral. So be careful.