I’m working mostly for small businesses and I’ve never used a written contract. No client has asked about it yet. The only paper involved is my offer and invoice.

When I started my freelancing, I read into this topic and came to the conclusion that I shouldn’t use contract templates without talking to a lawyer. Before I could make an appointment, the first clients showed up, I worked for them, everything was fine.

Now, reading here at Freelancing SE, I feeld like I should get a contract template which I can use for future work.

But is it really necessary? Would you recommend it? Or is it only worth it for bigger clients?

8 Answers 8


The contract is basically your safety net. It protects both sides. Without a contract in place, it would be difficult to enforce payment if the client decided not to pay you. Equally it would be difficult for the client to enforce delivery if you decided not to deliver whatever was agreed (or worse still, decided to delete/take down whatever had been delivered, post payment).

It sounds like you've been fortunate so far in that all of your clients have been happy to pay you whatever was agreed between yourselves and there have been no disputes around payment. In the event that a dispute appears on the horizon, having a contract in place that is signed by both parties ensures that both sides are duty bound to honour their agreement.

Presenting a client with a professional contract before commencing a project also demonstrates to the client that you are a professional outfit, which will enhance your reputation in the long run.


Contracts are a critical piece you hope never to need. A contract defines the nature of a business agreement and ensures that expectations are clearly set. Ensuring the contract is clear on expectations for both sides is critical for avoiding miscommunications and ensuring that business operates smoothly as well as protecting both sides in the (unfortunately all too common) case where something breaks down along the way.

Often it may be possible to reference the contract to resolve issues that come up peacefully, but occasionally the situation still degrades to the point where the contract is necessary to ensure both sides get what they deserve when one side becomes an unwilling party.

I've seen this happen on both multi-million dollar projects where the company I was working for at the time had to go after our vendor as well as on small projects where a failure of a client to provide details they were required to provide resulted in a missed deadline and they then put a stop payment on a check for several thousand dollars they had given us as an initial payment.


TL;DT: definitively

I'm a freelancer in germany and I used to work for a small web-design studio. However they managed a not-so-small eCommerce site. I got the job through a friend in this typical "hey, we have a minor problem there, could you have a look"-manner. So I took a look and fixed the bug. They were satisfied with my quick work and soon other minor thinks came up. Then bigger ones and so on until I became a regular supporter to their team. Well support is the wrong word here, I was their only programmer (and also the only one who knew HTML and CSS, but that's probably not so important in that business). We always said we really should have a contract, but we never actually did set one up.

The last thing I did for them was a new newsletter system. The old one was just a php-script that had to run in an opened browser window. It processed a few addresses and then would reload the page to process the next few. This was ok in the beginning, but meanwhile they had more than 750,000 mails to deliver and so the browser page based version was to be replaced with a cron-job. The problem was: I didn't know how long the script would run. So it was executed every few minutes, checks if the script was still running by looking through a list of active processes (using ps) and terminates if it found the script to be running. It worked on my machine. I insisted on testing this more thoroughly, but the management decided to put it on for production. Production in this case meant: the same server where the database and apache ran on.

So, there was a bug. The newly executed script would only find old instances if the pid of the running instance was smaller than the new ones. It was a stupid bug and it was my fault. The script went production on a Friday and I was only notified on Monday. Meanwhile our hoster took down the entire server as it behaved like an infected machine, sending dozends of the same mails to the same addresses. The shop was offline for a whole weekend. Other weekends brought in sales of about 100,000 €. I was a student.

If you are employed at a company in germany you cannot be hold liable for this kind of damage (maybe if your contract sais otherwise, but I would guess that this isn't even legally possible). However, being a freelancer is a whole other story. By default I was liable. Now I did not agree to run this in production and I also -- long ago -- informed them that running everything on one server, especially the mailing system was not the best idea. But I couldn't proof it. We didn't have a contract and of course we never documented those kind of things neither.

In the end I was very lucky and they didn't try to hold me liable. I still had a few sleepless days till their decision.

Have a contract, check liabilities. Also think about thinks like licensing. Are they allowed to use your work in every manner they want? Can they resell thinks? May they used it in other countries? In other contexts? Do they need your permission, do you want (and deserve of course) extra money for that?

You may find better sleep ;D

  • Great example regarding liability, thank you. But I wonder: How could a contract have helped in this case? When you wrote this script, you already accepted the work, so a contract would have been already signed. Would you have set up another contract to confirm that they really want to run the script untested? Wouldn’t it have been sufficient to send them this warning per email?
    – unor
    Jun 12, 2013 at 0:41
  • 1
    In my recent contracts is a clause that I cannot be hold liable at all unless I act negligent (I hope the word is correct, I mean very careless). This would also be the default for an employee in Germany. And yes in this case I would have requested a document signed off by the management clearly stating that I don't agree with having this barley tested script running on a production server nor agree to have it run on the same machine as the webserver and database.
    – Mene
    Jun 12, 2013 at 11:07
  • Regarding emails: They don't count as proof in court. It may be regarded as evidence at best because emails are very easy to fake. That's the situation in Germany at least. Things change when they are digitally signed, but even then courts may require you to use a professional certificate for that. Depends on the case. But I'm no lawyer and paper is currently the most reliable form of document.
    – Mene
    Jun 12, 2013 at 11:11
  • 1
    @Mene First up: you are absolutely correct in saying that email messages themselves have no base in German courts. But I think the hosting provider would have simply forwarded the logs of the mailserver and webserver upon formal request by the court. At least, that's what I've seen happening in front of a German court last year. In the end, the case was won based on those logs, not due to showing the emails themselves. Which proves you're right. Yet, server logs can and will ruin the party instead. ;)
    – e-sushi
    Aug 25, 2013 at 9:20
  • It makes sense, but I didn't know it would be accepted. Good to know!
    – Mene
    Aug 26, 2013 at 20:49

You should always have a contract that fits what you are doing. Depending on the kind of work you may want a written contract. I have been self-employed for 9 years and my general rules are:

  1. Very small jobs (a few hours or less) do not require a written contract. The reason here is that the effort in drafting a contract and reviewing it becomes a significant burden. Nobody wants to sign and fax something back to get an hour of tech support. And generally my customer needs the opportunity to buy further services that collecting payment is not a problem (it has happened maybe twice for me in the last 9 years, and it was never enough to even justify going to small claims court.). For small projects keep in mind that things may be dynamically negotiated through the short project as well. "Now that you fixed that could you also..." is not that uncommon.

  2. If there is something more specific (typically up to about 20-40 hours, for well defined projects), I go with a bidding process which establishes a contract. Keep in mind that not all written contracts say they are contracts. All that is necessary is an offer and an acceptance for an exchange. That can be in writing without a contract document. In essence I issue a quotation or estimate, which offers to do an appropriately scoped job (scoping info in the quote or estimate), payment terms etc. When this is accepted this forms a contract (and it is a written one).

  3. Larger projects which are open ended typically have more complex terms and a contract which calls itself that and spells out those terms are often helpful.

Keep in mind that the primary point of a contract is a shared reference. If you are there for a couple hours doing something fairly simple, there is no real reason for a written contract. If it is going to be spread out or scope needs to be determined in advance you need a document which specifies this and establishes a contract. If scope is not easy to define, and so you need additional terms like cancellation terms, etc. then you need a formal contract. But in all cases you need it to fit the work and one size does not necessarily fit all.


The size of your clients does not matter. You should only perform work with a contract in place (unless you are selling a product not a service, and the product is relatively low price).


I liken contracts to backups. Though you don't say what industry you work in, I am sure you backup your computer, invoices etc somehow even if it is a hard paper copy.

*You hope you never have to use a backup, but that one incident makes you are so grateful you did slog through them *

In other words: Yes. Always use a contract, it is your safety net and doesn't just protect you but the people around you that you love. (Sole traders: What if someone came and took everything you own?)


Always. As I worked with a lot of small business and even people without contract I had a lot of problems. It's like levelnis said: the contract is your safety net: protect both sides.

You don't have to create a very big contract. I strongly recommend using the docracy, they have a strong library of contracts.

Also, contracts will not make you very formal. But will you make you safe. Also, don't forget to put everything at the contract.

I had problems with three clients. They "forget" to pay for about two months. I don't recommend you working without contract, really.

  • 3
    However, the very definition of a contract is a formal, written agreement between parties, so of course it makes you formal.
    – Amelia
    Jun 26, 2013 at 9:32

Quoting from freelancersunion

we urge all freelancers to use Contract Creator to help insure that they get paid on time, that their jobs are clearly defined, and that they are considered professionals by their clients.

If a client owes you a relatively small amount of money, you may be able to take the matter to small claims court, where cases are decided by a judge, without the advice (and expense) of an attorney. Procedures for small claims courts vary from state to state.

For both freelancers and clients, court action is a last resort. Although it may be necessary when other measures have failed, the costs of bringing a lawsuit to court—in time, money, and frustration—usually outweigh the possible gain.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.