Software studios sell hours and ship outcomes. The middle is where it breaks. Discovery runs long. Specs stay vague. Delivery drags. Retainers get consumed by free work.
The studios that keep margin do not write better code than the ones that lose it. They run cleaner operations.
Discovery as a Paid Product
Free discovery is a tax you pay to close. Paid discovery is a product that pays you whether you win the build or not.
Price discovery at a flat fee. Deliver a written scope, a technical plan, and a fixed-price estimate for the build phase. Clients who refuse to pay for discovery rarely close the build. Those who pay are already committed.
Run discovery in 10 calendar days. Day one is kickoff. Middle days are interviews and data audits. Final day is the written deliverable. If it takes longer, the scope grows or the price does.
The discovery deliverable becomes the contract attachment for the build. No re-negotiation. No drift.
The Build Plan
A good build plan breaks work into two-week cycles. Each cycle has a goal, a demo, and an invoice.
Load each cycle with a fixed number of story points. If scope grows mid-cycle, it moves to the next cycle or triggers a change order. Your team is not absorbing it silently.
Track velocity per cycle. Over several projects you know your studio ships X points per engineer per cycle. This is your pricing baseline. Under it, you bleed. Over it, you scale.
Every cycle ends with a demo. Even if the feature is half-built. Clients who see progress trust the studio. Clients who wait six weeks for a launch do not.
Client Communication
Silence kills trust. Over-communication kills margin. The middle is a rhythm.
Send a Monday plan. What the team will ship this cycle, what is blocked, what needs the client. Send a Friday recap. What shipped, what moved, what the demo link shows.
Block ad-hoc Slack questions with a daily async standup channel. Clients write one message a day in a shared thread. Your team reads once, responds once. No pinging the lead engineer at midnight.
When a client delays a decision, the cycle stalls. Your system should log the delay, pause the clock, and surface it in the invoice.
Delivery Quality
Quality is a checklist, not a vibe.
Every pull request ships against a review checklist. Tests written. Types clean. Migrations reversible. No direct-to-main merges. These rules are enforced by tooling, not by hope.
Run a release checklist before every production deploy. Backup verified. Rollback plan documented. Monitoring in place. Stakeholders notified. If any box is unchecked, the deploy does not ship.
Every project has a runbook. What to do when the site goes down. Who is on-call. How to escalate. The runbook is written during the build, not after an outage.
The Handoff
Handoff is a promise you keep. A messy handoff damages the next retainer conversation.
Deliver a handoff pack with every project. Repository access, deploy guide, environment variables, third-party accounts, test suite instructions, architecture diagram. Record a walkthrough video in plain language for the client's internal team.
The final invoice goes out on handoff day. Not a week later. Momentum matters.
Offer a 30-day post-handoff support window included in the build price. This is your bridge to the retainer conversation.
The Retainer
Retainers are how studios compound. They are also how studios lose money if the scope is loose.
Define the retainer in hours per month at a fixed rate. Define what counts. Define what does not. Feature work counts. Emergency outages count. "Can you hop on a call" does not count unless it is scheduled.
Track hours against the retainer in real time. The client sees the dashboard. Your team sees the dashboard. When a month runs over, a pre-agreed overage rate kicks in. No surprise invoices.
Kill retainers that do not fit. A retainer that is 20 percent strategic and 80 percent emergency patching is a bad product.
Dashboards and Leading Indicators
The principal should open one dashboard and see the studio. Active projects, cycle status, hours against retainer, invoices outstanding, pipeline value. Refresh daily.
Drive three numbers. Discovery-to-build conversion rate. Cycle velocity. Retainer retention rate.