You finished the work. The client is happy. Then the invoice goes unpaid for two months, and every follow-up gets a "will check and update you." If you are a freelancer in India, this story is probably familiar. The difference between freelancers who get paid on time and those who chase payments is usually one simple document: a written contract signed before the work starts.
A contract is not about being distrustful. It is about removing doubt. It answers every question the client could ask later — what exactly you will deliver, when, and how much they owe — before it becomes an argument. (For what happens after the work is done, see our free GST invoice format guide.)
Try it free → Contract Generator
Most freelancers do not skip contracts out of laziness. They skip them because the client came through a referral or a quick WhatsApp chat, and asking for a signed document feels awkward. Another common reason: free templates online are written for US or UK freelancers, full of clauses that make no sense in India.
Consider these situations every freelancer faces sooner or later:
A simple contract fixes all four problems before they start — and it does not need to be written by a lawyer. A clear one-page agreement with the right clauses is enough for most freelance work.
Below is the structure used by the free contract generator.
Write the full legal name (or registered business name) of both parties, plus the date the agreement starts.
Describe the exact deliverables: not "a website" but "a 5-page WordPress website including home, about, services, portfolio, and contact pages." List what is included and, just as importantly, what is not. If you offer two revision rounds, write "two rounds of revisions included; further revisions billed at ₹X per round."
State the total fee, the payment schedule, and the mode of payment. A common structure for Indian freelancers is 50% advance before work begins and 50% on delivery. For longer projects, split into milestones: 30% advance, 40% at midpoint, 30% on final delivery. Also write what happens on late payment — for example, a pause on work after 15 days overdue.
Give start and end dates, plus milestone dates for larger projects. Add one protective line: "Client feedback delayed beyond 7 days will shift the delivery date by an equal number of days."
Define how many revision rounds are included and what counts as one round. Add an acceptance clause: if the client does not respond within a set number of days after delivery, the work is considered accepted. This stops the infinite-revision loop.
State clearly when ownership transfers to the client — usually after full payment. "All rights transfer to the client upon receipt of full payment" is the standard line. This protects you: if the client has not paid in full, you still own the work.
Either party should be able to end the project with written notice (for example, 15 days), with payment for all work completed up to that point.
A short line promising not to share the client's business information. Many clients, especially startups, ask for this.
For Indian freelancers, a simple line works: "Disputes will first be resolved by discussion, then under the laws of India, with jurisdiction at [your city]."
A contract does not make you look difficult. It makes you look professional. Clients who respect your work will respect a contract.
You could write all of this yourself, but formatting and phrasing take time and are easy to get wrong. The free Contract Generator does it for you:
The whole process takes about five minutes — far less time than one payment dispute.
Yes. A written agreement accepted by both parties is a valid contract under Indian law. For very large projects or complex IP, consulting a lawyer is still wise — but a contract is always better than no contract.
For routine freelance work, no. A contract on plain paper or even a PDF exchanged and accepted over email is enforceable. Stamp paper matters more for property and certain specific transactions, not for typical freelance service agreements.
That is itself useful information. A client who refuses any written agreement is telling you how they handle commitments. If you must proceed, insist on at least an email confirmation of scope, fee, and payment date — and take an advance.
Send the contract first. The client accepts it, pays the advance, and then you start work. The contract and the advance are a pair: the contract defines the deal, the advance proves the client is serious.
Every freelancer in India will face a client who delays payment, expands the scope, or disappears mid-project. The ones who come out fine are the ones who had it in writing.
Try it free → Contract Generator
And when the work is done, get paid properly: use the free Invoice Generator to create a professional GST invoice in two minutes.