Learn Build on Elastbiz
Build on Elastbiz

How to run a CRM on Elastbiz Tables

You do not need a separate CRM product. A CRM is a few partitions, a couple of views, and an automation. Here is how to stand one up on Tables in an afternoon.

A CRM is, structurally, a small graph: companies, the people at them, the deals in flight, and the activity attached to each. On Elastbiz every one of those is a partition of rows on the same substrate — which means Mail, Files, and AI workers can all see it without a single integration.

What you will build

  • A Customers partition (companies) with a per-row subtable of contacts.
  • A Deals partition with a status column and an assignee.
  • A Kanban view of Deals by stage, and a master-detail view of a Customer with its deals and files.
  • An automation that pings a Connect channel when a deal moves to Won.

Step by step

  1. Create the Customers partition. Columns: Name, Domain, Tier, Owner. Each customer row gets a subtable for Contacts (name, email, role) — the two-axis model means contacts live inside the customer, not in a disconnected table.
  2. Create the Deals partition. Columns: Title, Amount, Stage, Customer (a reference to a Customers row), Assignee. The reference column is what lets a Customer show all of its deals in one view.
  3. Add a Kanban view of Deals grouped by Stage. Drag a card from Qualifying to Won and the row updates — the board is just a view over the same rows.
  4. Open a Customer in master-detail. The split view shows the customer on the left and its deals, contacts, and linked files on the right — everything attached to that one row.
  5. Wire the win automation. On a Deal row changing Stage to Won, post to your #sales channel in Connect. Because chat is on the same substrate, the message can reference the deal row directly.
  6. Point AI at it. Give an AI worker a token scoped to these partitions; it can now summarise a customer, draft a follow-up email through Mail, and drop an AIRecord of what it did onto the customer row.
Why this beats a bolt-on CRM: the email thread in Mail, the contract in Files, and the deal row in Tables are the same graph. There is no nightly sync job, and the AI can walk from a message to a deal to a file in a single query.

Where to go next

Add a public form to capture inbound leads straight into Deals, or a Mail rule that turns sales@ messages into rows. See Tables for the underlying primitives, or read how to run invoicing on the same substrate.

Share on LinkedIn

Build it on your own substrate.

Every walkthrough here runs on Tables — self-host it under Elastic License 2.0 or open it on our cloud.