forumNew topic

How do you write source code delivery into a web development contract?

ZZafer P***MemberCommunity member
Joined
Dec 2024
Message
411
#1

We are an industrial kitchen equipment manufacturer with 15 employees. We agreed with a digital agency for 75,000 TL to revamp our corporate website and B2B product catalog. The designs were approved, and development has started.

While reviewing the draft contract with our lawyer I noticed there is no explicit clause regarding the ownership and delivery of the source code. When I asked the agency rep how we would receive the code during delivery, he gave an evasive answer along the lines of "Your site will be hosted securely on our servers and once it goes live, we'll give you credentials for an advanced admin panel."

I'm worried that if we stop working with this agency down the road or want to switch to another team we'll be forced to rebuild the site from scratch. How exactly should I write the source code delivery into the contract, and what should I technically request from the agency once the project is finished?

PPınar U***MemberCommunity member
Joined
Mar 2023
Message
188
Most Helpful#2

Short answer: You need an explicit clause added to the contract stating that upon completion of the final milestone payment, all source code, database schemas, design files, and third-party integration docs belonging to the site will be unconditionally transferred to the client. It should clearly state that the work will not be considered complete without the code delivery and that no server dependency will be created.

The core clause you need in your contract should follow this framework: "The Contractor is obligated to deliver all source code (HTML, CSS, JavaScript, backend code, templates), database backups, and media assets belonging to the website and catalog subject to this agreement, fully intact and in working condition, to a private Git repository (or encrypted digital medium) designated by the Client, no later than 5 business days following the final invoice payment."

Simply asking for a zip file at handoff might not cut it. The agency's delivery package should include: 1) A clean Git repository hosting the project's source code, 2) A database dump (SQL dump), 3) A brief setup guide (README) explaining how to spin up the site from scratch on an independent server, 4) A breakdown of licenses for any third-party libraries used, if applicable.

If the agency uses an in-house, proprietary, closed-source content management system (CMS), they may be reluctant to hand over the source code. In that case, clarify from day one whether the system is built on an open-source CMS or custom proprietary software. If it's an agency-owned stack, you won't be able to migrate hosting later and you'll be stuck with them for every minor revision.

SSena Y***Member
Job title
Front office accounting
Sector
Healthcare services
Organization type
chain store
Joined
May 2023
Message
205
#3

Just asking for "the code" isn't enough; get "uncompiled" (unminified, raw) source code, build scripts, and an environment variables template (a sample .env file) written into the deliverable list. If they hand you minified production code, no other dev will ever make sense of it.

EEmre D***Member
Job title
Marketing manager
Sector
Real estate
Organization type
workshop
Joined
Jan 2025
Message
340
#4

When having it drafted into the contract, definitely do not skip these three items: 1) Transfer of intellectual property rights to the client upon final payment, 2) Mandatory delivery of setup and build instructions, 3) Acceptance criteria requiring the code to be fully functional on an independent server outside the agency's infrastructure.

ZZerrin U***Member
Job title
Logistics planning
Sector
Construction
Organization type
regional distributor
Joined
Aug 2022
Message
307
#5

Set up a GitHub or GitLab account in your company's name right now while it's still in development. Tell the agency, "You will commit code directly to our company repo." It's far less of a headache than chasing down files after the project wraps up.

SSerdar K***Veteran
Job title
Growth marketing
Joined
May 2023
Message
264
#6

75,000 TL isn't a bad budget for a corporate catalog, but agencies love vendor-locking clients into their own custom panels. If they claim "we can't hand over the code, it's a trade secret," you can bet it's not custom software at all—they just tweaked a pre-made theme downloaded off the web and resold it.

NNazlı A***MemberCommunity member
Joined
Oct 2025
Message
58
#7

we fell into this trap two years ago. the agency went under, they didn't pay their server bill so the site went down and we didn't have a single line of code to show for it. we had to build the whole thing from scratch. do not compromise on this, the code belongs to you.

EEsra K***MemberCommunity member
Joined
Feb 2023
Message
3
#8

"it'll stay on our servers and we'll give you a panel" is a massive red flag. don't sign off or release the final installment until you spin it up and test it on your own server.

YYavuz B***MemberCommunity member
Joined
Apr 2022
Message
203
#9

Speaking as a developer myself: even when clients get the source code they usually don't know how to manage a server, so agencies offer hosting by default. There isn't necessarily bad intent there. But an honest agency will say "Of course, we'll hand over a Git repo or a zip archive once the project wraps up" the second you ask. Evasive answers mean either technical incompetence or an intentional attempt at vendor lock-in.

RRecep K***MemberCommunity member
Joined
Apr 2022
Message
6
#10

Tie the final milestone payment directly to the full delivery of the source code, and write that condition explicitly into the contract.

BBora Z***MemberCommunity member
Joined
Mar 2024
Message
55
#11

Exactly like that. If scope grows, either time or budget must grow. There is no third option.

SSerkan A***MemberCommunity member
Joined
Jun 2024
Message
350
#12

We experienced almost the exact same thing last year. When we decide without measuring, we always end up in the same place.

Proven by experience.

KKadir G***VeteranCommunity member
Joined
Feb 2023
Message
14
#13

I have no experience with source code delivery, so I'm asking. The harder it is to reverse a decision, the slower you should make it.

Solutions that work at a small scale collapse when you grow; I learned this late. Hope this helps.

AAhmet Ç***Member
Job title
Warehouse Manager
Sector
Jewelry
Organization type
workshop
Joined
Jan 2026
Message
399
#14

there is somethhing to watch out for. the cheapest quote is usually the least thought-out one.

everyone rushing into source code delivery gets stuck at the same point. btw im also curious if anyone does it differently.

PPerihan G***Expert
Job title
Administrative manager
Sector
Logistics
Organization type
20-person company
Joined
Feb 2026
Message
283
#15

Correct.

MMerve Ç***Member
Job title
Technical service technician
Sector
Automotive aftermarket
Organization type
family business
Joined
Nov 2024
Message
27
#16

How did you solve this? When you try to change everything at once, nothing settles.

If code ownership isn't in the contract, you have no bargaining power when leaving. That's all, sorry if I went on too long.

OOnur Y***Member
Job title
Social media manager
Sector
Leather
Organization type
regional distributor
Joined
Aug 2025
Message
120
#17

I disagree with you on this point. Don't hesitate to ask; those who don't ask always pay more.

That's all, sorry if I went on too long.

ZZeynep O***New member
Job title
Business Owner
Sector
Furniture manufacturing
Organization type
family business
Joined
May 2026
Message
1
#18

Exactly, and not many people know this. Access credentials should be opened in the company's name, not personal accounts.

Correct me if I'm wrong.

ZZerrin G***MemberCommunity member
Joined
Jul 2023
Message
260
#19

Exactly like that. Any unwritten clause becomes a point of disagreement later, as both sides remember it differently.

I'm also curious if anyone does it differently.

VVeli T***MemberCommunity member
Joined
Oct 2023
Message
152
#20

If you're going this route, sort this out first. Ask who prepared the quote and who will actually do the work.

Weekly written progress reports are much more useful than asking for dates. Correct me if I'm wrong.

Reply