Should I self-host Pipedrive?
EspoCRM covers pipelines, contacts, activities and email-in for the cost of a MariaDB. It's dated-looking and endlessly capable — which is also a fair description of most CRMs people actually pay for.
Pipedrive's polish and their marketplace of sales tools
Built-in calling and email sync take config work in Espo
deal pipelines · contact management · activity tracking · email integration
* Percent of the subscription price. Your time is priced at the slider's rate — $0/h ("my homelab time is free and I love it") is a legitimate position. Every number is derived from the record, never hand-written. Price source, checked 2026-08-06.
Runs comfortably on a real VPS (2 GB+).


First-run installer rebuilds the app inside the container and blew straight through a 15-minute health window on the 2GB reference box — budget real time for the first boot, or pre-warm the volume
Not boot-verified in this session — compose is CI-gated (weekly compose-check must pass before this claim hardens)
# EspoCRM — full CRM; apache image + mariadb (first boot installs the app — allow ~15 min)
services:
espocrm:
image: espocrm/espocrm:latest
container_name: espocrm
restart: unless-stopped
depends_on:
espocrm-db:
condition: service_healthy
environment:
ESPOCRM_DATABASE_PLATFORM: Mysql
ESPOCRM_DATABASE_HOST: espocrm-db
ESPOCRM_DATABASE_NAME: espocrm
ESPOCRM_DATABASE_USER: espocrm
ESPOCRM_DATABASE_PASSWORD: espocrm
ESPOCRM_ADMIN_USERNAME: admin
ESPOCRM_ADMIN_PASSWORD: changeme123
ESPOCRM_SITE_URL: http://localhost:8101
ports:
- "8101:80"
volumes:
- espocrm-data:/var/www/html
healthcheck:
test: ["CMD-SHELL", "php -r 'exit(@file_get_contents(\"http://localhost:80/\")!==false?0:1);'"]
interval: 10s
timeout: 10s
retries: 90
start_period: 120s
espocrm-db:
image: mariadb:11
restart: unless-stopped
environment:
MARIADB_DATABASE: espocrm
MARIADB_USER: espocrm
MARIADB_PASSWORD: espocrm
MARIADB_ROOT_PASSWORD: espocrm-root
volumes:
- espocrm-db:/var/lib/mysql
healthcheck:
test: ["CMD", "healthcheck.sh", "--connect", "--innodb_initialized"]
interval: 5s
timeout: 5s
retries: 12
volumes:
espocrm-data:
espocrm-db:
Want a guided install instead? caniselfhostit.com/pipedrive has AI-agent prompts that assume a bare machine — that's their half of the stool, and it's good.
FULL TIMED LOG
# Pipedrive — verdict log - **Date:** 2026-08-10 - **Verdict:** YES — worth it - **Protocol:** v1 (2GB reference env, Docker preinstalled, AI assistant: claude-code) ## Setup evidence - Compose: `compose/pipedrive-espocrm.yml` - Boot: **CI-gated** — not verified on this box; the weekly compose-check workflow is the gate - Setup time recorded: 45 min (boot + configuration to first working workflow) ## What broke / notes - First-run installer rebuilds the app inside the container and blew straight through a 15-minute health window on the 2GB reference box — budget real time for the first boot, or pre-warm the volume - Not boot-verified in this session — compose is CI-gated (weekly compose-check must pass before this claim hardens) ## The call EspoCRM covers pipelines, contacts, activities and email-in for the cost of a MariaDB. It's dated-looking and endlessly capable — which is also a fair description of most CRMs people actually pay for.