MyCRM
Software you own, not rent

A CRM that already knows your customers.

MyCRM is one Go binary and one database. It plugs into the systems you already run — your commerce backend, Stripe, SendGrid — so a contact arrives with their purchases, licenses, activations and tickets already attached. Then it gives you the parts a spreadsheet and an admin panel cannot: a pipeline, a task inbox, and renewals with an owner.

Built for a team of two to twenty that has outgrown the spreadsheet and cannot justify a seat licence each.

Custom objects & fields Append-only customer timeline REST API + scoped keys SQLite or PostgreSQL Self-host or hosted
What it is for

Three jobs. Everything else serves them.

We wrote the exit criteria before we wrote the code. If MyCRM does not do these three things on a Tuesday morning, it has failed.

Stop losing leads Hosted forms post straight into the system of record. A submission becomes a contact with its source and campaign attached, a lead.captured event on the timeline, and a follow-up task with a due date. No inbox, no forwarding rule, no address that quietly stopped working.
Renewals have owners A renewal playbook watches entitlement expiry dates. Sixty days out it opens the renewal deal, assigns a person, and sets the follow-up task. Run it three more times and it creates nothing — it is idempotent by design, so it cannot spam your pipeline.
Work the day One inbox that splits into overdue, today, this week and unassigned. One board of deals by stage. Saved views for the segments you actually chase. Complete, snooze, reassign, quick-add — without leaving the page.
How it works

Connect → 360 → work → automate.

Four steps, in order. Nothing here needs a consultant or a data migration project.

Connect

Point MyCRM at your commerce backend and it mirrors purchases, licenses, activations, tickets and web events over a read-only export. Add Stripe (read-only) and SendGrid delivery events the same way. Each connector keeps its own cursor, so a restart resumes rather than replays.

See the whole customer

Every fact becomes an idempotent event on one append-only timeline, keyed to a contact by email. Open a contact and you see what they bought, what they run, what they asked, what they were sent, and when they last showed up.

Work it

Move deals through the pipeline, clear the task inbox, save the filters you keep retyping as shared views. Ownership is one concept — every record has an owner, and @me works everywhere.

Automate the routine

Renewal, close-won and win-back playbooks handle the parts you would otherwise forget. Every play previews before it runs and ships switched off, so you see the exact list of records it would touch before it touches one.

Salesforce, HubSpot, and a team of five

At five people, the trade is ownership.

We will not win a feature count against Salesforce or HubSpot, and this page is not going to pretend otherwise. Here is the trade we think is worth making, and below it the list of what we do not have.

No per-seat treadmill

Self-hosting is one license for the whole team. Hiring your sixth person does not change the bill, and nobody has to decide who is worth a seat.

Your data, in your database

A PostgreSQL database or a single SQLite file, on hardware you control. You can open it with psql. Nothing sits behind an export ticket or a data-warehouse add-on.

Custom objects without a certification

Objects and fields are metadata, not code. Add a field, add an object, add a formula from the settings screen. There is no proprietary language to learn and no partner to hire.

A real API on day one

Every object is at /api/v1, with read, write and admin scoped keys. It is the same API the built-in UI calls — there is no second-class public tier.

It ships knowing your products

Purchases, licenses, activations and heartbeats arrive through connectors, so trial → purchase → renewal is modelled out of the box rather than being a paid integration.

Hosted and self-hosted are the same artifact

Our hosted instances run the identical binary you would run. Leaving is copying a data directory — which is the only version of “no lock-in” that means anything.

Salesforce and HubSpot are trademarks of their respective owners, named here only to describe the alternatives. We make no claim about their current pricing or features.

Honest limits

What MyCRM does not do yet.

This is the whole list, not a sample. We would rather you find it here than in month two.

Not built

  • Email sequences and marketing campaigns. There is no marketing send in the product at all.
  • An automation-rules builder. Renewal, close-won and win-back playbooks are shipped plays, not a canvas you draw on.
  • A report builder. There is one fixed dashboard.
  • Field-level permissions and record sharing. Roles are admin, member and read-only.
  • SSO. Sign-in is a magic link plus optional TOTP.
  • Mobile apps. The web UI is responsive; that is the whole story.
  • Two-way mail sync.
  • AI features of any kind.

On the roadmap, in this order

  • Automation rules, email sequences and templates, lead scoring, dashboards.
  • A custom-object and formula editor in the UI, a report builder, field-level permissions, outbound webhooks.
  • Two-way mail through myMail.

No dates. When something ships it moves off this list and onto Features.

Get started

Tell us what you are running now.

If you tell us which systems your customer data lives in today, we can tell you within a day whether MyCRM connects to them — and if it does not, whether it is a week of work or a phase.