We replaced our SaaS stack with one panel we wrote
Not because it was cheaper. Because a rule in a subscription is a suggestion, and a rule in your own API is a gate.
Most studios our size run on a stack of subscriptions plus memory: a CRM, a project tool, an invoicing app, and a spreadsheet holding the parts none of them do. Each one is fine. The problem is the seams — the client record in one, the project in another, the invoice in a third, and nothing that can refuse to let a project start because the advance has not landed.
That refusal is the whole point. Our most important operating rule is that no build begins before the 50% advance clears. As a policy it survived about as long as the first sympathetic client. As a gate in our own API it has never once been broken, because it cannot be.
So we built the panel. Pipeline, delivery, invoicing, payroll, hiring, and the content on this website all live in one place, organised by the lifecycle of money through an agency rather than by database tables. The stages a project moves through are the same states published on this site, because there is only one set of them.
The second-order effects were the surprise. Because everything is in one system, the daily digest can be honest: replies waiting, SLA breaches, money owed, projects that have not moved. Because the site's content is published from the panel, the marketing pages cannot drift out of date relative to what we actually sell.
It is not free. It is a real product with real tests and a real maintenance cost, and it took a month of evenings before it replaced anything. What we got is a studio where the process is executable rather than aspirational — and, incidentally, the most honest thing we can show a prospective client.
Written by the Valentir team. If you want to argue with any of it, that is what hello@valentir.in is for.