Deploy

Free credit available Limited time

EspoCRM self hosted. The whole CRM, on a server we run.

EspoCRM 10.0.6, the open source CRM, deploys as a one-click template with its own MySQL onto a dedicated server Selfhost.dev provisions, secures and runs, across six locations on three continents. A European 8 GB server is $0.03/hr, about $23 a month, for any number of users.

Launch EspoCRM

One click. Three containers. The template deploys in about twelve minutes.

+$5.00 added at signup · deployment choice preserved · no card

EspoCRM 10.0.6, one click/MySQL 8.4 included/Custom domain and SSL, automatic/8 GB server, $0.03/hr in our EU locations

What is EspoCRM self hosted?

A complete CRM.
Yours from the first login.

What it is. Contacts, accounts, leads, opportunities and activities, with custom entities and fields, a REST API and a workflow engine. Everything a sales team tracks, in software you can read the source of.

Who it is for. Teams who want their customer records on a server they control, and who would rather not assemble the app, a job daemon and a MySQL database themselves.

When to use it. When a per-seat CRM bill starts growing with headcount, or when customer data cannot sit in someone else's system. From three users the arithmetic is already in your favour.

One-click template (live today)

EspoCRM self hosted requirements

What EspoCRM needs, and what we already provide.

EspoCRM self hosted means the app, a job daemon and a MySQL database behind a reverse proxy with TLS. The template ships all of it on one server, so the only requirement you choose is the server size.

What EspoCRM needsThis deployment
EspoCRM version10.0.6, pinned
DatabaseMySQL 8.4
ContainersApp, job daemon, MySQL
Memory8 GB recommended
Architecturex86 or ARM
EmailSMTP is set up inside EspoCRM after it is running
Live notificationsNot available in this deployment. The interface polls instead
Paid extensionsBought from EspoCRM separately when you self host
AttachmentsStored on the server volume
What Selfhost.dev providesDetail
ServerDedicated project server, provisioned and run by us
RegionsFalkenstein, Nuremberg, Helsinki, Ashburn, Hillsboro, Singapore. Which locations are open depends on the machine you pick
HTTPSAutomatic, wildcard subdomain or your own domain
Admin credentialsSet before first boot, never EspoCRM's documented default
BackupsOptional. Daily, whole VM, last 7 kept, +20% of the server price
MonitoringMetrics, logs, and a health check every 60 seconds
Deploy timeAbout 12 minutes for the template, once the server exists
Per-seat feeNone
MCP tools189 across 31 modules

Specifications current as of September 2026.

What's in the EspoCRM deployment

Three containers. One click.

Three containers on one project server, deployed together. The database installs itself on first boot.

ComponentVersionWhat it does
EspoCRM10.0.6-apacheThe CRM: contacts, accounts, leads, opportunities, activities and custom entities
Job daemonSame imageScheduled jobs, email fetching and workflow processing. Serves no web traffic
MySQL8.4.11Every CRM record
TLS and routingManaged by Selfhost.devPublic HTTPS URL, auto-renewed certificates

Your own MySQL, not a shared tenancy

EspoCRM gets a dedicated MySQL 8.4 on your project server. It is included in the server price with no separate service fee, and nothing else on the platform can reach it.

The daemon is separate for a reason

EspoCRM's scheduled jobs, email fetching and workflows run in their own container rather than inside the web process. A long-running job cannot slow down the interface, and the daemon is never exposed to the internet.

What we set up for you

The wiring a stock install leaves to you.

It never boots on the default login

EspoCRM's own documentation ships the administrator as admin with the password password. We write your credentials in before the container is reachable, and the deploy is deliberately held back until that has happened. There is no install wizard and no window in which the default login works.

Your links point at your address

ESPOCRM_SITE_URL is set to your live domain at deploy time, so links inside the app and in the mail it sends resolve to your address rather than to localhost. The database connection is wired at the same moment, which is why there is no setup screen to walk through.

Nothing resolves across stacks

Your MySQL gets a per-service DNS name rather than a generic one, so no other project on the platform can reach it by guessing. Behind that sits a default-deny firewall with only ports 22, 80 and 443 open, a Let's Encrypt certificate per hostname, and one virtual machine per customer.

No Selfhost.dev template ever boots on a documented default password. If that seeding fails, the instance comes up locked rather than open.

How to self host EspoCRM in 4 steps

From zero to live.
No server to set up.

Four steps. No Docker Compose, no database to wire up, no certificate to renew.

1

1. Create a project

Name it and pick a server. EspoCRM runs three containers, so 8 GB is the size we recommend. Six locations across Europe, the US and Singapore. We provision it, with no cloud account to connect.

2

2. Add the EspoCRM template

Add service → Template → EspoCRM. All three containers deploy together and the database installs itself on first boot. About twelve minutes, then we email you the URL and your administrator credentials.

3

3. Sign in

Your administrator username and password were set before the app first started, so there is no install wizard and no default login to race anyone to. Use the credentials from the email.

4

4. Point your domain and set up email

Keep the wildcard subdomain or add your own: set DNS, verify a TXT record, and HTTPS provisions and renews automatically. Then add your SMTP details inside EspoCRM and import your contacts.

What we run, and what you run

The honest split.

We manage the infrastructure. You own what happens inside EspoCRM. This is managed hosting, not managed CRM administration.

We runYou run
Server provisioning and capacityYour records, pipeline and custom entities
The MySQL containerYour users and their roles
Reverse proxy, TLS, renewalsYour SMTP settings
Firewall and network rulesData retention inside EspoCRM
Your administrator credentials, set before first bootAny paid EspoCRM extensions you buy
Optional daily backupsYour EspoCRM version, and when to move to a newer one
Metrics, logs, and a health check every 60 seconds

We pin the template to a tested EspoCRM version, currently 10.0.6.

What an 8 GB server handles

What else fits on the box.

A project server holds up to five workloads in total, counting apps, databases and one-click apps together. The platform reserves 1,536 MB for the host, a heavy workload reserves 2,048 MB and a light one 512 MB. EspoCRM is classed heavy. An 8 GB server carries three heavy workloads and one light one in total, so EspoCRM leaves room for two more heavy services and a light one alongside it. A 4 GB server carries one heavy and one light, which is EspoCRM plus a single small sidecar and nothing else.

Adding users does not add containers. The three that deploy are the three that run, whether the CRM has two people in it or fifty.

EspoCRM self hosted cost: what you actually pay

One server rate. No seats to count.

You pay for the server and nothing else. An 8 GB server is $0.03/hr, about $23 a month in our EU locations if you leave it running, billed hourly against prepaid credits. Adding users does not change the bill, and neither does the traffic they generate.

What you pay forCost
8 GB project server$0.03/hr in our EU locations, $23.36/mo at 730 hours
EspoCRM, the job daemon and MySQL$0
HTTPS and custom domain$0
Users$0, no per-seat fee
Bandwidth$0. Traffic is included
Daily server backupsOptional. Daily, whole-VM, last 7 kept, +20% of the server price

Monthly figures assume 730 hours. Rates are for our EU locations; US and Singapore machines are different types at different rates, priced live in the calculator.

What running it here actually promises

Five things we can hold you to.

Every service is health-checked every 60 seconds. A stalled deploy is retried automatically, not abandoned. A deploy is never reported done until the URL actually answers. Retrying a create never leaves you paying for two copies. Your EspoCRM version never moves on its own: 10.0.6 stays 10.0.6 until you decide otherwise.

EspoCRM's template takes about twelve minutes, against a twelve minute budget the platform holds itself to. It is one of the slower templates we run, because the schema installs itself on first boot, and we would rather tell you that than have you watch a spinner.

Sizing sheet

Working out what a self hosted CRM costs?

Tell us your team size and we will send back the server size, the monthly cost and what it replaces on your current CRM bill. One email, no newsletter.

EspoCRM Cloud vs EspoCRM self hosted

What their cheapest plan actually costs.

EspoCRM sells a hosted version starting at $15 per user per month. That figure is not a price anyone can pay, because the cheapest plan has a three-user minimum, so the smallest possible bill is $45 a month. Enterprise is $25 per user with a five-user minimum, which makes it $125. Our 8 GB server is $23.36 a month for any number of users, billed by the hour with nothing to commit to.

Cloud BasicCloud EnterpriseSelf hosted here
Price$15/user/mo$25/user/mo$23.36/mo flat
Minimum users35None
Smallest possible bill$45/mo$125/mo$23.36/mo
10 users$150/mo$250/mo$23.36/mo
25 users$375/mo$625/mo$23.36/mo
Billing term6 or 12 months6 or 12 monthsHourly, no commitment
Paid extensionsIncludedIncludedBought separately
Where your data livesEspoCRM's infrastructureEspoCRM's infrastructureYour dedicated server

EspoCRM Cloud list prices as published, checked 12 September 2026 at EspoCRM pricing. Our figure is an 8 GB server in our EU locations at 730 hours.

When EspoCRM Cloud is the better choice

Every paid EspoCRM extension is included at no extra cost on their hosted plans: the Advanced Pack with its reports, workflows and business process management, plus the Sales Pack, project management and the integrations for Outlook, Google, Zoom, Stripe and MailChimp. Self hosted, those are bought from EspoCRM separately. If your team needs several of them, their plan may well work out simpler and cheaper, and they run the server too. Anyone still choosing between CRMs rather than between hosting models should read our comparison of eight open source CRMs, which includes Twenty CRM self hosted.

EspoCRM self hosted limitations

What this does not do.

Real constraints, easier to plan around than to discover.

  • Live notifications do not work here. EspoCRM's real-time push needs a second public entry point and each service on the platform gets one, so the interface checks for updates on a timer instead. Everything still arrives, just not the instant it happens.
  • SMTP is not configured. Set your mail provider inside EspoCRM before you invite anyone, or invitations and password resets will not send.
  • Paid extensions are a separate purchase. The Advanced Pack and the other add-ons are included on EspoCRM's hosted plans and bought from EspoCRM when you self host.
  • Pick your size at the start. A server cannot be resized in place, so moving to a bigger box means a new project and a data migration.
  • Five workloads per project, counting apps, databases and one-click apps together.

EspoCRM backup and restore

One image covers the whole server, and a root shell gets you your own copy.

What a backup covers

Daily, optional, 20% of the server price. There is no separate data volume, so one image is every container, the MySQL database and every volume together, including attachments. The last seven are kept, rotating.

They do not survive deletion

Backup images live with the server. If the server is destroyed, they go with it. Backups protect you from mistakes, not from an unpaid bill.

Your own copy, whenever you want one

Add your public key to the project server and you have root over SSH. From there mysqldump against the database container gives you every CRM record, and a tar of the espocrm-data volume gives you every attachment. We never see the private half of that key.

Nothing here is designed to make leaving hard

EspoCRM exports to CSV from inside the app, and root SSH gives you everything byte for byte. There is no export button and we will not pretend there is one, but there is no lock either.

Frequently asked questions

Can I self host EspoCRM on Selfhost.dev?
Yes. EspoCRM is a one-click template you deploy onto your project server. Selfhost.dev provisions the server, deploys all three containers, issues the certificates and sets your administrator credentials before the app first starts. You sign in with the details we email you and begin adding contacts and accounts straight away.
How much does it cost to self host EspoCRM?
You pay for the project server and nothing for the template. We recommend an 8 GB server, which is $0.03 an hour, about $23 a month in our EU locations if you leave it running, billed hourly against prepaid credits. There are no per-user charges, and traffic is included. See pricing.
Is EspoCRM better than SuiteCRM?
For most teams, yes, because it is lighter to run. EspoCRM ships an official Docker image and works with MySQL, MariaDB or PostgreSQL. SuiteCRM ships no official image, and its workflows, emails and schedulers do not run at all until you set up a cron job yourself. We compared eight open source CRMs on what each one needs underneath it. SuiteCRM is worth the extra work only if you need its built-in cases and campaigns, and email configuration is the single largest complaint in its issue tracker.
Is self hosting cheaper than EspoCRM Cloud?
At every size. EspoCRM Cloud starts at $15 per user per month, but the cheapest plan has a three-user minimum, so the smallest bill is $45 a month on a six or twelve month term. An 8 GB server here is about $23 a month for any number of users. Their plans do include every paid extension.
Do I set an admin password when I deploy EspoCRM?
No, we set it for you. Your administrator username and password are written in before the app first starts, and emailed to you when the deploy finishes. The instance never comes up on the admin and password login that EspoCRM's own documentation describes, and there is no install wizard to complete.
Do EspoCRM's live notifications work?
No. EspoCRM's real-time push needs a second public entry point, and each service on this platform gets one, so the interface checks for updates on a timer instead of receiving them the instant they happen. Notifications still arrive and nothing is lost; they appear on the next poll rather than immediately.
What do I need to self host EspoCRM?
A server with 8 GB RAM, a MySQL database, a separate job daemon for scheduled work, a reverse proxy and a TLS certificate that renews itself. The template provides all of it on one server, so the only decisions you make are the server size and which of the six locations it runs in.
Can I use my own domain with self hosted EspoCRM?
Yes. Every project gets a wildcard subdomain out of the box, and you can add your own domain instead: set the DNS records, verify with a TXT record, and HTTPS is provisioned and renewed automatically. The address you choose is written into EspoCRM, so links and outgoing mail point at it.
What happens if my credit balance reaches zero?
The server is powered off first, not deleted, and we email you. You get a 24-hour grace period, and a top-up inside that window restarts the project rather than destroying it. Keep a card on file and export your data periodically, and this never comes up.

About Selfhost.dev

Selfhost.dev is a managed self hosting platform for developers and small teams. Open source apps and databases on dedicated servers you control, billed by the hour with no subscription tiers.

Best for: EspoCRM, Twenty CRM, Krayin, Chatwoot and managed PostgreSQL, MySQL, Redis and ClickHouse.

Self host EspoCRM. We will run the server.

One-click EspoCRM template
Custom domain and SSL, handled
Project server rates only, nothing per app
Launch EspoCRM