CRM and sales decision

Attio

A competent engineer can build a useful, narrow CRM replacing core record management, search, imports, and simple workflows in ~30 hours, but Attio’s scale, AI agent orchestration, call intelligence, and enterprise features are not practical to reimplement cheaply.

Visit website
Subscription$44/month ✓ verified
Initial build30 hours
Monthly upkeep8 hours + $200
Evidence3/3 runs agree

Open-source builds that already do this

Every project below is open source and already does this job today. Fork one, self-host it, or take the parts you need - the build prompt further down assumes an empty file, and this is the shortcut past that. Licences differ; check the one on each card before you ship. All Attio alternatives, with the arithmetic →

What a replacement has to do

  • A minimal, self-hosted replacement would store contacts/companies, ingest emails/calendar events, provide search and basic record views, run simple rule-based workflows (triggers -> actions), and allow exporting/importing CSVs.

What it still won’t have

  • Agentic multi-step AI agents and proprietary orchestration
  • Call intelligence (recording/transcription/analysis)
  • Large-scale reliability and throughput (MCP/API capacity)
  • Enterprise admin, SSO/SCIM, and audit controls
  • Built-in data enrichment and vendor-managed integrations catalogue

What remains hard

  • Infrastructure at scale2.6M MCP calls/month
  • Infrastructure at scale400M API calls/week
  • Brand trustTrusted by 30,000+ customers. From first agent to enterprise scale.
Read the build prompt

First-year cost

Keep paying

Paying ischeaper in year one.

On cash alone, building overtakes the subscription at 5 seats.

Paid seatsseats

Money you would actually spend

Keep paying

Subscription price × seats × 12

Build it

AI build APIs + hosting

Time you would spend

What you would spend

What we assumed

The verdict above measures whether you could build it. This one is only about money.

Runnable build prompt

Not run yet
Build a minimal CRM on Postgres + Node.js (Express) + React. In scope: Postgres schema for contacts/companies/deals/activities; CSV import with field mapping and dedupe; IMAP connector to sync one user's email and attach messages to records; full-text search using Postgres tsvector; a simple rule engine (record created/updated triggers -> actions: assign owner, update field, send templated email via SMTP); React UI to browse/search/edit records and configure workflows. Out of scope: multi-tenant scaling, call recording/transcription, enterprise SSO/SCIM, large-scale enrichment services. Include logging, retry/error handling for connectors, and unit/integration tests for import, sync, and workflow components.
How we checked5 sources · 3/3 runs agreed · evidence score 64

How the score was reached

  • Partly verdict base52
  • An open-source build was found+5
  • 5 cited sources+3
  • Price verified on pricing page+3
  • 3/3 assessment runs agreed+4
  • Hard moats found in the evidence-3
  • Evidence score64

The base comes from the verdict. Everything under it is a check that either happened or did not, and each one is a fact frozen in this record rather than a judgement made at render time - so the same evidence always produces the same number.

How scoring works →

Cited sources · 5

Every page the run actually retrieved.

Integrity checks

What held up, and what did not.

✓ Price read off the page✓ 3 independent runs, one answer✓ Citations limited to fetched pages! 3 moats quoted from the page