100% CRM Cleanup CRM Cleanup Data Enrichment Account Scoring
Loom walkthrough · Spara
Inside the Spara build: the Clay master enrichment table, tier-based account scoring, the historical traffic table scored from monthly SEMrush data, and the HubSpot rebuild all three write back into.

The Challenge

Spara’s CRM had become the central nervous system for sales, marketing and customer success, but data quality and account prioritization were holding the team back. They faced four core problems:

The Strategy

We broke the work into four connected systems:

1. CRM data cleaning and scoring engine

Created a master enrichment table in Clay that filled missing data, pulled traffic metrics, classified companies as B2B/B2C, detected CTAs, flagged inbound roles, and scored accounts automatically.

Impact: the CRM became clean, deduplicated and cheaper to maintain. Sales finally had clear account tiers, and marketing could build campaigns around real prioritization instead of guesses.

2. Inbound intelligence workflow

For every meeting, HubSpot created a list, Clay enriched people and companies, AI summarized conversations, and Slack alerts went out with pre-meeting briefs.

Impact: reps stopped doing last-minute research. Inbound meetings became sharper and better aligned to what the prospect actually cared about.

3. Web traffic intelligence system

Built a historical traffic table with monthly SEMrush data, growth classification, and holistic scoring synced back to HubSpot.

Impact: sales gained a new lens into account health, and could reference growth, decline or momentum directly in outreach and discovery calls.

4. HubSpot audit and redesign

Audited pipelines, automation, workflows and integrations. Cleaned unused fields, documented architecture and simplified systems.

Impact: the CRM became easier to manage, easier to scale and easier to trust. Teams stopped fighting the system and started using it as the backbone of their GTM motion.

Key results

7.5% Response Rate Lead Generation Outbound Automation
Loom walkthrough · QC Growth / NodeSource
Inside the NodeSource build: segmenting 4,000 developer leaders on GitHub activity rather than job title, and the outbound sequences that took it to a 7.5% response rate.

Overview

QC Growth is a boutique go-to-market agency that partnered with NodeSource, a global leader in Node.js performance, observability and security.

In under three months, the campaigns reached 4,000 prospects, generated 300 responses (7.5%), including 200 positive replies (5%), booked 50 qualified meetings (1.25%), and onboarded 20 senior engineering leaders into a private Slack community.

The Challenge

NodeSource had cultivated one of the most respected developer communities in the Node.js ecosystem, but their outbound motion lacked the structure, segmentation and automation needed to engage enterprise-level technical leaders.

Previous outbound relied on broad, persona-based targeting and generic outreach. Engagement rates were low, and community-building initiatives were growing slowly.

The Strategy

1. Foundation: do-not-contact list and segmentation

Using domain, LinkedIn and company name matching, the DNC framework ensured the campaign targeted only net-new, high-value accounts. The market was segmented into community users, product users and director+ roles.

2. Execution: director and above campaign

Using a tool that tracked engagement with GitHub repositories and related developer communities, we built a segment of leaders whose teams actively contributed to the client’s technology stack, then wrote a concise, conversation-style message for a technical audience.

3. Expansion: community and conference campaigns

In parallel, smaller initiatives ran around industry conferences, open-source community users and product usage cohorts.

The results

Achieved in less than three months, outperforming standard B2B developer campaign benchmarks by over 2x.

75% Time Saved Data Enrichment Lead Generation
Loom walkthrough · Enterprise RPA Company
Inside the enterprise RPA build: one Clay research table replacing a hundred spreadsheets, with job-title standardisation and multilingual personalisation, cutting account research from 2.5 hours to 15 minutes.

Overview

A leading global RPA and enterprise automation company with more than 5,000 employees engaged us to streamline account research for enterprise sales.

The Challenge

The sales development team handled roughly 100 accounts per quarter per rep, each requiring 2–3 hours of manual research. At 250 hours per rep per quarter and a $50–$100 loaded hourly cost, the inefficiency translated into tens of thousands of dollars of wasted time.

The Strategy

1. Data foundation and enrichment

Imported 10 sample accounts into Clay, scaled to 100, and enriched automatically with firmographic and contextual data.

2. Role mapping and people intelligence

Built an enrichment layer categorising job titles into three standardised seniority levels.

3. Industry and department standardisation

Cross-standardised industry and department data, and dynamically linked the relevant case studies.

4. Multilingual personalisation

Added language detection and a routing workflow for English and Spanish.

5. Automation and execution

All enriched data flowed into an account research template, generating one master table instead of 100 separate spreadsheets.

The results

10x Client Growth Lead Generation
Loom walkthrough · Nexrizen
Inside the Nexrizen build: scraping law-firm Google Reviews with Apify, classifying them with AI as a pain signal, and turning the score into a repeatable lead qualification engine in Clay.

Overview

Nexrizen, a software engineering firm specialising in digital solutions for law practices, faced a challenge common among early-stage service companies: identifying and reaching the right clients efficiently.

We developed a systematic process to qualify potential clients using Google Reviews as a proxy for operational pain points, turning anecdotal feedback into a lead-generation engine.

The Challenge

Nexrizen relied on broad, manual prospecting lists that failed to differentiate between thriving law practices and those struggling with client satisfaction. They wanted to:

The Strategy

The Execution

The process was operationalised as a self-contained lead qualification engine. Clay became the command centre, Apify automated review extraction, and AI prompts summarised the key pain themes.

The results

40% Less Work Data Enrichment
Loom walkthrough · IAG Real Estate
Inside the IAG Real Estate build: automating commercial property owner lookup, so the research that gated every outreach list stops being manual work.

Overview

IAG Real Estate, the Institutional Advisory Group, helps institutional investors, private equity funds and family offices uncover off-market commercial real estate opportunities.

Their challenge was scaling the ability to retrieve and verify ownership contact information for off-market properties.

The Challenge

In commercial real estate acquisitions, speed and accuracy define competitive advantage. IAG’s researchers were manually researching hundreds of off-market properties per month, pulling ownership and contact data from multiple disconnected databases. The process was slow, inconsistent and prone to gaps in coverage.

The Strategy

1. Property-level data as the source of truth

Each workflow began with the property address.

2. Layered API automation

An intelligent sequence of HTTP API calls: Atom, Reonomy, then ContactOut.

3. Data consolidation and normalisation

A parser and normalisation workflow to standardise the JSON outputs into one shape.

4. Automation plus human validation

A manual verification checkpoint kept in the loop on purpose.

5. Team training and knowledge transfer

Hands-on training so the team owns the system.

The results

16% Reply Rate Lead Generation Outbound Automation
Loom walkthrough · Modern GTM
Inside the Modern GTM build: targeting LinkedIn connections as an audience and running the signal-based outbound that reached a 16% reply rate.

Overview

A marketing consultancy helping B2B companies scale performance through customer-led growth and in-person interactions. We built a modular outbound system combining LinkedIn first-degree connection data, Clay automation and channel experimentation.

The Challenge

They wanted to validate a hypothesis: that first-degree connections, properly segmented and enriched, could outperform cold outbound. The team lacked an efficient system for segmentation, personalisation and experimentation.

The Strategy

1. Extract and enrich LinkedIn connections

Downloaded the founder’s connections and imported them into Clay.

2. Segment by job function and seniority

Divided into marketing roles and executive roles.

3. Identify advertising activity

Queried the LinkedIn Ads Library to determine which companies were running paid campaigns.

4. Personalise outreach at scale

Personalised PS lines and a dynamic email body driven by ad activity.

5. Experiment across channels

Controlled experiments: LinkedIn only, email plus LinkedIn, and reverse-sequenced.

The Execution

Every stage tracked and automated inside Clay, with verified contact data sent to Lemlist and dashboards monitoring campaign health. All steps documented in an SOP and recorded on Loom.

The results

Personalised first-degree outreach combined with ad-signal enrichment performed on par with or better than cold campaigns, at a fraction of the volume.

48.7K Leads Enriched CRM Cleanup Data Enrichment Account Scoring
Loom walkthrough · Slate
Inside the Slate build: the enrichment architecture, the scoring model shipped as native Salesforce formula fields, and the hygiene workflows Slate’s own RevOps lead went on to extend.

Overview

Slate is a content creation and brand management platform for social media teams, used by organizations including the NFL, VISA and Nickelodeon. Its revenue operations ran on Salesforce with roughly 65,000 leads, 6,000 accounts and 7,000 contacts, on a data layer that could not support routing, scoring or reporting.

Most account fields were under 10% populated. Account duplicate rules were switched off. A prior Clay implementation had left partial enrichment with no validation layer, so bad matches were reaching production records.

The GTM Engineering Company was engaged in March 2026 to build the enrichment and scoring layer, then extended to activate and transfer it. Account fields finished at 75-85% fill, three scores run as native Salesforce formulas, 48,703 of 65,107 open leads are enriched with coverage tracked as a reportable field, and a duplicate audit identified 310 redundant records out of 6,324 accounts.

The Challenge

Every problem here was downstream of the same thing: fields that could not be trusted.

Without reliable domain, industry, employee count or LinkedIn URL, there was no ICP definition that could be computed, no owner assignment that could be automated, and no report that could be believed. Roughly 25% of contacts no longer worked at the company they were associated with, so contact data decayed faster than anyone could correct by hand.

Account duplicate rules existed for Leads and Contacts but had been off for Accounts, so nothing had reconciled the account object for years. Company-name matching was substring-based, so "NY Red Bulls" matched "Chicago Bulls". Enrichment tables were built but never set to auto-run, so new records silently never enriched.

The Strategy

1. Enrichment architecture

Clay became the enrichment engine and Salesforce the record of truth, with an AI validation layer rejecting mismatched company names before they write. Matching runs on three keys: company name, standardized domain and LinkedIn URL. Enrichment is gated as a waterfall, cheap firmographic data first and expensive social enrichments only for accounts clearing a firmographic score, with run conditions on empty fields so re-runs never re-buy held data.

Impact: account fields moved from under 10% populated to 75-85%, and contact LinkedIn coverage reached 90% across 7,000 records. A centralized company-enrichment table sits in front of every workflow, so the same company is never paid for twice.

2. The scoring model

Three scores, all native Salesforce formula fields, recalculating on save and adjustable in-house: a 100-point Account ICP Score, a Persona Score built on seniority and function, and an Engagement Score covering demos, forms, webinars and LinkedIn activity with time decay and a no-show penalty.

Impact: LinkedIn weight was raised from 25 to 40 points after reviewing live tier distribution, an adjustment that is cheap precisely because the logic is a formula in the CRM rather than a re-runnable job in a tool.

3. Hygiene as running infrastructure

Job change detection runs against all 7,000 contacts and routes movers three ways: customer to prospect goes to sales as a Slack approval, customer to customer goes to CS with account history intact, and prospect to prospect updates silently. Account deduplication was re-enabled as report-and-flag, never auto-merge, on four match keys.

Impact: a full audit of the backlog found 310 genuinely redundant records across 264 clusters from 6,324 accounts, tiered by confidence with a suggested survivor for each. The audit also killed the false positives a naive query produces, including 24 unrelated companies sharing a link-aggregator URL and dozens of sibling clubs sharing one league domain.

4. Operability and transfer

The last phase treated maintainability as the deliverable: process documentation with Loom walkthroughs, scenario-based enablement docs, and runbook material on the failure modes that actually bite, including table-level versus column-level auto-run and lookup-before-enrich discipline.

Impact: the client's RevOps lead built the leads-side job-change workflow himself, then found a valid ICP account sitting at a zero firmographic score, traced it into the formula and correctly identified the cause before we did.

Key results

11 Meetings in a Week Account Scoring Data Enrichment Lead Generation Outbound Automation
Loom walkthrough · trumpet
Inside the trumpet build: syncing LinkedIn engagement to the CRM, so the two scrapers watching who interacts with trumpet and its competitors turn into contacts a rep can sequence.

Overview

trumpet is a digital sales room platform used by revenue teams at Gong, HubSpot, Remote and Personio. Their own sales motion, though, ran on what most teams run on: static lists, manual research, and no signal telling reps who to contact this week.

trumpet engaged GTM Engineering to change what the CRM does for a rep. Not another list — a system that knows what a good account and a good contact look like, watches for buying signals, and turns them into outreach automatically. In 13 weeks: every contact carries a 100-point score; flagging a company automatically finds its decision makers; two LinkedIn scrapers surface who is engaging with trumpet and its competitors; and eight signal plays — from website visitors to competitor displacement across all 763 customer accounts — enter contacts into sequences the moment a signal fires.

The Challenge

trumpet’s reps were working a CRM with 180K contacts and no way to rank them. List-building was manual, audience counts could not be trusted (28 by one count, 222 by another — same audience), and coverage was thin: when a target account entered the CRM, nobody automatically found the CRO, the VP of Sales or the RevOps lead.

Worse, every play was a one-time event. A campaign launched, ended, and the next one started from zero — no engine underneath accumulating signals, no system deciding who enters a sequence next. And nothing protected pipeline from the outbound: without formal suppression, mass sends risked hitting open deals, customers, and relationships the founders were personally working.

They needed:

The Strategy

1. Score everything, so reps sort instead of research

Every contact gets a 0–100 score from seniority and department persona — C-suite at the top, mapped across five buyer groups (CRO/Exec, RevOps, Enablement, Sales Directors, AEs) with full job-title taxonomies. Behind it, an enrichment layer in Clay validates every new record, so the score is computed on clean, current data rather than stale CRM entries.

2. Buttons reps can press

Flag Enrich Company and the record fills itself — industry, size, growth, buying motion, competitor connections. Flag Find Decision Makers and Clay scans the company for CROs, VPs of Sales, RevOps, Enablement and GTM leaders, finds their emails, and writes them back as contacts. Research time goes to zero.

3. Plays that run without a rep lifting a finger

Eight plays wired to signals: website visitors (fit-checked, suppression-checked, auto-sequenced), new hires in relevant roles, product launches, closed-lost reactivation with a recency filter so automation never steps on a worked deal, champion mobility (your former buyer just moved), and competitor-of-customer displacement — all 763 customer accounts tagged, with 30–50% of those competitors net-new to the CRM. Two LinkedIn scrapers, one on trumpet’s team and one on competitors, keep feeding engagement into the same machine. A signal fires, the contact is validated, scored and suppression-checked, and the sequence starts. No list-building.

4. Protection built in

A 62K-contact do-not-contact system — open deals, customers, unsubscribes, internal people — is checked on every send, with email validation and name normalisation before anything goes out. Senior titles are deliberately held out of automation for personal founder outreach. Positive replies route to Slack in real time, with the design goal of a call list for the SDR within 24 hours of any send: every automated touch becomes a warm call.

The results

The machine reps inherit:

The early output, in the first weeks of activation:

“We booked 11 demos, 11 meetings this week from all the signals.” Saad Khan · Director of GTM Engineering, trumpet

The compounding part: these numbers came from the engine’s first weeks. The plays keep running. Every website visit, new hire, product launch and competitor connection keeps entering qualified contacts into sequences, at zero incremental list-building cost. Meetings stop being something the team launches a project to get.

2,062 Account Audience Data Enrichment Account Scoring Lead Generation
Loom walkthrough · Fluint
Inside the Fluint build: keeping CRM contacts current after job changes, so a moved decision maker becomes a new opportunity instead of a bounced address.

Overview

Fluint is an AI-powered sales enablement platform for enterprise sales teams. Its marketing motion had reach — webinars pulling 1,000+ registrations, a large newsletter, an engaged community — but no reliable way to turn that reach into segmented, targetable audiences.

Over 12 weeks we built the data layer ABM actually requires, then the audiences on top of it. A 2,062-company ABM audience went live on LinkedIn ads, backed by a 7,400-contact ads layer, a 300-company high-fit outbound subset, and signal fields — competitor followers, growth events, personas — that marketing can segment on without touching an enrichment tool.

The Challenge

Fluint’s CRM could not support audience building. Contacts arrived as bare Gmail addresses from webinar forms, persona data did not exist as a field, and there was no way to answer the questions that shape a campaign: which of our accounts follow a competitor, or who is in Denver for the event. Geographic fields were 3–5% populated at contact level.

Marketing needed a defensible ABM list sized correctly for LinkedIn’s targeting mechanics, persona segmentation as a filterable CRM field rather than tribal knowledge, buying signals usable as campaign triggers, and contact-level data quality good enough to make ads audiences and event plays possible at all.

The Strategy

1. Build the audience the way LinkedIn actually works

LinkedIn needs roughly 1,000+ companies to run an anonymized matched audience, so you cannot run ABM ads against your fifty favourite accounts. We sized the play in tiers: a 2,062-company audience built from the compelling-events signal set for awareness ads, narrowed to about 300 companies at ICP fit 85 or above for coordinated outbound, with a 7,400-contact ads layer identified for the April cohort.

Impact: ads launched April 1, and for two weeks ads, calling and email all ran against the same list. The first enterprise demo attributed to the launch landed within a week — a CCO who brought two colleagues.

2. Mine competitor audiences

We scraped the LinkedIn followers of three competitors: 34,000 leads, resolved to 19,000 unique companies, of which 3,000 matched Fluint’s CRM. The competitor’s name is stored as a field, and accounts following more than one are treated as actively in-market.

Impact: 14% of the entire database is now flagged as following at least one competitor, a segmentation no ad platform sells, with 3,000 matched accounts ready for displacement plays.

3. Turn the investor network into a segment

We scraped eight VC portfolios and enriched the companies on funding stage, headcount growth, sales-team size and decision makers, then tiered the play by stage: later-stage portfolio companies get white-glove human outreach, earlier-stage get automated startup-plan sequences.

Impact: 375 revenue leaders now sit in a warm-intro segment carried by a dedicated CRM field for the shared-investor path.

4. Make personas and signals filterable fields

An AI classification layer tagged contacts into Fluint’s persona set of C-Suite, RevOps, Enablement and Sales Leadership. Compelling-event signals — 6 and 12-month headcount growth, new product launches, sales hiring — became fields any marketer can build a segment on.

Impact: persona coverage went from 0% to roughly 48% of the CRM, and geographic coverage jumped enough to unlock city-level event plays for the first time, with contact country moving from 3% to 48% and company state from 63% to 85%.

5. Fix the top of the funnel

Webinar forms were the entropy source, so the fix went upstream: gate registrations at first name and email, and let an AI agent infer the rest. The agent recovered roughly 2,000–3,000 missing last names from email patterns alone.

Impact: the engine became self-serve. Fluint’s growth lead expanded the compelling-events enrichment from 1,700 to about 4,000 companies herself, live on a call.

Key results

“This is perfect for the ABM thing. Like, seriously though.” Kristin DeMar · Marketing & Growth Lead, Fluint