Most evaluations of a development partner focus on the project: a timeline, a price, a portfolio. That is the wrong starting unit. A web product keeps running after the project ends — it needs hosting, monitoring, fixes, new features, and someone who understands why it was built the way it was. The right partner should fit the product you need to operate, not only the project you need to launch.
Start with the product, not the agency presentation
A polished pitch deck says very little about whether a provider can operate what they build. Before comparing case studies or design portfolios, describe your product in plain terms: who uses it, what it needs to do reliably, and what happens if a core workflow breaks at 2am. A partner worth evaluating will ask about these things unprompted, before talking about their own process.
Clarify whether you need delivery capacity or product ownership
Some engagements need extra hands to execute a well-defined plan. Others need a partner who takes real technical ownership — making architecture decisions, flagging risk, and being accountable for the system as a whole, not just the tickets they were assigned. Neither model is wrong, but mismatching them is a common source of friction: a delivery-capacity provider left to make product decisions, or an ownership-minded partner reduced to executing someone else's spec without input.
Ask how scope, assumptions, changes, and acceptance are documented
A written scope is not bureaucracy; it is the only reliable way to tell later whether something was missed, changed, or simply never agreed. Ask what happens when a requirement turns out to be bigger than expected, or when you want to add something mid-project. A partner who can describe a clear, specific change process is telling you how disagreements will actually get resolved once real money and deadlines are involved.
Confirm who owns the code, infrastructure, accounts, and technical decisions
Ownership should be unambiguous and should transfer to you, in full, as part of payment — the code, the domain, the hosting accounts, the third-party service logins. If a provider is vague about this, or if access to any of it stays exclusively in their hands, you do not fully own your own product, regardless of what the contract says about intellectual property. This is worth confirming directly in a web development engagement, since it defines what "yours" actually means once the relationship ends.
Evaluate front-end, back-end, integrations, QA, and infrastructure as one system
A product is not a stack of independent parts handed to separate specialists with no shared view of the whole. Ask how a provider coordinates front-end work with the back-end logic it depends on, how third-party integrations are tested alongside the rest of the system, and who is responsible when a problem sits at the boundary between two areas. Providers who can only describe one layer well are telling you where the coordination gaps are likely to appear.
Look for communication practices that make progress and risk visible
The difference between a smooth engagement and a stressful one is rarely technical skill alone — it is whether problems surface early or only at the deadline. Ask how progress is reported, how often, and what a status update looks like when something is behind schedule or more complex than expected. A partner who can only describe good news is not describing a real process.
Understand what happens after launch
Launch is the beginning of a product's operational life, not the end of the relationship. Ask directly what ongoing support looks like: what is covered, how issues are reported and prioritized, and what it costs. A provider with no clear answer here is telling you that support is an afterthought, which usually means it becomes your problem the first time something breaks after they consider the project closed.
Vague or evasive answers about who owns code, accounts, and infrastructure after payment
No willingness to give you direct access to hosting, deployment, or monitoring tools
Unclear dependencies on a single person, undocumented process, or unnamed third-party tools
Claims about experience, team size, or past results that cannot be verified or explained in detail
No written scope, or a scope so broad it cannot meaningfully define what is or is not included
No credible answer to "what happens after launch" beyond a generic mention of support
Who owns the code, infrastructure accounts, and domain once the project is delivered?
How is project scope documented, and how are changes to it handled?
What happens if requirements change mid-project — is there a defined process?
Can they explain front-end, back-end, and infrastructure as one coherent system?
Who is responsible for testing, and what does "done" mean before release?
What infrastructure and monitoring practices do they use, and can you access them directly?
How are progress and risk communicated during delivery — regularly, or only at the end?
Is post-launch support a clearly scoped service, or an afterthought?
Can they describe a past technical decision and the tradeoff behind it, in plain language?
How do they handle a missed deadline or an unexpected technical obstacle?
What access and documentation do you receive at handover?
Are their claims about capability and process verifiable, or only asserted?