Bespoke web work is roughly half the price it was a year ago. Brochure sites that used to quote at five to six thousand pounds and six weeks now land at three to three-and-a-half thousand and three weeks. Bespoke business-automation builds that used to quote at twenty thousand and six months now land at around ten and two to three. Same artefact at the other end. Production application, your data, runs on managed infrastructure. What changed is what we charge for getting there, and how long getting there takes.
A brochure site, technically
When I say "brochure site" I'm not talking about a WordPress theme with a contact form bolted on. The brochure sites we ship are real applications. Compiled Go binaries with their own database, internationalisation, multi-currency support where the customer needs it, lead capture writing into a real CRM-shaped table, structured analytics. Same backbone our marketing site runs on. Same backbone our Platform Demo runs on. Same backbone everything else we build runs on.
The brochure today is a small app. Add integrations and a control panel a year from now and it's a business-automation app. Layer customer accounts and tenancy on top the year after, and it's a dedicated SaaS, if the appetite is there. Nothing gets thrown away at any step. Same code, same database, same hosting, more scope. The framework carries the whole arc. The three-thousand-pound number buys you that, not a Squarespace template.
What we don't write any more
We've been building a Go framework in-house for the last few years. It's at v1.154.0 this week, with over eighty production-stable packages running across five of our own products. Auth, sessions, password reset, two-factor. Multi-tenant database hygiene. Stripe, GoCardless, and Billy accounting clients ready to wire in. Email, both transactional and bulk. WebSocket plumbing with reconnect and keepalive. Web push including the Brave-browser edge cases. OAuth 2.1 provider with dynamic client registration. An MCP server for AI-tool integration. Internationalisation with GeoIP locale detection. A durable job queue. CSP, CSRF, signed cookies, gzip. The boring middleware everyone re-implements and gets wrong.
None of this is technology nobody else has. It's that we built it once, ran it in production across our marketing site, our project-management tool, our agent runtime, and a live SaaS demo, shook the bugs out, and now we don't pay for it twice. So you don't pay for it on your invoice. Marketing site at myserverguy.net is around 8,700 lines of code in total, templates and CSS included. The live SaaS demo at platform.myserverguy.net is 11,400 lines of Go for a full multi-tenant application: OAuth signup, encrypted sessions, English and Danish locales with GeoIP detection, an MCP server with seven tools, a WebSocket activity feed, web push, durable background jobs, real payments. Those are small numbers. They're small because the framework owns the plumbing.
Where AI is genuinely doing the work
The framework gets us most of the way. AI compounds it from there. The truthful sentence, from the engineer who maintains the framework: AI doesn't write the framework. The framework gives AI a small, opinionated surface so it stops inventing things and starts shipping things. The conventions are codified. Documented invariants the code reviewer can check. The LLM reads the documentation, drafts new code against the conventions, and the conventions hold because they have to. Scaffolding a handler, writing a migration, updating English and Danish translation files in lockstep, writing tests against the existing test-chain pattern — pattern-driven work, and the AI is genuinely fast at it.
What AI is not doing, and what the agencies pricing "AI everything" against you might want to be careful about claiming: AI isn't designing your system. The framework is the design. AI isn't talking to you about what you actually want. That's still us, on a call, taking notes. AI isn't catching the edge cases you didn't mention in the brief. That's still us. AI isn't deciding what's in scope and what isn't, and the new economics depend on scope discipline. There's a hype version of this story doing the rounds where AI builds the whole app in an afternoon. It isn't true and we shouldn't pretend it is.
What you get, and what you don't
Same artefact as before, same expectations. A production application running on managed infrastructure, the same hosting stack that runs our own products. The compiled binary, delivered on request, runs anywhere. Database is yours, your data, exportable any time. Hosting is month-to-month, thirty days' notice, no minimum term. A human on the other end of an email or a phone, not a ticket queue.
What you don't get, honestly. You don't get a six-month feature-creep cycle: compressed lead times come from compressed feature sets shipped quickly, not from compressing careful work. You don't get a free pick of stacks. The framework is the stack. We're Go, htmx, Postgres, server-rendered. If you want React talking to a Rust microservice through a GraphQL gateway, we're the wrong shop. You don't get a free pick of third-party integrations: Stripe, GoCardless, Billy accounting, Gitea, and Zammad are wrapped as framework client libraries and wire in inside the headline number; anything outside that list gets scoped as a line item. For most buyers, this is the right trade. The honest version of the price is also the honest version of the constraint.
Two files. One app. One database.
At the end of a build with us, your application is a compiled binary file. That's your app. That's your asset. Most shops run on Linux servers and that's our default; we compile for Windows or macOS targets where customers need them. The framework underneath stays ours, because that's how we keep it maintained for everyone we host. But the binary that is your site, or your app, is yours. If you host with us, that's month-to-month. Thirty days' notice to leave, no minimum term, no auto-renewing tie-in. If you decide one day to move on, you get two files. One application binary. One database file. Point your domain wherever you're going next, and shake hands. We've done it before. We'd do it again. Most buyers never need any of this; the standard agency contract goes the other way, where the deliverable is a hosting login and the cost of leaving is high enough to function as a soft lock-in. We don't want that customer. We want the customer who can walk if we stop earning the relationship. Two ways to get a number on a build: a free discovery call, or build a quote yourself at platform.myserverguy.net, where an AI assistant sits next to a real costing engine.
Who wrote this
This piece was researched by Milo, our framework engineer, and drafted by Quinn, our sales lead. Both are AI agents, working inside AgentX, now in private beta at agentx.myserverguy.net. AgentX is built on the framework I've been describing — the same one your build would be. The human you're reading hasn't written a word of it; he's read it twice, redirected the agents a few times, approved the result. The pitch is the price, and the binary, and the two files. The principle is the same one. We don't write what the framework already writes. We don't research what AI can research. We do the bit that still needs us. Read the LinkedIn discussion →
