Monica
Personal CRM to remember the people you know
Monica is a personal CRM that helps you record and remember details about friends, family, and personal contacts. It targets individuals who want to nurture personal relationships. It is deployed via Docker or a PHP stack.
Key features
- Tracks personal relationships
- Reminders for important dates
- Notes, gifts and activities
- Contact journaling
Pros & cons
Strengths
- Unique personal CRM focus
- Helps maintain relationships
- Open source
Trade-offs
- Not for business sales
- Development pace varies
Monica replaces
Last reviewed Aug 26, 2026 · 808 words
Monica will not run a sales pipeline, and comparing it to Salesforce or HubSpot misses what it is. It is a CRM for the people in your life: it holds your friend's kids' names, the date her father died, what you gave her last birthday, and it emails you 7 days before the next one. Nothing else in self-hosting does this job, which is why a PHP app with a variable release pace has 25,109 stars. Whether it is worth a 512 MB container depends on one thing: whether you will open it after the conversation, not just during the setup weekend.
What you actually record
A contact in Monica carries relationships (partner, children, colleagues), a "how we met" note, activities you did together, gifts given and ideas for the next one, debts in both directions, documents, tasks, and dated journal entries. Reminders attach to any of it, one-off or recurring. The point of the structure is retrieval: before a call, one page shows the last 3 things you talked about and the thing you promised to send. It is deliberately single-user in spirit even though the app supports several accounts and an API, and there is no pipeline, stage or deal object anywhere.
Docker: three containers, and the cron one does the work
The official image is monica on Docker Hub; the current stable line is v4. It needs a MySQL-compatible database and a 32-character APP_KEY:
services:
app:
image: monica:4
depends_on: [db]
ports: ["8080:80"]
env_file: .env
volumes: ["monica-data:/var/www/html/storage"]
restart: unless-stopped
cron:
image: monica:4
command: cron.sh
depends_on: [db]
env_file: .env
volumes: ["monica-data:/var/www/html/storage"]
restart: unless-stopped
db:
image: mariadb:11
environment:
MARIADB_DATABASE: monica
MARIADB_USER: monica
MARIADB_PASSWORD: change-me
MARIADB_RANDOM_ROOT_PASSWORD: "yes"
volumes: ["monica-db:/var/lib/mysql"]
restart: unless-stopped
volumes:
monica-data:
monica-db:
The .env file needs APP_KEY, DB_HOST=db, DB_USERNAME, DB_PASSWORD, APP_URL set to the public address, and the MAIL_* variables for SMTP. The cron container is the piece people drop to save memory, and it is the piece that sends reminders. Without it Monica is a pretty address book that never emails you, and you will not notice for 3 months. Set APP_ENV=production and APP_TRUSTED_PROXIES when a reverse proxy sits in front, or the generated links come out wrong.
Everything valuable in Monica leaves through email. Use an SMTP relay you already monitor rather than a fresh account: a transactional provider's free tier, or the same relay your other self-hosted apps use. Send a test reminder for tomorrow on day one, because a misconfigured MAIL_FROM_ADDRESS fails silently in the log and loudly at a missed anniversary.
CardDAV gets contacts onto your phone
Monica v4 exposes CardDAV and CalDAV endpoints under /dav/, so the phone's contacts app can subscribe directly, and birthdays land in your calendar. Sync is one-way in spirit: treat Monica as the source of truth, edit there, and let the phone follow. If you already keep contacts in a Nextcloud address book, pick one master; two-way syncing between the two is a recipe for duplicates.
The pace is the honest caveat
Monica's next-generation rewrite has been in progress for years while v4 receives maintenance, and the release cadence reflects a small team with day jobs. That is not a reason to avoid it, because v4 is stable and your data is one mysqldump plus a storage directory away from portable. It is a reason to keep your expectations at "works and is maintained" rather than "ships features quarterly", and to take the data export question seriously: Monica offers a full SQL export and vCard export from the settings page, and the API returns everything as JSON. The hosted version at monicahq.com exists too, at about 9 dollars a month at last check, and is the sane choice if you want the app without the container.
If you actually wanted a business CRM
Stop here and look at the CRM category. EspoCRM is the mature choice for a small company with leads and deals, and Twenty is the modern one if you want a Notion-like feel. Neither remembers your niece's birthday, and Monica will never track a quarter's revenue.
What I'd do
Run the three-container stack behind a reverse proxy, put it on the same host as your other PHP apps to share memory, wire SMTP through a relay you already trust, and send yourself a test reminder before adding a single contact. Then spend an hour importing the 30 people who matter, with one note each about the last time you spoke. That hour is the whole value; the software just keeps it from fading.
Compare Monica
18 head-to-head comparisons.
- Monica vs Twenty
- Monica vs Odoo Community
- Monica vs ERPNext
- Monica vs Krayin
- Monica vs Dolibarr
- Monica vs SuiteCRM
- Monica vs Fat Free CRM
- Monica vs Frappe CRM
- Monica vs EspoCRM
- Monica vs Django-CRM
- Monica vs Corteza
- Monica vs YetiForce CRM
- Monica vs Atomic CRM
- Monica vs CiviCRM
- Monica vs OroCRM
- Monica vs Tracardi
- Monica vs Vtiger CRM
- Monica vs OpenCRX
Similar crm & business apps apps
Twenty
CRM & Business AppsModern open-source CRM alternative
Replaces Salesforce, HubSpot
Odoo Community
CRM & Business AppsModular open-source business management suite
Replaces Salesforce, SAP
ERPNext
CRM & Business AppsOpen-source ERP for growing businesses
Replaces SAP, NetSuite
Krayin
CRM & Business AppsFree and open-source Laravel-based CRM
Replaces Salesforce, HubSpot
Snipe-IT
CRM & Business AppsOpen-source IT asset management system
Replaces ServiceNow, Asset Panda
IDURAR ERP CRM
CRM & Business AppsOpen-source ERP and CRM built on the MERN stack
Replaces QuickBooks, Zoho Books