CARTO's signal engine. Built by RevPack, run by CARTO.

RevPack engineered a signal engine in CARTO's Salesforce: public buying signals in, rep-approved outreach out. CARTO's GTM Ops team now runs it in-house.

CARTO's signal engine. Built by RevPack, run by CARTO.
fe8293f9-5e9f-4c48-84c6-e1f53687f621

Executive summary

CARTO's reps received intent alerts without the signal behind them, then researched and wrote every message by hand. RevPack analyzed the process, designed six gates that qualify each public buying signal before anything is spent on it, and connected them to Salesforce, Clay, Apollo and two language models. The engine produced the first signal-sourced opportunity within weeks of go-live and beat the previous intent tool on adoption. CARTO's GTM Operations team now runs it in-house.
Client
CARTO, cloud-native Location Intelligence platform
Buyers
GIS, telco, insurance and data leaders at enterprises
Engagement
Signal-Based Go-to-Market Engine
Stack
Salesforce, Clay, Apollo, Apify, Firecrawl, Claude, Gemini
Runs today
In-house, CARTO GTM Operations
Key outcomes
First opportunity
Signal-sourced, within weeks of go-live.
Beat the old tool
Higher rep adoption than the previous intent platform, with uniformly positive feedback.
Signals in Salesforce
One reportable record per signal, traceable to the sequence it started.
Run in-house
Operated by CARTO's GTM Operations team after handover.

What is a Signal Engine

Intent says something happened. A signal engine says what to do.

A system RevPack builds inside your CRM. It captures buying signals from the sources that matter in your market, qualifies them, and turns each one into outreach a rep approves.

A signal, not a score

Who acted, on what, and when. An intent score keeps one number.

One record per signal

Stored in the CRM with history and status, traceable to pipeline.

A human gate

AI drafts the outreach. A rep approves every send.

The shift

Before and after

Before

The challenge

Before: alerts

  • Alerts expired in a vendor UI. The intent platform flagged surging accounts with no signal behind them, no history and no attribution.
  • Research was manual. For every message, a rep found the contact, read the account and wrote the email from scratch.
  • Public buying moments never reached Salesforce. Reactions to CARTO posts, comments on competitor posts and GIS job openings were not stored anywhere.
After

The solution

After: a system

  • Every qualified signal is a Salesforce record. Permanent, reportable and traceable to the sequence it started.
  • Outreach is drafted before the rep opens the record. Built from the signal and the prospect's stack. The rep approves every send.
  • Public buying moments are captured. LinkedIn engagement and GIS job openings pass the gates and land in Salesforce as signals.

How it runs

Six gates. One human approval.

01

Listen

18 LinkedIn routes and GIS job boards, scraped three times a week
02

Gate the post

An LLM scores the post 1 to 10; only above 4 passes
03

Gate the person and company

Enterprise ICP, a cloud data warehouse and one of four personas
04

Log it in Salesforce

One Signal Log record, no CRM data overwritten
05

Draft the sequence

Claude and Gemini write eight touches over 17 days
06

Rep approves

Edit or approve; Apollo sends from the rep's own mailbox
Each gate runs before the spend it protects. Step 06 is never skipped: nothing sends without a rep.
“Building this on our own gave us the flexibility to make sure it was absolutely applicable to our organization. We feel empowered to run this and expand from here.”
Brian Schwartz
Brian Schwartz
Sr. Director, GTM Operations, CARTO
“The speed and detail of their delivery were most impressive.”
Daria Kolarczyk
Daria Kolarczyk
Sr. Marketing Director, CARTO

FAQ

Questions about the engine. Answered from the build.

Does the system send outreach automatically?

No. A rep edits or approves every drafted sequence in Salesforce before Apollo enrolls the prospect from the rep's own mailbox.

How are false positives handled?

Most never reach a rep: the post gate and the person and company gate filter them out first. Signals a rep rejects are marked Rejected, and those decisions tune the gates.

What happens when a new signal appears during an active sequence?

Steps that have already been sent stay locked. Only the unsent steps are rewritten around the new signal, so the rest of the sequence reflects the latest buying moment.

What happens when enrichment providers do not have enough data?

Commercial providers are weaker outside North America and on small firms, so coverage varies by geography and company size. CARTO's engine records those gaps instead of hiding them.

Can the same architecture work with HubSpot or another CRM?

Yes. The gates and the signal ledger are the core; the CRM and the sender can change. On HubSpot the Signal Log is a custom object with native workflows and reporting, which is usually the fastest install. CARTO's implementation runs on Salesforce and Apollo.

Want a signal engine built around your market?

30 minutes. We map your signal sources to your ICP and tell you honestly whether a Signal Engine pilot would move your numbers, or where to start instead.

Ready to Unlock Your Hidden Revenue?

Let's discuss how RevPack can transform your revenue operations