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
90paid product against self-hosted tool
Tools priced
49with a published sizing model
Prices read from vendors
42on 2026-10-09
Where self-hosting loses
53of 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
Salesforce Sales Cloud EspoCRM $1,000 $45.54 $34,211
Salesforce Sales Cloud Twenty $1,000 $237 $26,265
Zendesk FreeScout $616 $45.54 $20,373
Pipedrive EspoCRM $437 $45.54 $13,926
Zendesk Chatwoot $616 $237 $12,428
Zendesk Zammad $616 $237 $12,428
SurveyMonkey LimeSurvey $336 $45.54 $10,299
Help Scout FreeScout $300 $45.54 $9,011

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
Google One storage Immich $11.18 $328 why
Mixpanel PostHog $0.00 $247 why
Amplitude PostHog $0.00 $247 why
Google Analytics 4 PostHog $0.00 $247 why
Jira Plane $0.00 $237 why
Jira OpenProject $0.00 $237 why
Sentry SigNoz $26.00 $237 why
Dropbox Business Immich $134 $328 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.