Hiring

Six clauses to look for in a software development contract

Each of these exists because a founder told me, in detail, how they had been burned. Read them before you sign with anyone — including me. The useful test is not whether an agency says these things on a call. It is whether they will put them in the contract when you ask.

By Haidar Mustafa··9 min read

Six things belong in writing before any money moves: what happens when a deadline slips, who owns the code and from when, how you leave, how you can see progress, what the software costs to run after launch, and what support you get. An agency that will not write these down is telling you something.

These six are the guarantees in every Foundreco contract, so treat this as a partial account — I am describing terms I offer. That is exactly why they are useful as a checklist: you can take them to any agency and see what happens.

1. What happens when a deadline slips

"They quoted 8 weeks. It took 6 months, and somehow every delay was my fault."

Almost every project overruns. The question is who carries the cost when it does. Look for a milestone schedule with a written date and a written definition of done for each one, plus a stated consequence when a date is missed.

In Foundreco contracts that consequence is that the invoice for that milestone drops 20% automatically, with one exception: delays caused by waiting on you. That exception should be written plainly rather than buried, because an exception you cannot find is the whole clause.

What to ask: "What happens if you miss a milestone date?" A real answer is a number. A vague answer about communication is a no.

2. Who owns the code, and from when

"My last agency held the code hostage until I paid an exit invoice."

"You own the IP" is nearly meaningless on its own, because it usually means ownership transfers on final payment. Until then the code sits in their repository, under their accounts, and you have no copy.

What you want is code committed to your repository, under your accounts, from the first commit. Not transferred at the end. If the relationship goes wrong in week three, the difference between those two arrangements is the entire project.

What to ask: "Whose GitHub account is the repository in on day one?"

3. How you leave

The exit terms tell you more about an agency than the sales deck does. Three things matter: whether there is a notice period, whether there is an exit fee, and whether you get a handover document.

Payment structure decides most of this. If you pay per delivered milestone, there is rarely anything to refund and nothing to hold hostage — you can stop at any milestone with everything built so far. If you pay 50% up front, you are arguing about a refund instead.

What to ask: "If I end this after milestone two, what do I have and what do I owe?"

4. How you can see progress without asking

"I paid $15K and then heard nothing for three weeks. I was chasing my own project."

Status updates that only exist when you ask for them are not status updates. Look for something you can check yourself — a dashboard showing what is done, what is next and how much budget has burned — plus a recorded demo of working software on a fixed cadence.

A weekly demo of something running is very hard to fake. A weekly written update is not. If you are working across a large timezone gap, this is the clause that stops the gap becoming a place for problems to hide.

What to ask: "What can I look at on a Tuesday afternoon without messaging anyone?"

5. What it costs to run after launch

"My app went live and then the bills started."

Software has a monthly bill and most founders discover theirs after launch. Hosting, database, authentication, email, storage, store fees, and AI usage if the product has AI in it — that last one is the one that surprises people, because it scales with how much the product gets used.

Ask for a per-line estimate with the assumptions written next to each item, before you sign. It is an estimate, so it can be wrong, but a genuine attempt looks completely different from a range wide enough to be meaningless.

What to ask: "What will this cost me per month at 100 users, and at 1,000?"

6. What support you get, and what happens when it ends

Two traps sit here in opposite directions. One is no support at all, so the first production bug becomes a new quote. The other is a mandatory retainer bolted on before anyone knows whether you need it.

What you want is a defined period of care included — thirty days in Foundreco contracts — and then nothing automatic. No auto-renewing retainer, no default monthly charge. If you want ongoing support you agree it afterwards, having seen the actual response times rather than the promised ones.

What to ask: "What happens on day 31?"

The one question that covers all six

Ask for the contract before you commit to anything, and read it. Not a proposal, not a statement of work — the actual agreement, with the NDA and the signed scope.

What you learn is rarely in the clauses themselves. It is in how quickly it arrives, whether the terms match what was said on the call, and whether anything you were promised turns out to be absent. A guarantee that only exists on a marketing page is not a guarantee.

What this looks like in practice

Late milestone = 20% off that invoice Your repo, your accounts, from commit one Leave at any milestone, keep everything Live cockpit + weekly demo video Running costs written down before you sign 30 days of care, then nothing automatic

All six are numbered clauses in the Foundreco contract rather than lines on a page, and the full text with the complaint behind each one is on the guarantees page. Take the list to whoever else you are talking to as well — if it makes them uncomfortable, that was worth finding out before the money moved.

Questions founders ask before signing

Is it reasonable to ask for the contract before committing?
Completely, and the reaction is informative. You are about to hand someone a five-figure sum and a business idea. Asking to read the agreement first is the minimum, not an imposition, and any agency that treats it as friction has told you something useful for free.
What if an agency refuses to put a deadline penalty in writing?
That is a legitimate position for some kinds of work, particularly open-ended research where nobody can scope a date honestly. What is not legitimate is quoting a firm date verbally and then refusing to write it down. Ask which of the two is happening.
Should I get a lawyer to read it?
For a five-figure build, an hour of a lawyer's time is cheap insurance and I would not argue against it. What matters more is that you can understand the terms yourself. A contract you need a lawyer to decode is a contract designed to be decoded.
Are fixed-price contracts actually safer than hourly?
For a defined scope, yes, because the estimation risk sits with the agency instead of with you. The trade-off is that scope changes have to be quoted separately, which feels slower. Hourly billing removes that friction by removing your cost ceiling, which is a worse deal disguised as flexibility.
What about an NDA?
Ask, and most people will sign one. Keep it in proportion though — ideas are rarely the valuable part, execution is, and a founder who will not describe the problem without three signatures usually struggles to get useful advice from anyone.
How do I check any of this is real before I sign?
Ask for the contract, ask to see a previous handover document with the client details removed, and ask to speak to a past client. Foundreco publishes fifteen case studies with numbers supplied by the clients themselves, which is a starting point rather than a substitute for asking.
Your Turn

Ask for the contract before any money moves

Every Foundreco engagement puts these six in writing as numbered clauses. Ask and you get a copy to read, guarantees included, before you commit to anything.