// COST_OF_BUILD

I Built These Four Products. Here's What a Traditional Agency Would Have Charged.

A grounded estimate of headcount, timelines, and fully-loaded costs to ship four real production systems through a conventional agile dev shop. Counting only the product and engineering crew — no sales, no marketing, no executive overhead.

Scott Pierce May 2026 14 min read

I have a habit of building things and not selling them. Four of those things are in production right now: a consumer AI radio station, a WordPress hosting control plane, a MySQL wire-protocol emulator written in Rust, and a healthcare data platform. Every one of them is the kind of system a traditional digital agency would be happy to quote.

So let's quote them.

This article walks through what each of these would have cost to build through a conventional agile dev shop, idea to production. I'm using current published agency rates, standard team compositions, and conservative timelines. I'm only counting the people who actually touch the product — product managers, designers, engineers, QA, and DevOps. No sales org. No marketing budget. No executive sponsors as line items. No "Director of Customer Success." Just the crew that ships.

The number at the bottom of the page is roughly $13 million.

The gap between what software costs and what people remember it costs is enormous. The traditional agile delivery model — discovery, sprints, retros, hardening, handoff — is genuinely expensive even when it goes well. The estimates below are not worst-case. They are the middle of the road.

I want skeptical readers to be able to audit every number, so the rate basis is on the table.

For agency labor, I'm using $175/hour as the blended team rate — the midpoint of FullStack Labs' published 2025 range for U.S. mid-market firms ($120–$250/hr). Big-business-class shops charge $250–$350/hr. Enterprise-class firms charge $400 and up, with some quoting as high as $900/hr.[1] $175 is the polite end of the range a serious mid-market shop would actually invoice. Fully loaded, this maps to the $180K–$250K annual band for U.S. senior developers reported in industry budget data.[3]

One full-time-equivalent month is 160 billable hours, so:

rate_basis.txt
$ echo "1 FTE-month = 160 hrs * $175/hr"
= $28,000 / FTE-month

$ echo "Rust premium (specialty talent) = +40%"
= $40,000 / FTE-month

$ echo "Healthcare/compliance burden = +10%"
= $30,000 / FTE-month

The Rust premium reflects the small pool of senior engineers fluent in low-level systems work, async Rust, and database internals. Talent of that caliber commands $200–$300/hr.[1] The healthcare premium reflects the time tax of HIPAA-adjacent work — audit trails, access reviews, vendor security questionnaires, and the QA cycles those require.

The role mix follows the standard agile triad — Product Manager, Designer, Tech Lead — extended with the engineers, QA, and DevOps necessary to actually ship.[4] I'm breaking each engagement into the three phases a traditional shop would actually invoice:

Discovery & Inception Build (Sprints) Hardening & Handoff

Skipping any of these is what people mean when they say "we got burned by an agency." The phases are real work. They are not optional.

What it is: An AI-powered radio station at justright.fm. A 16×16 matrix lets users pick an activity (sleep → rave) and a texture (silence → dubstep), and the system either plays a matching track or generates a new one through MiniMax. There's a real-time WebSocket layer for generation progress, a queue worker for long-running music synthesis, lazy track streaming, AI image generation for cover art, AI lyrics through Workers AI, an album/artist/voice catalog, custom prompt stations, a database statistics page, and a full single-page-app frontend with a global audio player.

What's under the hood: Cloudflare Workers, Hono, D1, R2, Durable Objects, Cloudflare Queues. Roughly 30,000 lines of TypeScript across 69 source files and 39 SQL migrations.

What an agency would scope:

justright_fm__sow.txt
# DISCOVERY (6 weeks)
1 Product Manager x 1.5 mo
1 Tech Lead x 1.5 mo
1 Product Designer x 1.5 mo
Subtotal: 3 FTE * 1.5 mo * $28K = $126,000

# BUILD (7.5 months)
1 Product Manager
1 Tech Lead
2 Senior Frontend (matrix UI, audio player, SPA)
2 Senior Backend (Workers, AI integrations, queues)
1 Product Designer
0.5 QA
Subtotal: 7.5 FTE * 7.5 mo * $28K = $1,575,000

# HARDENING & LAUNCH (6 weeks)
Subtotal: 5 FTE * 1.5 mo * $28K = $210,000

TOTAL: $1,911,000

An agency that quoted under $1.5M for this scope would either be hiding cost in change orders or planning to ship something that resembles the brief from a distance.

What it is: A WordPress hosting control plane. Operators define a site's WordPress version, plugins, themes, custom Dockerfile, and YMIR infrastructure config; the platform versions every change, stages a workspace bundle to S3, and orchestrates multi-environment deploys to AWS Lambda + CloudFront + Aurora through long-running Temporal workflows. There's a shared ECR artifact registry for plugins, themes, and core, an admin surface for resource groups and database users, and a passwordless auth layer.

What's under the hood: React Router 7, Prisma, PostgreSQL, Temporal, a Python worker that drives the YMIR CLI in a Docker sandbox, S3, ECR, AWS Secrets Manager. Roughly 129,000 lines of TypeScript across 737 files plus 78,000 lines of Python across 141 files. 63 route files in the web app alone.

This is enterprise platform software. Pantheon and WP Engine spent eight figures building the equivalent.

trifecta_host__sow.txt
# DISCOVERY (8 weeks)
1 Product Manager
1 Technical Architect
1 Engineering Manager
1 Product Designer
Subtotal: 4 FTE * 2 mo * $28K = $224,000

# BUILD (16 months)
1 Product Manager
1 Engineering Manager
1 Technical Architect
3 Senior Backend (Temporal flows, Python worker, infra)
2 Senior Full-Stack (React Router, Prisma, admin UI)
1 Senior Cloud / DevOps (AWS, ECR, Lambda, Aurora)
1 Security Engineer (auth, secrets, multi-tenant boundary)
1 QA
1 Product Designer
Subtotal: 12 FTE * 16 mo * $28K = $5,376,000

# HARDENING & PRODUCTION (8 weeks)
Subtotal: 8 FTE * 2 mo * $28K = $448,000

TOTAL: $6,048,000

Eighteen months. Twelve people. Six million dollars, conservatively. And that's before the AWS bill, the Temporal Cloud bill, or the cost of the WordPress plugin licenses being staged into ECR. Industry benchmarks for enterprise-grade SaaS platforms with compliance requirements run $300K–$1M+ at the low end and exceed it for anything multi-tenant with real infrastructure;[5] trifecta-host sits comfortably in the upper band of that range.

What it is: A MySQL server emulator written in Rust. It speaks the MySQL wire protocol over TLS, supports both binary and text prepared statements, parses real DDL, enforces primary keys / unique / not-null / auto-increment / default expressions, runs basic transactions with a buffered write model, and ships with multiple pluggable storage engines — a default in-memory engine, a Redis-backed engine, a real-MySQL proxy engine, and a Firestore engine. WordPress runs against it. So does most of the SQL a small serverless workload throws at a database.

What's under the hood: Roughly 61,000 lines of Rust in the main source tree, 163 files. TLS, a custom parser, query planning, a wire-protocol state machine, a pluggable storage trait, multiple backend integrations.

This is systems software. The talent market for it is small, expensive, and hard to manage. A typical agency cannot deliver this scope at all — they would either decline the engagement or subcontract it.

db_emulator_rust__sow.txt
# DISCOVERY (4 weeks)
1 Architect (DB internals + protocol)
1 Senior Rust engineer
Subtotal: 2 FTE * 1 mo * $40K = $80,000

# BUILD (10 months)
1 Architect
2 Senior Rust engineers
1 Database engineer (storage layer, planner)
0.5 PM / TPM
0.5 SDET (wire-protocol fuzzing, MySQL compat suite)
Subtotal: 5 FTE * 10 mo * $40K = $2,000,000

# HARDENING & PROD READINESS (10 weeks)
Subtotal: 4 FTE * 2.5 mo * $40K = $400,000

TOTAL: $2,480,000

And $2.5M is the optimistic version. Compare it to the engineering org sizes at PingCAP, Materialize, or any Rust-based database company and the number starts to feel low.

What it is: A multi-tenant healthcare data platform. Customer pharmacy data lands through Airbyte, flows through Dagster pipelines for transformation, and gets surfaced through embedded Metabase reports inside a custom frontend. Authentication and authorization run through Keycloak with role-based access. The whole platform sits behind Cloudflare's zero-trust perimeter and is reachable only through a VPN. Logging runs through Promtail and Loki to Grafana. Deploys are orchestrated with Ansible.

What's under the hood: Roughly 18,000 lines of Python and a TypeScript / React frontend, plus the surface area of running and integrating Keycloak, Metabase, Airbyte, Dagster, Cloudflare, and a Grafana/Loki stack — each of which is a substantial system on its own.

The line count is smaller than the other three. The integration and compliance surface is not.

pharmaview__sow.txt
# DISCOVERY (8 weeks)
1 PM (with healthcare domain experience)
1 Tech Lead
1 Product Designer
Subtotal: 3 FTE * 2 mo * $30K = $180,000

# BUILD (10 months)
1 Product Manager
1 Tech Lead
2 Senior Python / data engineers (Dagster, Airbyte)
1 Senior Frontend (React + Metabase embed)
1 DevOps / SRE (Ansible, Cloudflare ZT, monitoring)
0.5 Security / Compliance
1 QA
Subtotal: 7.5 FTE * 10 mo * $30K = $2,250,000

# HARDENING & PRODUCTION (8 weeks)
Subtotal: 5 FTE * 2 mo * $30K = $300,000

TOTAL: $2,730,000
PROJECT

justright.fm
trifecta-host
db-emulator-rust
pharmaview

AGENCY INVOICE

$1,911,000
$6,048,000
$2,480,000
$2,730,000

Total: $13,169,000. Roughly 51 person-years of paid agency labor. None of it would have included sales, marketing, or executive overhead — that's on top.

The estimates above are conservative and clean. The reality of running a traditional agile engagement is messier, and every part of the mess costs money.

// THE AGILE TAX
PM: "Refinement, planning, retro, demo, two stand-ups."
Eng: "That's eight to twelve hours of ceremonies a week."
PM: "Per person."
Eng: "On a 40-hour week, that's 25%."
PM: "Story points compensate."
Eng: "Story points are how we agreed to lie about velocity."

A typical agile team loses 20–30% of nominal sprint capacity to ceremony overhead, pull-request review queues, blocked-on-other-team waits, and the inter-pod coordination tax that nobody admits to in the SOW. Industry research has been remarkably consistent on this for fifteen years. The estimates above already assume you are paying for that overhead — every "FTE-month" line item is a person who is in stand-ups, not coding, for a meaningful slice of the day.

The other invisible costs:

  • Onboarding and ramp-up. A new senior engineer joining a project is at 30–50% productivity for the first 4–6 weeks. Agencies bill for this time at full rate.
  • Code review queues. Two-day waits on a PR are normal in shops with rigid review policies. The author bills idle time to the project as task-switching.
  • Bug bash and regression cycles. Every release ends with a multi-day stabilization sprint. This is in the "hardening" phase but routinely under-scoped.
  • Discovery rework. A discovery phase that produces a Figma file and a Jira backlog is not the same as a discovery phase that produces a working architecture. Agencies that skip the second one bill for it later as "scope clarification."
  • The handoff cliff. When the agency ships and leaves, the operating cost of the system transfers to whoever is left holding it. That cost is rarely scoped in the SOW.
  • Forrester's data on AI projects suggests companies underestimate implementation costs by 500–1000% when scaling pilot to production.[2] The same pattern applies to non-AI builds. The estimate is what gets quoted. The actual is what gets paid.
Traditional agile is not actually fast. It is structured to look fast in two-week increments, while building toward a production system that takes 12–24 months. The fastness is local. The cost is global. And the cost is what you pay.

Nobody paid $13 million to build these.

I built three of the four products solo, with AI-assisted tooling and modern serverless infrastructure that did not exist five years ago. The fourth, pharmaview, was a small team engagement where I led the architecture and most of the platform work.[6] None of the four had a Jira board, a sprint cadence, a refinement meeting, a demo Friday, or a ceremony of any kind. None of them had a designer with a Figma seat, a QA team running regression suites, or a project manager generating burndown charts.

That is not a brag. It is the data point.

The traditional agile delivery model was designed for a world where shipping software required:

Big teams Long timelines Heavy coordination Defensive process

That world is still out there. Most enterprises still operate inside it. Most agencies still bill into it. The estimates I worked through are honest reflections of what that world charges to ship.

But the world I'm shipping in looks different. Cloudflare Workers and serverless infrastructure compress the operational footprint to near-zero. Modern Rust and TypeScript ecosystems eliminate entire categories of work that used to require a team. AI-assisted development collapses the time between "I know what I want" and "the code that does it is in my editor." A senior engineer with a clear thesis and these tools is producing output that, by the conventions of traditional agile, would be measured in person-years.

The gap between the two worlds is not a productivity gain. It is a structural inversion. The agile shop's invoice is not just labor — it's the cost of the coordination structure required to make labor legible.

If you are an executive reading this, you have probably been quoted numbers in this range and felt that they were too high. They were not too high. They were the actual cost of buying through that delivery model.

The interesting question is not whether traditional agile is too expensive. It is whether you still need to buy it.

Some classes of system genuinely require it. Multi-team coordination, regulated industries with auditable change-management requirements, and organizations that need to build institutional knowledge across a workforce all benefit from process-heavy delivery. The agile tax is a real tax, but it buys real things.

For everything else — the products you actually ship, the platforms you actually run, the integrations you actually maintain — the question worth asking is whether the work needs the coordination structure or whether the coordination structure is what's making the work expensive.

Four real production systems. Roughly 235,000 lines of code. About $13 million to build through a traditional agency. Built without a sprint cadence, a Jira board, or a single retro. The bill of materials is real. The delivery model is the optional part.

If you're sitting with an agency proposal and trying to figure out which parts of the cost are the system and which parts are the process, that's the question I help executives answer. The Board Game Test is a structured 90-minute session that pulls the two apart.

$ take the test →
  1. [1] FullStack Labs, 2025 Software Development Price Guide & Hourly Rate Comparison. Mid-market US firms: $120–$250/hr blended. Big-business-class: $250–$350/hr. Enterprise-class: $400+/hr, with some firms quoting $900/hr. Senior developer rates specifically: $75–$150+/hr; specialty domains (Rust, ML, deep systems) trend higher. Cross-referenced with STS Software, Software Development Hourly Rates: 2025 Pricing Guide. Cited at ↩a ↩b
  2. [2] Forrester Research finding on enterprise AI cost underestimation, cited via industry coverage. See ValueAns, SaaS Development Cost in 2026 and AgileEngine, Software Development Cost Breakdown 2025 for the 500–1000% pilot-to-production cost overrun pattern. Cited at
  3. [3] FullScale, 2026 Software Development Budget Template: What CTOs Actually Allocate. US senior developers run $180K–$250K fully loaded annually; personnel represents 50–65% of total engineering budgets. Offshore senior developers run $60K–$90K fully loaded for comparison. Cited at
  4. [4] Standard agile product-team composition (PM, Designer, Tech Lead triad extended with engineers, QA, DevOps): Product School, 10 Ways to Organize Your Product Team Structure; Aha!, What Makes Up the Product Team; ProductPlan, Product Team Structure. Cited at
  5. [5] Enterprise B2B SaaS build cost benchmarks ($300K–$1M+ for 12–18 month enterprise-grade platforms with compliance requirements): Ptolemay, How Much Does It Cost to Build SaaS in 2025; DECODE, How Much Does Software Development Cost: 2025 Guide. Cited at
  6. [6] Source repositories for the four projects: justright.fm (live). The other three are private codebases; line counts and architectural details in this article come from direct inspection of the source trees as of May 2026. Cited at