Layer 04 · Memory
CRM & audience — keeping the list
This layer's shelf was empty on purpose until a candidate could
be run to ground. On November 9, 2026 two of them were — installed locally and put
through the same test: create a contact and a pipeline item, move it through stages,
read it back, and check the way out. Both earned their stamps, and they are different
tools: a true CRM takes the primary slot, and the table that behaves like software —
this page's original hunch — takes the alternate, with its one material limit stated
where this catalogue prints it.
Primary pick
EspoCRM
A true CRM — contacts, deals and an enforced sales pipeline as native objects — self-hosted, with a free core that carries no per-seat fee.
Evaluated · November 9, 2026
espocrm.com
No affiliate relationship — direct link
What the evaluation was: on November 9, 2026 we
installed EspoCRM 10.1.0 locally — assembled from vendor binaries (a static PHP build
and MariaDB) and installed with its own CLI installer — authenticated to its API,
created a contact and a $1,200 opportunity linked to it, and moved the deal through
EspoCRM's actual pipeline — Prospecting → Qualification → Proposal → Negotiation —
confirming every move on read-back and in the web UI, where the same row sits at
Negotiation with its amount and contact link intact. One honest detail from the log:
a stage name from an older EspoCRM version was rejected with a validation error along
the way — the pipeline enforces its stages rather than accepting free text. That is
the whole basis of this stamp — a hands-on trial, not production use.
EspoCRM is the only candidate that is a CRM: Accounts,
Contacts, Leads, Opportunities, Campaigns, Target Lists, Cases, Knowledge Base,
Documents and Import are all in the free core, and list export is there too. For a
launch list that is about to become a pipeline, that is the shape that holds. Its
costs are real but disclosed and bounded — they are in the facts below, not in a
sales call.
- Free tier
- The self-hosted core is free (AGPLv3): no per-user fee, and no seat or record cap.
- The wall
- Automation is the paywall — workflows/BPM and advanced reports live in a paid extension pack (quotes and invoices in another). The vendor's cloud bundles the extensions at $15/user/month with a three-user minimum and six-month or annual billing — about $270 up front for a one-person operation. And self-hosting means you are the hosting department: you run and patch the PHP + database stack, and its cron job, yourself.
- Price
- Self-hosted core $0. As checked November 9, 2026
Alternate — and why it is the alternate
NocoDB
The table that behaves like software: a single self-hosted program running a staged launch list, with an API in both directions.
Evaluated · November 9, 2026
nocodb.com
No affiliate relationship — direct link
What the evaluation was: on November 9, 2026 we
ran NocoDB's official standalone program (version 2026.06.1 — the newest release
ships no standalone program at all, only container images), created a base and a
“Launch list” table with a stage column (New, Contacted, In conversation, Launched,
Passed), inserted two contacts through its record API, moved one through New →
Contacted → In conversation, and read the table back — the same record, at the same
stage, in the API and in the web UI's grid. The way out is proven by the test itself:
the API that wrote the data reads it all back. (A CSV export endpoint was probed and
not found at the expected paths — recorded as unverified, not absent.)
For the launch-list job — names, stages, next steps — this is
genuinely enough, and it starts in minutes. It is the alternate and not the primary
because pipeline-shaped CRM behaviour is something you model in it, not something it
is — and because of the wall below, which this catalogue states on the face of the
pick: the waitlist-form mechanism, the exact job this layer exists for, is
licence-gated on the current build.
- Free tier
- The community program is free to run yourself, under NocoDB's Sustainable Use Licence (fair-code, not OSI open source — internal use is fine; offering it as a hosted service is not). Its cloud free tier caps at 1,000 records and 3 editors.
- The wall
- Shared form views require an Enterprise licence on this build — the evaluation asked for one and got HTTP 402, ERR_LICENSE_REQUIRED — so a launch list is fed by API or manual entry, not by a NocoDB form. External-database connections are a paid tier, and the standalone program trails the main release line by roughly four months.
- Price
- Self-hosted $0; cloud free tier, then per-seat plans. As checked November 9, 2026
Not run, with reasons
The rest of the record
SuiteCRM was not needed: it is the heavier route of the same
PHP-stack family as the primary, and both a PHP-stack candidate and a standalone
candidate ran — a third evaluation would add breadth, not a missing verdict.
Twenty was skipped: it is distributed as a containerised stack
expecting PostgreSQL and Redis, and the evaluation environment has no container
runtime. The household-name CRM suites remain where this page
originally left them — unevaluated, neither picked nor panned: they cannot be trialed
at all without opening an account first, and this directory does not open accounts to
fill shelves or stamp verdicts from brochures.