Your CRM's $2,500 Enrichment Feature Costs Me Half a Cent Per Contact

Your CRM's $2,500 Enrichment Feature Costs Me Half a Cent Per Contact

We built a contact enrichment pipeline for our Notion CRM using Apollo.io, HarvestAPI via Apify, and Zapier — for roughly $0–5/month. Here's the full architecture, the cost breakdown, and why CRM vendors charging $2–3K/year for the same capability is a broken model.

Apr 14, 2026

TL;DR

A client was recently quoted $2–3K/year by Nutshell just to add contact enrichment to their CRM. That's a feature tax, not a product. I built an enrichment pipeline for our Notion CRM using Apollo.io, HarvestAPI (via Apify), and Zapier that does the same job for roughly $0–5/month at typical SMB volumes. Here's how, and why the economics of CRM enrichment are fundamentally broken.

The $2,500 Feature Tax

I was speaking with a client last month, a ~20-person company running their sales pipeline in Nutshell CRM. They were generally happy with the tool, but they wanted one thing: when a new contact lands in the CRM, automatically pull in their job title, company, LinkedIn profile, and a photo. Basic stuff. The kind of thing you'd assume comes standard.
Nutshell's answer: buy the Nutshell IQ add-on. It's a paid bolt-on that starts at $37/month and scales from there. For this client, the quoted cost came to $2–3K/year.
This isn't unique to Nutshell. HubSpot gates enrichment behind its Sales Hub Professional tier, which runs $100/seat/month billed annually, or $500/month for a five-seat team. Salesforce requires add-ons or third-party marketplace apps. Even smaller players like Pipedrive and Freshsales either don't offer enrichment at all or bundle it into tiers that cost 3–5x the base plan.
It's the classic land-and-expand dark pattern that runs through CRM, and SaaS more broadly. Get teams onto the platform with an affordable base plan, wait until the data, workflows, and habits are deeply enough embedded that switching costs become prohibitive, then gate every additional capability behind an expensive add-on or plan upgrade. Contact enrichment is one of the clearest examples: it's a feature every sales team needs from day one, but vendors know you won't discover that until you're already locked in. By then, the calculus isn't "is this worth $2–3K/year?" — it's "is it worth migrating our entire pipeline to avoid paying $2–3K/year?" The answer, for most teams, is no. And the vendors are counting on that.

Notion as a CRM: The Missing Piece

I've written several posts about building a full CRM in Notion - contacts, companies, deals, emails, meeting notes, invoices, all connected through a series of native and Zapier automations. For lean teams already living in Notion, the economics are compelling: you're paying for Notion anyway, Zapier scales with usage rather than seats, and you can build the system around your workflow instead of paying for a bunch of features you’re not using.
But until recently, contact enrichment was still a gap.
Every time I've pitched a Notion CRM to a founder or ops lead, the conversation eventually arrives at the same question: "But can it automatically fill in contact details?" Without enrichment, someone on the team is Googling every new contact, copying LinkedIn bios into fields, and hunting for email addresses. Manually. Like an animal.
As you may have picked up by now, eliminating repetitive, manual tasks is my love language. So I built the enrichment.

The Stack: Apollo + HarvestAPI + Zapier

The enrichment pipeline runs on three components, each chosen for a specific reason.

Apollo.io — The Identity Resolver

Apollo isn't the primary enricher in this stack. It's the identity resolver. When a new contact arrives with only an email address, Apollo's People Enrichment API takes that email and returns the person's LinkedIn URL, current job title, company name, and location. That LinkedIn URL is the key that unlocks everything else.
Apollo's free tier gives you 75 enrichments per month. For most SMBs adding 50–100 new contacts per month, that's either sufficient or close to it. The next paid tier jumps to $49/user/month for 30,000 enrichments per year — there's no middle ground, which is frustrating, but for the majority of small teams the free tier covers the workload. And importantly, the Apollo dependency isn’t critical: it can easily be swapped out within the Zapier workflow for another similar provider, like Prospeo or People Data Labs, which both have permanent free tiers.

HarvestAPI via Apify — The Primary Enricher

HarvestAPI's LinkedIn Profile Scraper, hosted on the Apify platform, is where the real enrichment happens. Give it a LinkedIn URL, and it returns the person's current job title, company, full work history, education, skills, and their current LinkedIn profile photo.
The cost structure is simple: $4 per 1,000 profiles, which works out to roughly $0.004 per profile. Pricing is fully usage-based, so there's no fixed commitment. Apify's free tier includes $5/month in platform credits, so for low volumes you may not pay anything at all. All billing runs through Apify; no separate HarvestAPI account to manage.
Why HarvestAPI and not one of the established enrichment APIs? Two reasons.
First, LinkedIn has no usable API for pulling other people's profile data. The old workaround was Proxycurl, which offered a clean REST API for LinkedIn scraping. LinkedIn (via Microsoft) sued them in 2025, and the service was shut down. That left a gap in the market that HarvestAPI and similar Apify actors have filled.
Second, the alternatives generally require fixed monthly commitments if your usage exceeds the free tier. People Data Labs offers 100 free lookups per month, but their Pro tier is $98/month — the same pricing cliff problem as Apollo. Clearbit was acquired by HubSpot in 2023 and rebranded as Breeze Intelligence — it's no longer available as a standalone product, which only reinforces the lock-in dynamic. ZoomInfo is in the thousands. For an SMB doing 50–100 lookups a month, these are all absurdly overpriced.

Zapier — The Orchestrator

Zapier ties everything together. The workflow is triggered by a Notion database automation whenever a contact record is created or updated with a new email address or LinkedIn URL. From there, it branches into two paths depending on what data exists.

How It Works

The workflow is triggered automatically whenever a contact record is created or updated in the Notion CRM. Depending on what data exists, Zapier routes the enrichment through one of two paths:
Path A: LinkedIn URL exists → HarvestAPI directly — the simplest case. If the contact already has a LinkedIn profile URL in our CRM, Zapier sends it straight to HarvestAPI for full profile enrichment. Cost: ~$0.005.
Path B: No LinkedIn URL → Apollo → HarvestAPI — the most common case. Apollo resolves the email to a LinkedIn profile URL, which then goes to HarvestAPI for the full profile. If Apollo can't find a LinkedIn URL, it passes whatever it did return (job title, company) directly to the update step so the contact still gets partially enriched. Cost: ~$0.005.
Both paths converge on a shared sub-Zap that writes the enriched data back to Notion, updates the profile photo, and marks the record as enriched. The sub-Zap pattern keeps things modular — if I need to change how data gets written, I update it in one place rather than across every branch.
Here's the full Zapier canvas:
notion image

The Cost Comparison

Let's make this concrete. For a team adding 75 new contacts per month — a reasonable volume for an SMB with an active sales pipeline:
Approach
Monthly Cost
Annual Cost
Nutshell CRM + IQ (client quote)
~$200–250
$2,400–3,000
HubSpot Sales Hub Professional (5 seats)
$500
$6,000
Apollo + HarvestAPI + Zapier
$0–5
$0–60
The Apollo + HarvestAPI stack at 75 contacts/month costs approximately $0.38 in HarvestAPI credits (75 × $0.005), which is comfortably within Apify's free tier. Apollo's 75 free enrichments cover the volume exactly. Your only hard cost is whatever you're already paying for Zapier and Notion.
Even at 200 contacts/month — which would push past Apollo's free tier — you'd still be under $5/month in enrichment costs. The maths isn't subtle. We're talking about a 50–100x cost difference for the same fundamental capability.

What the Enriched Record Looks Like

The enriched contact record in Notion includes:
  • Current job title and company: pulled from the live LinkedIn profile, not a stale database
  • LinkedIn profile URL: linked and clickable
  • Work history: previous positions and companies
  • Education: degrees and institutions
  • Location: city and country
  • Profile photo: the actual current LinkedIn avatar, set as the Notion page icon
  • Bio/summary: the person's LinkedIn headline or about section
The profile photo is worth calling out specifically. HarvestAPI returns the current avatar URL from LinkedIn, which is why the sub-Zap has a dedicated path for updating the Notion page icon. When you're scrolling through a contacts database, having real faces on every record makes a material difference to usability.

The Honest Limitations

Is this solution as powerful or robust as a dedicated enrichment tool that costs thousands of dollars a year? No. But is it good enough for most startups and small businesses? Yes.
This is the key insight of Clay Christensen's theory of disruptive innovation: disruption rarely arrives as a superior product. It arrives as a cheaper, more convenient, technically-worse-but-good-enough alternative that the incumbents dismiss — right up until it eats their market from below. That's what this stack is. It won't match ZoomInfo's database depth or HubSpot's one-click setup, but for a lean team that needs job titles, LinkedIn profiles, and photos on every contact record, it does the job at a fraction of the cost.
Clay Christensen’s disruptive innovation in one chart
Clay Christensen’s disruptive innovation in one chart
With that framing in mind, here are the specific trade-offs.
  • This requires technical setup. Building the Zapier workflow, configuring the API connections, and mapping the data fields to your Notion schema takes 4–8 hours of focused work if you know what you're doing. It's not a plug-and-play feature — it's an automation project. For teams without someone comfortable with Zapier and API integrations, this is where a consultancy like ours comes in.
  • Data freshness depends on when LinkedIn profiles were last updated. If someone changed jobs two weeks ago but hasn't updated their LinkedIn, the enrichment will return their old role. This is true of every enrichment provider, not just this stack, but it's worth setting expectations.
  • Apollo's free tier has limits. 75 enrichments per month is tight for growing teams. If your volume exceeds that consistently, you're either paying Apollo's $49/user/month (which is still far cheaper than CRM-bundled enrichment) or finding an alternative identity resolver with a more generous free tier.

The Bigger Picture

Contact enrichment is a bellwether for how CRM vendors think about their customers. When a vendor charges $2–3K/year for what amounts to a few API calls to a third-party data provider, they're telling you something about their business model: every feature you need is a monetisation opportunity.
For lean teams, this model is increasingly hard to justify. Notion as a workspace platform, combined with Zapier for orchestration and best-in-class point tools for specific capabilities, gives you an alternative that's cheaper, more flexible, and — once set up — requires less ongoing maintenance than most dedicated CRMs.
And the economics are only moving in one direction. Enrichment data is becoming more commoditised, not less. Every year brings more providers, more free tiers, and more automation platforms that make it trivial to stitch them together. The CRM vendors charging premium prices for enrichment are selling you a markup on a commodity, and the gap between what they charge and what it actually costs will only widen.
Enrichment was the missing piece. With this stack, it's solved.

Want This for Your Team?

We build custom Notion CRM systems with deep automation. including contact enrichment, email tracking, meeting intelligence, and deal lifecycle management. If you're tired of paying enterprise prices for table-stakes features, let's talk.