SelfHostCost

What self-hosting actually costs

Every comparison here prices the server, the backups and the hours it takes to look after, then puts that against the vendor's own published price. Sometimes self-hosting wins by an enormous margin. Sometimes it loses. We publish both, because a comparison that always reaches the same conclusion is not a comparison.

Comparisons
65paid product against self-hosted tool
Tools priced
30with a published sizing model
Prices read from vendors
30on 2026-09-14
Where self-hosting loses
46of those comparisons, at 10 people

Where the gap is widest

Largest 36-month saving at 10 people, your own time already deducted.

Instead ofRunTheir priceYoursSaved over 36 months
Zendesk FreeScout $638 $49.50 $21,020
Zendesk Chatwoot $638 $272 $11,967
Zendesk Zammad $638 $272 $11,967
SurveyMonkey LimeSurvey $348 $49.50 $10,587
Help Scout FreeScout $300 $49.50 $8,868
SurveyMonkey Formbricks $348 $139 $7,069
Notion BookStack $226 $49.50 $6,206
Freshdesk FreeScout $190 $49.50 $4,908

And where it does not pay off

These are the comparisons where the paid product is cheaper once your hours are priced at $75. Self-hosting them is a choice about control, not about money.

ProductSelf-hosted optionTheir priceYours
Mixpanel PostHog $0.00 $326 why
Amplitude PostHog $0.00 $326 why
Google Analytics 4 PostHog $0.00 $326 why
Jira Plane $0.00 $272 why
Jira OpenProject $0.00 $272 why
Linear Plane $100 $272 why
Asana Plane $135 $272 why
monday.com Plane $139 $272 why

By category

How this works

A paid seat has no floor and a steep slope: ten people cost ten times one person. A server has a high floor and almost no slope: the same machine serves ten people or a hundred. Every comparison on this site is really just the point where those two lines cross, and that point moves depending on how heavy the tool is and what your time is worth.

We size each tool from its own documented requirements where they exist, pick the smallest server plan that actually fits, add backups, and add the hours. Prices carry the date they were read and a link to the page they were read from. When we have not checked a price, we do not publish a figure that depends on it. The full method is here, including everything the model deliberately ignores.