Launch

9 min read

Website development agreement in India: the clauses that protect a small business, and the ones to refuse

A website development agreement for India in plain English: scope, payments, code ownership, accounts, testing, warranty, handover, stamp duty, and red-flag clauses.

Mvpedge teamProduct, design and growth studio
A wooden meeting table in a bright Indian office with a printed contract of plain grey lines on a pale green stamp paper sheet, a fountain pen, a small brass rubber-stamp holder and a glass of water, against a white wall

A website development agreement is a written contract between you and the agency or freelancer building your site. For a small business in India, the clauses that matter most are scope, milestone payments, who owns the code, whose name the domain and hosting are in, acceptance testing, a bug-fix period and a clean handover if things end early. Get those eight right and most disputes never start.

Most small website projects in India still run on a quote and a WhatsApp chat. A freelance developer on r/LegalAdviceIndia, unpaid after six weeks of work, summed up the root cause: "Payment terms were verbal/WhatsApp-based", with no separate written service agreement. The client then threatened legal action over the source code, and neither side had a document that settled it.

Below are the clauses to insist on, the ones to refuse, and a checklist you can hand to the agency. We use one hypothetical example throughout: a Lucknow chikankari brand paying an agency ₹1.2 lakh for a Shopify store.

Why a website development agreement matters#

Under Indian copyright law, the person who writes the code is usually its first owner. An agency or freelancer is not your employee, so unless the agreement transfers ownership to you, they may still own the website you paid for.

The Copyright Act, Section 19 adds two traps. An assignment of copyright is only valid "in writing signed by the assignor". And if the agreement does not say how long the transfer lasts, "it shall be deemed to be five years". If it does not say where, it is presumed to cover India only. A vague line like "the client owns the website" can leave you with a five-year, India-only right. A good agreement says perpetual, worldwide, all rights.

The clauses that protect you#

1. Scope and deliverables#

List what is being built: number of pages or templates, features (booking form, payment gateway, WhatsApp button, blog), the platform (Shopify, WordPress, Next.js), and who writes the content and supplies photos. Then list what is not included. If you have a requirements document, attach it as a schedule. Our guide to writing a requirements document shows how.

For the Lucknow brand: Shopify theme customised to brand colours, up to 40 products loaded, Razorpay and COD set up, Shiprocket connected, five policy pages, two rounds of design revisions.

2. Milestones and payments#

Tie each payment to something you can see. A pattern we think is fair for a small project:

MilestoneShare of feeWhat you check before paying
Signing30% to 40%Signed agreement, kickoff call booked
Design approved20% to 30%Home and product page designs signed off in writing
Staging site ready20% to 30%Working site on a test link with your content
Launch and acceptance10% to 20%Live site passes the acceptance checklist

These shares are our suggestion, not a market rule. Also state whether fees include GST: write "₹1,20,000 plus 18% GST" so there is no argument later. Our post on GST on website development explains the invoice side.

3. Change requests#

New ideas arrive mid-project. The clause should say that anything outside the scope is a change request, the agency quotes its cost and time impact in writing, and nothing is built until you approve that quote.

4. Timelines, including your delays#

Put dates against each milestone. Also say what happens when you are late with content or feedback: the deadline moves by the same number of days. A developer in another r/LegalAdviceIndia thread had a signed contract that "has no arbitration or jurisdiction clause and no delivery deadline", and the client later complained that a site took too long. Dates on paper end that argument.

5. IP and code ownership#

The clause should transfer to you, on full payment, all rights in the custom code, designs and content made for you, perpetual and worldwide, with the right to modify. Third-party items such as Shopify themes, plugins and fonts stay under their own licences, and the agreement should list them and confirm the licences are in your name. If the agency reuses its own starter code, you get a permanent licence to use it on your site.

Ownership passing "on full payment" is fair. Ownership never passing is not.

6. Domain, hosting and accounts in your name#

The domain, hosting, Shopify store, Google Analytics, Search Console, email and code repository should all be registered to your business, with the agency added as a user. On r/webdev, a developer explained why they set clients up this way: "I want them to be ok if I get hit by a bus tomorrow." Our checklist for hiring a web agency covers the questions to ask; the agreement makes the answers binding.

7. Acceptance testing#

Define "done". You get a fixed window (say 7 to 10 working days) to test the staging site against an agreed checklist and report defects in writing. Silence after the window can count as acceptance, if the window is realistic.

8. Warranty and bug-fix period#

After launch, the agency fixes defects in its own work free for a set period; we think 30 to 90 days is reasonable for a small site. It covers bugs, not new features or damage from someone else's edits.

9. Maintenance#

Put ongoing maintenance in a separate clause or agreement with its own monthly fee, hours and response times, so nobody argues about what is "included forever". Our guide to website maintenance cost in India covers what that should cost.

10. Confidentiality and data#

Both sides keep each other's information private. If the site collects customer names, phone numbers or payments, add a short clause that the agency only uses that data to do the work and keeps it secure. Our privacy policy guide explains why this matters for Indian websites.

11. Termination and handover#

Either side can end the agreement with written notice. You pay for work done so far, and the agency hands over everything you paid for within a fixed number of days: code, design files, logins and short setup notes.

12. Governing law, disputes and stamp duty#

Choose Indian law and name the city whose courts have jurisdiction, ideally yours. For small projects, a 30-day attempt to settle by discussion before court is often more useful than an expensive arbitration clause.

Stamp duty is the part most small businesses skip. Agreements are meant to be stamped under the law of the state where they are signed, and for a simple service agreement the duty is usually modest. In Maharashtra, for example, the duty on an agreement "not otherwise provided for" went up from ₹100 to ₹500 in October 2024. Other states set their own amounts, so check yours.

You can buy e-stamp paper from authorised centres, and in several states online, through StockHolding's e-stamping service. Stamp it before or at signing. In December 2023, a seven-judge bench of the Supreme Court held that an unstamped agreement is not void but is inadmissible as evidence until the duty and any penalty are paid. It still binds both sides, but you pay extra to rely on it in court.

Red-flag clauses#

  • "All IP remains with the developer" with only a licence to you, or no IP clause at all.
  • The domain or hosting registered to the agency, or "we will transfer it on request" with no deadline.
  • 100% advance for anything beyond a very small job.
  • A fee to release your code or logins after you have paid in full.
  • No acceptance or warranty period, so the last payment is due the day they say it is done.
  • Lock-in maintenance, where you must keep paying the agency for hosting or updates for years to keep the site.
  • An IP transfer with no period or territory, given the Section 19 defaults.

A plain-language clause checklist#

This is not legal text. Use it to check a draft from an agency, or as a brief for your lawyer.

WEBSITE DEVELOPMENT AGREEMENT: CLAUSE CHECKLIST

[ ] Parties: legal names, addresses, GSTINs, signatories
[ ] Scope: pages, features, platform, revisions, content owner
[ ] Exclusions: what is NOT included, in writing
[ ] Requirements document attached as a schedule
[ ] Fee: amount, and "plus 18% GST" or "including GST"
[ ] Milestones: each payment tied to a visible deliverable
[ ] Change requests: written quote and approval before work
[ ] Timeline: dates per milestone; dates move if I am late
[ ] IP: all custom work assigned to me on full payment,
    perpetual, worldwide, with the right to modify
[ ] Third-party themes, plugins, fonts listed; licences in my name
[ ] Domain, hosting, store, analytics, email, repo in my name;
    agency added as a user
[ ] Acceptance: test window in working days, written defect list
[ ] Warranty: free bug fixes for __ days after launch
[ ] Maintenance: separate fee, hours, response time
[ ] Confidentiality and customer data handling
[ ] Termination: notice period, pay for work done
[ ] Handover: code, files, logins, setup notes within __ days
[ ] Governing law India; courts at [my city]
[ ] Stamped under my state's stamp law before signing
[ ] Reviewed by a lawyer

Common questions#

Is there a standard website development agreement format in India?#

No official format exists. Template sites sell India-specific versions that are a fine starting point, but edit them to match your scope, payments and ownership rather than signing a generic sample.

Is a website development agreement signed on email or WhatsApp valid?#

A contract can be formed without paper, and India recognises electronic signatures. But stamp duty may still apply, and an unstamped document is harder to rely on in court. For anything above a small amount, sign and stamp it.

Who owns the website code if there is no agreement?#

Usually the developer, as its author and not your employee. You may have an implied right to use the site, but changing or moving it can become a fight.

How much stamp duty is payable on a website development agreement?#

It depends on your state. Simple agreements often attract a few hundred rupees, for example ₹500 in Maharashtra since October 2024. Check your state's current rate or ask your lawyer.

The short version#

A good website development agreement in India fixes scope, milestone payments, change requests and dates, transfers all rights in the custom work to you on payment (perpetual and worldwide), keeps every account in your name, and sets out acceptance testing, a bug-fix period and handover. Stamp it, have a lawyer read it, and refuse any clause that leaves the developer holding your domain, code or logins. Our packages are on the pricing page.

Planning a website and want the scope, milestones and ownership written down before any money moves? Book a free strategy call and we will go through it with you.

Work with Mvpedge

Planning a launch? Let's map it out together.

A free 30-minute call. You leave with a clear first step, whether or not we work together.

All articles