Revenue analytics that tells you what changed instead of showing forty charts
If the need is revenue analytics rather than client management.
A self-hosted CRM for consultancies that will not put client data in the cloud
Halden is a small, self-hosted CRM built for agencies and consultancies with confidentiality obligations. One binary, one Postgres database, no telemetry, and no AI features reading your client correspondence. Small enough that one person can audit the entire codebase.
Postgres and a single process. No Redis, no queue, no orchestrator.
No outbound connections you did not configure, in a codebase small enough to verify.
Recurring engagements and time tracking that feed invoicing, not just deal stages.
Nothing reads client email. Stated as a product commitment, not a current limitation.
Upgrade from a year-old install in one command.
14,000 lines. You can read the whole thing.
Some businesses cannot put client data in a multi-tenant SaaS. Law-adjacent consultancies, agencies under NDA, anyone with a client whose procurement team asks where the data physically lives.
The usual options are an enterprise CRM that costs more than the team, or a spreadsheet. Halden is the third option.
Contacts, companies, deals, pipelines, notes, documents and a genuinely good email log. Recurring retainer tracking, because that is how consultancies actually bill. Time tracking that feeds invoices.
Marketing automation, lead scoring, sequences, chatbots, or anything that treats a person as a funnel stage. Consultancies have twelve clients, not twelve thousand leads, and tooling built for the latter actively gets in the way.
Halden ships a single migration binary and supports skipping versions. Upgrading from a year-old install is one command, because the realistic user updates roughly annually.
It keeps hosted forks honest. If you run Halden internally — which is the entire point — the AGPL imposes nothing on you. A commercial licence is available if AGPL conflicts with your policy.
A 1 GB VPS and a Postgres database. Halden is comfortable serving a 30-person consultancy on hardware that costs about $6 a month.
No, deliberately. The product exists because some teams cannot use hosted software, and running a hosted version would pull the roadmap towards a different user.
Not ones that read client correspondence by default. If anything ships, it will be off by default, run against a self-hosted model, and be announced prominently rather than slipped into a release note.
Similar products worth comparing before you commit.
Revenue analytics that tells you what changed instead of showing forty charts
If the need is revenue analytics rather than client management.
Observability a two-person team can afford to run and actually understand
Same self-hosted, small-team operating philosophy.
A local-first sync engine you can drop into an app you already shipped
Ranked by shared categories, tags and explicit alternative relationships.
Observability a two-person team can afford to run and actually understand
Revenue analytics that tells you what changed instead of showing forty charts
A local-first sync engine you can drop into an app you already shipped