Sometimes a developer has earned a reputation for developing websites for a particular industry. In that case, a client knows that the developer might create a site for one of its competitors. In other cases, a client might be introducing the developer to a new industry. In that case, the client might want to restrict the developer for a reasonable amount of time from creating sites for its competitors. In the course of a long and expensive project, it might occur to a client to terminate the agreement and hire away one of the developer's key employees to complete the work.
Developers can contractually restrict the client from doing so.
When a company depends on its website for a large portion of its business, it can incur large losses when things do not go right. Developers can contractually shield themselves from liability for such losses. The internet poses problems for courts to decide which state law to apply and in which state a party can be sued. To avoid spending a lot of time and money resolving these issues, the parties should resolve them in advance in the agreement. Everything cannot be anticipated and covered in a website development agreement, especially given the speed at which the technology is changing.