unsubbed.co

EspoCRM

EspoCRM offers relationship management, sales automation, marketing automation as a self-hosted CRM software.

Open-source CRM, honestly reviewed. No per-seat pricing anxiety, no vendor lock-in — just what you actually get when you run it yourself.

TL;DR

  • What it is: Open-source (AGPL-3.0) CRM platform — contacts, deals, email campaigns, support cases, project management, and workflow automation in a single PHP application [1][2].
  • Who it’s for: Startups and small-to-medium businesses that want to manage customer relationships without paying per-seat SaaS fees. Also developers who want an extensible platform to build custom business applications [1].
  • Cost savings: Salesforce Professional runs ~$80/user/month. HubSpot Professional starts ~$90/user/month. EspoCRM self-hosted runs on a $5–15/month VPS with no per-user fees and no seat limits [2].
  • Key strength: 11 years of active development, 50,000+ companies running it, a genuinely broad feature set — sales pipeline, email marketing, customer support, project management, telephony, and BPM automation — in one package [2].
  • Key weakness: AGPL-3.0 is more restrictive than MIT. Many useful extensions (Outlook sync, advanced reporting, VoIP connectors) cost extra through the marketplace. GitHub star count (2,836) is low for an 11-year-old project, which signals a smaller developer community than alternatives [1].

What is EspoCRM

EspoCRM is a web-based CRM with a PHP REST API backend and a single-page application frontend. It tracks leads, contacts, accounts, sales opportunities, marketing campaigns, support cases, and projects — all without routing your data through a SaaS vendor [1].

The project has been running for 11 years and claims 50,000+ companies across 163 countries [2]. That is not a weekend project or a Y Combinator experiment — it is a mature platform with a paying customer base, a commercial cloud offering, and an extension marketplace. The AGPL-licensed edition is the same codebase powering the commercial cloud, not a stripped-down community version with key features removed.

The README positions EspoCRM as “more than a CRM — it’s a platform for building custom business applications” [1]. You can create custom entities, fields, relationships, and buttons without writing code. Developers extend it through PHP extensions and a documented REST API. The architecture is deliberately unsexy: PHP application server, MySQL/MariaDB or PostgreSQL database, optional queue worker for background jobs. No Kubernetes required for a basic production deployment [1].


Why people choose it

The case for EspoCRM comes down to three things: price, breadth, and stability.

Versus Salesforce and HubSpot. Five people on Salesforce Professional ($80/user/month) costs $400/month, $4,800/year — before add-ons or the implementation consultant. HubSpot Professional at $90/user/month is $450/month for the same team. EspoCRM on a $10 VPS is $120/year for unlimited users. The trade-off is the operational cost of self-hosting, which is real but usually a one-time investment rather than a recurring bill [2].

Versus HubSpot Free. HubSpot’s free tier is a funnel. The moment you need email sequences, custom reporting, or HubSpot branding removed, you’re on a paid plan. EspoCRM’s self-hosted edition doesn’t have artificial feature tiers — you get the full feature set at the infrastructure cost [2].

Versus SuiteCRM. SuiteCRM is the other major AGPL-3.0 CRM, forked from SugarCRM. It has a larger marketing automation surface, but it is noticeably heavier and harder to navigate. EspoCRM’s own documentation describes its interface as “uncluttered, minimalist, and fast” with a “short learning curve” [1]. For a small team getting contacts and deals into a CRM without a week of onboarding, the UI difference matters.

Versus Twenty. Twenty is a newer MIT-licensed CRM with a modern React frontend aimed at developers. It is earlier in development and has a smaller feature surface. EspoCRM is the better choice if you need a production-ready system today with email campaigns, cases, and telephony. Twenty is worth watching if you want a hackable, code-first CRM and can wait for it to mature.

On the AGPL license. Unlike MIT or Apache-licensed tools, AGPL-3.0 means: you can self-host freely for internal use. If you modify and distribute EspoCRM, or offer it as a service to others, you must open-source your modifications. For a founder using it to manage their own customers, this is irrelevant. For a developer building a white-label CRM product to resell, this is a legal complication you need to read carefully before committing [1].


Features: what it actually does

Based on the README and the features page [1][3]:

Sales pipeline:

  • Leads, opportunities, accounts, contacts with full relationship mapping [3]
  • Quotes, invoices, and purchase orders [3]
  • Products catalog [3]

Communication:

  • Email sync — emails automatically pulled into CRM records [3]
  • Email sending and templates from inside the CRM [3]
  • Mass email campaigns with target lists [3]
  • VoIP/telephony integration (Asterisk and others) [3]
  • Activity stream — a feed showing record changes across the whole org [3]

Customer support:

  • Cases (support ticket tracking) [3]
  • Customer portal — external access point for customers to submit and track cases [3]
  • Knowledge base [3]

Automation:

  • Workflow engine — trigger-based automations on record changes, field updates, time conditions [3]
  • BPM (Business Process Management) designer — visual, multi-step process flows for complex approval chains or staged sales processes [3]

Other modules:

  • Project management with tasks and milestones [3]
  • Marketing campaigns separate from mass email [3]
  • Import and export, including scheduled imports [3]
  • Analytics and reports [3]

Developer surface:

  • REST API at /api/v1/ — documented and versioned [1]
  • PHP extension framework [1]
  • Webhooks [1]
  • Docker and Docker + Traefik installation paths [1]
  • PHPStan level 8 compliance on the backend codebase — unusually disciplined for a PHP project [1]

What is not free: Several extensions sold through the marketplace — advanced reporting, Google Calendar sync, Outlook integration, VoIP connectors — are paid add-ons. The base installation is functional for standard CRM use. The full experience costs more. Extension prices are not published in a simple list; you check the marketplace per item.


Pricing: SaaS vs self-hosted math

EspoCRM Cloud: Cloud pricing was not captured in the available data for this review. EspoCRM offers a free trial and managed cloud subscriptions — check https://www.espocrm.com/cloud/ directly for current pricing.

EspoCRM Self-Hosted (AGPL-3.0 edition):

  • Software: $0 [1]
  • VPS: $5–15/month depending on provider and specs
  • Paid extensions: varies — budget a few hundred dollars if you need advanced reporting or calendar integrations
  • Support: community forum is free; paid support available from the EspoCRM team

Competitor reference pricing (public list prices):

  • Salesforce Starter Suite: ~$25/user/month
  • Salesforce Professional: ~$80/user/month
  • HubSpot Professional: ~$90/user/month
  • HubSpot Starter: ~$15/user/month

5-person team math:

OptionMonthlyAnnual
Salesforce Professional$400$4,800
HubSpot Professional$450$5,400
EspoCRM self-hosted ($10 VPS + ~$300 extensions one-time)~$10~$420 year one, ~$120 after

Versus Salesforce Professional: roughly $4,400/year saved after year one for a 5-person team. The math only improves as headcount grows, because self-hosted EspoCRM has no per-seat cost.


Deployment reality check

EspoCRM offers four documented paths: manual installation, installation script, Docker, and Docker with Traefik [1]. The Docker path is what most self-hosters will use.

What you need:

  • Linux VPS with 1GB RAM minimum, 2GB+ recommended for real usage
  • Docker and docker-compose, or a traditional PHP/MySQL stack
  • PHP 8.3–8.5 if going non-Docker [1]
  • MySQL 8.0+, MariaDB 10.3+, or PostgreSQL 15+ [1]
  • Domain and reverse proxy for HTTPS

What goes well:

  • PHP is the most widely supported server-side stack — nearly any VPS provider can run it
  • The installation-by-script option handles the full stack setup without manual configuration
  • Traefik integration instructions exist for users running Docker-based home servers
  • 11 years of deployment surface means most setup problems are documented in the forum

What can go wrong:

  • Background job processing (email campaigns, workflow triggers, notifications) requires a cron job. If you skip this, the CRM appears to work but emails are delayed and automations don’t fire. The symptom is subtle if you don’t know to check.
  • Email deliverability for mass emails from a self-hosted server requires SPF, DKIM, and a clean IP reputation. EspoCRM documents this, but it is still friction that managed SaaS abstracts away.
  • PHP version management: PHP 8.3+ is required. Older shared hosts or unupdated VPS images may need an upgrade first.
  • Extension version compatibility: major EspoCRM updates sometimes require updated extension purchases. Check the changelog before upgrading if you have paid extensions installed.

Realistic time to a working instance: 1–2 hours for a technical user using Docker. For a non-technical founder following documentation: 4–8 hours including domain, HTTPS, email configuration, and initial data setup.


Pros and cons

Pros

  • Mature, proven software. 11 years in production, 50,000+ companies. The common failure modes are documented. This is not where you discover new categories of bugs [2].
  • No per-seat costs. Add 50 users. The hosting bill does not change. This is the actual value proposition for growing teams [2].
  • Unusually broad feature surface. Sales pipeline, email campaigns, support cases, knowledge base, project management, telephony, BPM automation — most free CRMs cover three of these, not all of them [3].
  • Clean interface. Compared to SuiteCRM and Vtiger, EspoCRM’s UI is less cluttered. The learning curve is shorter for non-technical staff [1].
  • Real REST API. Documented, versioned, usable without workarounds. Straightforward integration target for adjacent tools [1].
  • Customization without writing code. Custom entities, fields, relationships, and layouts through the admin UI. A non-developer can reshape the CRM data model to match their business [1].
  • PHPStan level 8. This signals that the PHP codebase has been held to strict static analysis standards — unusual for a project of this age and style. Means fewer runtime surprises when you customize [1].
  • Docker + Traefik path. Well-suited to modern self-hosted server setups [1].

Cons

  • AGPL-3.0 is a commercial restriction. You cannot white-label or resell EspoCRM functionality without open-sourcing your modifications. Read the license before committing if you’re building a product [1].
  • Low GitHub star count. 2,836 stars for an 11-year-old project used by 50,000 companies is low. The community is real but less developer-visible than newer CRM projects. Fewer community tutorials, fewer Stack Overflow answers [1].
  • Extensions cost extra. Outlook integration, advanced reports, VoIP connectors — these are paid. The base installation is functional; the complete platform is not free.
  • PHP backend. Not a blocker for hosting, but if your team needs to write custom extensions, you are writing PHP. Some developers have strong feelings about this.
  • No native mobile app. The responsive web interface works on phones. It is not optimized for mobile-first sales workflows the way Salesforce Mobile or HubSpot’s apps are.
  • Documentation is adequate, not exceptional. Installation and configuration are well-covered. Developer documentation for building extensions exists but lacks the depth and examples of better-resourced projects.
  • Mass email deliverability requires you. Unlike Mailchimp or HubSpot, where deliverability is managed by the vendor, self-hosted mass email campaigns depend on your own IP reputation and domain authentication. This is not EspoCRM’s limitation specifically, but it is consistent friction.

Who should use this / who shouldn’t

Use EspoCRM if:

  • You’re paying $200–$600/month for Salesforce or HubSpot and want to eliminate that bill.
  • You’re using EspoCRM internally for your own business (not building a product on top of it) and AGPL-3.0 is not a commercial constraint.
  • You want a single self-hosted tool that covers CRM, support cases, email campaigns, and project management — rather than four separate SaaS subscriptions.
  • You have someone technical available for initial deployment, or you’ll pay for a one-time setup.
  • Your team is growing past 5–10 people, where per-seat SaaS pricing starts to compound.

Skip EspoCRM if:

  • You are building a white-label CRM product or offering CRM-as-a-service — AGPL-3.0 requires you to open-source your modifications.
  • You need a polished native mobile app for field sales reps constantly on the go.
  • Your team needs hundreds of native SaaS integrations out of the box — Salesforce’s AppExchange has thousands; EspoCRM’s marketplace is far smaller.
  • No one on your team has ever touched a Linux server and you have no budget for someone who has.

Consider alternatives if:

  • Your needs are genuinely simple — contacts plus a deal pipeline — and HubSpot Free or Twenty would cover you without the hosting overhead.
  • You are an engineering team that wants a code-first, hackable CRM — Twenty or Corteza are more accessible for developers wanting to modify the core.

Alternatives worth considering

  • SuiteCRM — the most feature-complete AGPL-3.0 CRM alternative, forked from SugarCRM. Stronger marketing automation modules, heavier to operate, less polished interface. Choose SuiteCRM if you need its advanced campaign management. Choose EspoCRM if UI simplicity matters.
  • Twenty — newer MIT-licensed CRM with a modern React frontend. Earlier in development, smaller feature set today, but actively growing. Better license for product builders.
  • Vtiger Community — another AGPL CRM with strong B2B and manufacturing adoption. UI is dated, community edition is feature-limited compared to Vtiger’s commercial offering.
  • HubSpot Free — zero deployment work, genuinely useful for early-stage teams. Trade-off: your data sits on HubSpot’s servers and the free tier is a deliberate funnel toward paid plans.
  • Salesforce — the market leader, integrates with everything, mobile-first, expensive. Worth it for a 50-person sales team with dedicated RevOps. Rarely worth it at 5 people.
  • Odoo CRM — if you need CRM plus ERP in one system, Odoo’s community edition is the most complete open-source option. Significantly more complex to operate than EspoCRM.

For a non-technical founder migrating off Salesforce or HubSpot, the realistic comparison is EspoCRM vs SuiteCRM. EspoCRM wins on UI and deployment simplicity. SuiteCRM wins if you specifically need its marketing automation depth. Both are free to self-host.


Bottom line

EspoCRM is the least glamorous recommendation in this space: 11 years old, modest GitHub stars, PHP backend, not trending anywhere. But 50,000 companies running it in production is not a coincidence. It covers the full CRM surface — contacts, deals, email campaigns, support cases, project tracking, BPM automation — in a single deployable package with no per-seat cost. For a 5-person team paying $400/month on Salesforce Professional, the math is blunt: self-hosted EspoCRM on a $10 VPS saves roughly $4,400/year after the first year. The AGPL-3.0 license needs reading if you’re building a product, and paid extensions add up if you need advanced integrations. For internal business use, those are manageable trade-offs. If you are tired of SaaS CRM bills and can invest one afternoon in a setup, this is a serious contender.

If deployment is the blocker, that’s exactly what upready.dev handles for clients. One-time fee, you own the infrastructure.


Sources

  1. EspoCRM GitHub Repository and READMEhttps://github.com/espocrm/espocrm — github.com (2,836 stars, AGPL-3.0 license)
  2. EspoCRM Official Websitehttps://www.espocrm.com — espocrm.com (50,000+ companies, 163 countries, 11 years since first release)
  3. EspoCRM Features Overviewhttps://www.espocrm.com/features/ — espocrm.com
  4. EspoCRM Documentation — Server Requirements and Installationhttps://docs.espocrm.com/administration/server-configuration/ — docs.espocrm.com

Features

Integrations & APIs

  • REST API