Most teams shopping for a CRM are asking the wrong question. They line up Salesforce against HubSpot, compare per-seat prices and feature checklists, and pick one. Then eighteen months later they're paying a Salesforce admin $120K a year to keep a system running that still doesn't match how they sell, and the question they should have asked, "does any product on the shelf actually fit our process, or are we about to pay forever to bend ourselves into someone else's defaults?", never got asked at all.
This is a build-vs-buy decision dressed up as a vendor-selection decision. And the honest answer for most companies is buy — Salesforce or HubSpot will serve a standard sales motion better and cheaper than anything you'd build. But there is a real, identifiable set of companies for whom a custom CRM is the correct, money-saving call, and they almost never recognize themselves until they've already spent two years and six figures discovering it the hard way.
Here's the framework we use when a client asks. It's a cost model, a few rules that catch the bad decisions, and concrete 2026 numbers so you can run the math yourself before you sign anything.
The three options, honestly
Let's be precise about what you're actually choosing between, because the marketing blurs it.
- HubSpot is the easiest to start, the friendliest for a small-to-mid sales team, and the one whose pricing punishes you most predictably as you grow into the paid tiers and add marketing, service, and operations hubs.
- Salesforce is the most configurable off-the-shelf platform on earth. It can be molded into almost any shape — which is exactly the trap. The configuration is the cost. A "Salesforce build" is a custom software project with a license bill stapled to it.
- A custom CRM is software you own, shaped exactly around your pipeline, with no per-seat tax. You also own the maintenance, the roadmap, and the consequences of getting the data model wrong.
The instinct to treat HubSpot and Salesforce as "buying" and custom as "building" is misleading. A heavily customized Salesforce org is a build — you're just building on top of a platform you also rent. That hybrid is often the right answer, and we'll get to it.
The total-cost math nobody does
When people compare custom against Salesforce or HubSpot, they compare the build quote against twelve months of subscription. That's the wrong comparison, and it's why so many of these decisions go bad in year three.
Buying isn't just the subscription. Building isn't just the initial build.
The number people forget on the build side is maintenance: budget 15 to 25 percent of the original build cost every year, forever, just to keep a custom CRM alive and current. A $90K build is really a $90K build plus roughly $18K a year. The number people forget on the buy side is the admin — a real Salesforce org at scale needs a dedicated administrator, and that's a $100K–$140K salary that never shows up on the pricing page.
Run the real five-year number for both. Most people are shocked how close they are once you include seats, admin, and maintenance honestly.
$50–$300
Per seat / month (Salesforce, HubSpot paid tiers)
$60K–$150K
Typical custom CRM build (2026)
15–25%
Annual maintenance on a custom build
$100K–$140K
Loaded cost of a dedicated Salesforce admin
The seat-license trap
This is where custom most often quietly wins, and where buyers most often get blindsided.
Per-seat pricing is fine at 10 users. It's a rounding error. At 40 users you notice it. At 150, 300, 600 users it becomes a structural tax on every single hire — a line item that grows in lockstep with your headcount and never stops. Worse, the seats that hurt most are often the ones that barely use the CRM: the warehouse lead who needs read-only order status, the 200 field technicians who each touch three screens, the dispatchers who only update a status field.
Do the arithmetic that vendors don't print:
- 30 sales reps on a $100/seat plan: $36K/year. Buy. Easily.
- 120 mixed users (40 power, 80 light) on a $150 blended seat: ~$216K/year — over five years that's north of a million dollars, and a $120K custom build that costs $24K/year to maintain looks like a bargain.
- A field-service company putting 400 technicians on per-seat licensing: the license bill alone funds a full custom build inside eighteen months.
A pattern we see constantly: a company starts on HubSpot's Starter tier, then needs automation (Professional), then custom objects and reporting (Enterprise), then adds Service and Operations hubs — and the "$50 CRM" is now a $40K–$80K annual bill for a 25-person company. The price didn't change. Your needs did, and the tiers were designed to capture exactly that growth.
When you should just buy
Most companies land here, and there's no shame in it. Buy when the CRM is plumbing, not your edge.
- Your pipeline is standard. Leads come in, get qualified, move through a handful of stages, close or don't. HubSpot or Salesforce models this out of the box. Don't build a CRM to reinvent a category five mature vendors already serve well.
- You're under ~40 users with a sales-only footprint. Per-seat economics are fine and the platform's velocity beats anything you'd build.
- Speed matters more than fit. You need it running next month, not next quarter.
- Your requirements are stable and standard. You don't have weird, defensible workflows no vendor supports.
For a 20-person B2B sales team with a normal pipeline, the answer is almost always HubSpot. We tell clients this regularly, and a fair number of our CRM engagements end with us configuring HubSpot or Salesforce well rather than building from scratch — that's still CRM work we do, just the buy-and-extend version. If you're specifically torn between the two platforms, our HubSpot vs Salesforce comparison breaks down the trade-offs at each company size.
When building actually pays off
Build when the CRM is the edge, or when buying forces you into a shape that costs more than building would.
- The workflow is your differentiator. The way you route, score, or service deals is the reason customers choose you. Templatize it into someone else's tool and you look like everyone else.
- No platform fits without painful workarounds. You're paying for HubSpot plus three integrations plus a small army of Zapier zaps plus a spreadsheet someone updates by hand. That duct tape has a salary cost, and it breaks.
- Per-seat pricing punishes your growth. See above. Past roughly 100 mixed users, the seat math frequently flips to build.
- The data is the asset. You want full ownership of the data model because it compounds in value — and you want it sitting next to your other systems, not locked in a vendor's API limits.
- You're stitching CRM, operations, and a custom workflow into one system. This is the most common real case. The "CRM" is actually an operations platform, and no CRM vendor sells an operations platform shaped like yours.
A concrete pattern: a 40-location dental group we built for didn't need a "CRM" in the brochure sense at all. They needed patient intake, recall scheduling, insurance-status tracking, and per-location pipeline visibility in one system, wired to their phone tree. Every off-the-shelf CRM forced an awkward data shape and a per-seat bill across 300+ staff. The custom build paid for itself against license savings alone, and the workflow fit was the actual point.
Buy the core, build the edge
This is the rule that resolves most "but it's not really either" situations — and in 2026 it's how most good CRM systems actually get built.
You almost never need to build the whole stack. You build the thin layer that's differentiated and buy everything underneath it.
- Buy or extend the standard objects, auth, email sync, and calendar plumbing. Rolling your own email-deliverability stack in 2026 is a liability, not a feature.
- Build the pipeline logic, scoring, routing, and the interface that make your sales motion yours.
In practice that means a custom build is mostly integration: a real database you own for the data model, an auth provider, Twilio for calls and SMS, your email provider, and your differentiated logic stitched on top. That's why "custom CRM" no longer means "from scratch," and why the build side of the math is cheaper than it was five years ago. The leverage is being precise about which 20 percent is actually yours.
A heavily customized Salesforce org is the buy-the-core, build-the-edge path with a license attached: you rent the platform and build the differentiation as configuration and code on top. It's a legitimate choice — just price it as the custom software project it is, admin salary included, not as a subscription.
Concrete 2026 numbers
Ballparks we'd actually quote, consistent with our custom software cost guide and internal tool cost guide:
These assume a competent team working in two-week sprints with a paid discovery up front — which is how we scope, so the number after discovery is a fixed bid, not a range. A "CRM" that's really an internal operations tool tracks closer to the internal tool cost guide than to a sales-CRM brochure.
Migration paths: the part everyone underestimates
The build-or-buy decision is the headline. Migration is where projects actually die, regardless of which path you pick.
Off a spreadsheet onto anything
The easiest start and the dirtiest data. Spreadsheets accumulate duplicate contacts, inconsistent stage names, and free-text fields that mean five different things. Budget more time for deduplication and field normalization than for the import itself. Never migrate dirty data into a clean system — you'll teach the new tool all the old tool's bad habits.
Off HubSpot or Salesforce onto custom
Export is the easy part; the hard part is the relationships — the links between contacts, companies, deals, activities, and custom objects. A flat CSV export loses the graph. Plan for an API-driven migration that preserves associations, run it twice (a full dress rehearsal, then the real cutover), and keep the old system read-only for 30–60 days as a safety net.
Between Salesforce and HubSpot
People assume platform-to-platform is simple. It isn't — the object models differ, and Salesforce's flexibility means your org has custom objects HubSpot has no native home for. This is often the moment a company realizes the migration cost is high enough to reconsider whether a custom build was the answer all along.
The universal rules, whichever direction you're going:
- Clean before you migrate, not after. Dedupe, normalize stage names, fix owners.
- Preserve associations, not just records. The graph is the value.
- Run a rehearsal migration into a staging environment and have sales validate it.
- Keep the old system live and read-only for a buffer period.
- Migrate history selectively. You rarely need every activity from 2019; you need open deals, active contacts, and the last 12–24 months.
How to decide in an afternoon
Score the decision on five questions before you sign a contract or write a line of code:
- Is our sales process our differentiator, or plumbing? Plumbing leans buy.
- What's the real five-year total cost of each path — including seats and a Salesforce admin on the buy side, and 15–25% annual maintenance on the build side? Run the actual number.
- How many users, and what's the mix? Past ~100 mixed users, run the seat math hard; it often flips to build.
- What does our current workaround cost us today? If it's high, a build's payback is faster than it looks.
- Can we buy the core and build only the edge? Usually yes — and that's usually the answer.
If you want help running that math on your specific situation, our CRM Development practice does build-vs-buy assessments before any build, and plenty of them end with us recommending you stay on HubSpot. Pairing a CRM with process automation is often what makes either path actually pay off — the value was never the contact list, it's the wiring.
FAQ
Is a custom CRM cheaper than Salesforce or HubSpot?
Not upfront — a custom build runs $60K–$150K versus a subscription you can start this week. It gets cheaper over a five-year horizon specifically when per-seat licensing scales painfully (roughly 100+ mixed users) or when you'd otherwise pay for a platform plus a stack of integrations and a dedicated admin. Below ~40 sales users with a standard pipeline, buying is almost always cheaper. Run the five-year number including seats, admin, and maintenance.
At what team size does building your own CRM make sense?
There's no hard threshold, but the seat math usually starts favoring a build somewhere past 100 mixed users — especially when many of those users are light-touch (field techs, ops, read-only roles) who still incur a full per-seat license. The other trigger is independent of size: if your workflow is genuinely your competitive edge and no platform fits without heavy workarounds, building can make sense at 25 users.
How long does it take to build a custom CRM?
A focused custom CRM for one team with a clear pipeline takes 8–12 weeks to a first production version. A larger system that doubles as an operations platform runs 3–5 months, phased so you're live on the core early and adding depth after. We work in two-week sprints with a paid discovery up front, so you get a fixed bid before the build starts rather than an open-ended estimate.
Should I customize Salesforce or build from scratch?
Heavily customizing Salesforce is itself a build — you're renting the platform and building your differentiation on top of it, plus the cost of an admin to keep it sane. It's the right call when you want a vendor's ecosystem and integrations under you and your customization is configuration-heavy rather than deeply custom. Build from scratch when even Salesforce's flexibility forces an awkward data shape, or when the per-seat bill across a large or light-touch user base outweighs the platform's value. Price both as the software projects they are.
What's the hardest part of migrating off an existing CRM?
Preserving relationships, not exporting records. A flat CSV loses the links between contacts, companies, deals, and activities — and that graph is the actual value of your CRM data. Plan an API-driven migration that keeps associations intact, run a full rehearsal into staging, have sales validate it, and keep the old system read-only for 30–60 days. Clean and dedupe before you migrate, never after.
Related services:
Read next: