Scope creep: how Indian freelancers stop doing extra work for free
A step-by-step system for Indian freelancers: write a clear scope, cap revisions, answer WhatsApp requests with a price, and bill extra work through change orders.
Prakash Mummidisetty · · 7 min read
"Can you also make a quick Instagram version?" "One small change on the homepage, please." "Just add Hindi as well, na?"
Each message is small. Together they are how a ₹40,000 project quietly turns into ₹40,000 for twice the work. That is scope creep: the work keeps growing after the price was agreed, and nobody writes down that it grew.
For freelancers in India it is harder to spot, because most requests arrive on WhatsApp, between voice notes and "thanks ji", where saying "that's extra" feels rude. This guide gives you a system for handling it: what to write before the work starts, what to say when a request lands, and how to turn extra work into paid work without losing the client.
Why scope creep happens (it's usually not a bad client)
Most scope creep is not a client trying to cheat you. It usually comes from one of these:
- A vague quote. "Website design – ₹40,000" doesn't say how many pages, how many rounds of changes, or who writes the text. When the quote is vague, each side fills the gaps with whatever suits them.
- No limit on revisions. If you never said "two rounds", then a fourth round isn't extra. It just feels like part of the job.
- Approval that lives in a chat. "Ok done 👍" on WhatsApp, three weeks and 400 messages ago, is hard to point to later.
- Saying yes by reflex. You want the relationship, so you absorb a "small" task. The client learns that small tasks are free.
Every one of these is fixed before the project starts, not in the middle of an argument.
Step 1: Write a scope your client can't misread
A good scope lists three things: what you will deliver, how many changes are included, and what is not included.
Deliverables, by name and count. Not "social media creatives" but "12 static Instagram posts (1080×1350) and 4 story versions, for the March campaign". Not "website" but "5 pages: Home, About, Services, Gallery, Contact".
Revision limits, with a definition. "Two rounds of revisions per deliverable. A round is one combined list of changes, sent together." Then add a price: "Extra rounds: ₹1,500 each." Writing the price down now makes the later conversation a reminder, not a negotiation.
A "Not included" list. This is the part most quotes leave out, and it does the most work. For a website, it might say:
- Copywriting (the client supplies the text)
- Logo or brand identity
- Stock photos and paid plugins
- Changes after handover, beyond 15 days of bug fixes
For a video editor: no colour grading beyond basic correction, no music licensing, no extra aspect ratios.
Payment terms. For example: 50% advance, 50% before final files. If you are GST-registered, show the GST separately. (Registration is required once a service provider's aggregate turnover crosses ₹20 lakh in a financial year, or ₹10 lakh in some special-category states. See Section 22 of the CGST Act or check with your CA.)
Step 2: Get a real "yes" on that scope
A quote the client never clearly approved is a draft. Before you start, get an approval you can find again: the date, who approved it, and the exact version they saw.
If you send the quote as a PDF on WhatsApp, ask for a written reply such as "Approved, please go ahead." Then save that message and the PDF together. If the scope changes before approval, send a new version and get it approved again. Don't edit the old one.
That record matters later. If a payment dispute ever reaches the MSME delayed-payment process, the buyer's acceptance of your service is what its timelines count from. Under the MSMED Act, payment is due by the agreed date and within 45 days of acceptance at most, for Udyam-registered micro and small enterprises. See the Ministry of MSME's delayed-payment page.
Step 3: When a new request lands, check it against the scope
When a request comes in, don't answer from memory. Open the approved scope and put the request in one of three buckets:
- Inside scope. It's a listed deliverable and there are revisions left. Do it, and note that a round was used: "Done. That was round 2 of 2 for the homepage."
- Extra revision. It's a listed deliverable, but the included rounds are used up. It's billable at the per-round price you already set.
- New work. It isn't on the list, or it's on the "Not included" list. It needs a price and, often, more time.
Use a simple rule so you don't argue with yourself each time: anything beyond about 30 minutes of work that isn't in the scope gets priced.
Step 4: Say "yes, and here's the cost"
You don't need to refuse. You need to turn the request into a decision with a price. A message that works on WhatsApp:
"Happy to do the Instagram version! It isn't part of the approved scope (that covered the website banners), so it would be ₹2,500 and one extra day. Shall I go ahead?"
For an extra round of revisions:
"Sure. We've used both included rounds on the logo, so this would be round 3 at ₹1,500, as per the quote. Want me to start?"
This is polite, it agrees to do the work, and the client decides. Some clients say yes and pay. Others say "skip it then", and you've got your evening back. Both are better than doing it for free and feeling resentful.
If a client pushes back on the price, offer a swap: "I can do this in place of the fourth carousel, so the total stays the same." The scope stays fair and nobody loses face.
Step 5: Put the extra work in writing as a change order
A change order is a short written agreement for added work. It covers:
- What is being added or changed
- The added fee (fixed, or hours × your rate)
- The new delivery date, if the timeline moves
- The client's approval, before you start
Then bill it as its own line on the invoice ("Instagram version of banners – ₹2,500"), not folded into one bigger total. A separate line shows the client exactly what they asked for, and it is much harder to dispute than a total that went up without explanation.
Doing this without a pile of PDFs and screenshots
You can run all of this with documents, a spreadsheet and a WhatsApp folder. It works, but it's easy to slip on a busy week.
This is the workflow Scopeflow was built for. You write a quote with deliverables, revision limits and a "Not included" list. The client approves it through a private link, with no account needed, and that approved version is locked. When a request comes in, from the link or one you log yourself after a WhatsApp chat or a call, it's checked against the approved scope, and the revisions used and left are counted. Extra work becomes a priced change order (fixed or hourly) that the client approves before you start. When it's time to bill, you can raise a GST invoice with a UPI QR code and track what's been paid.
It's in beta, and the Free plan covers 2 active projects and 5 clients. See pricing or start free; no card needed.
A quick checklist for your next project
- Deliverables listed by name and count
- Revision rounds stated, with a price for extra rounds
- A "Not included" list
- Payment terms, and GST shown separately if you're registered
- A written approval of the exact version
- Each new request checked against the scope before you reply
- Extra work priced, approved and invoiced as its own line
Scope creep rarely comes from one big ask. It comes from many small ones that nobody wrote down. Write things down before the project starts, and saying "that's extra" becomes simple.