Signal data tells you why to reach out. Intent data tells you when. Most outbound teams buy one, call it the other, and wonder why reply rates stay flat.
The two get used as synonyms in vendor decks. They are not the same thing, they fail in different ways, and the teams that book meetings consistently score them separately before they combine them.
What signal data is
A signal is a change at an account or a person that creates a reason to talk. It is observable, dated and usually public.
- A new VP of Sales starts.
- The company raises a Series B.
- Three SDR roles go up on the careers page.
- A champion from a closed-won customer moves to a new company.
- The tech stack changes. They drop a tool you replace, or add one you integrate with.
Signals answer the question "why this account, and why would they care?" They give a rep something specific to say. "Saw you are hiring three SDRs" beats "I help companies like yours" every time.
What a signal does not tell you is whether anyone is shopping. A company can raise a round and spend the next nine months on hiring. A new VP may not touch the stack for a quarter.
What intent data is
Intent is evidence of research behaviour. Someone at the account is actively looking at the problem you solve.
- First-party intent. Visits to your site, return trips to the pricing page, demo page views, docs reads. Visitor identification tools such as RB2B, Vector or Dealfront resolve some of this to a company or a person.
- Third-party intent. Topic surges across publisher networks, review site activity on G2, comparison page views.
- Engagement intent. Replies, webinar sign-ups, content downloads, LinkedIn activity on your posts.
Intent answers "when". It is time sensitive. A pricing page visit is worth a great deal this week and very little next month.
What intent does not tell you is why. A topic surge on "data enrichment" could be a buyer, a student, a competitor or an agency writing a blog post. Third-party intent in particular is noisy at the account level, and treating it as a buying signal on its own is how teams burn their domains on cold sends that read as creepy.
Where each one fails on its own
Signal only. Gives the rep a reason and a message. Fails as right account, wrong quarter. The symptom is polite replies and no meetings.
Intent only. Gives the rep timing. Fails as right week, no reason to care. The symptom is opens and clicks with no replies.
Signal without intent fills the pipeline with accounts that agree with you and do nothing. Intent without signal produces outreach that says "noticed you were on our site", which converts badly and annoys people.
How to combine them
The working pattern is three scores, kept apart until the last step.
- Fit. Does the account match the ICP? Firmographics, tech stack, headcount, region. This changes slowly. Score it weekly.
- Signal. Has something changed that creates a reason to talk? Score each signal with a weight and a decay. A funding round might start at 30 points and lose half its value every 45 days. A champion job change might start higher and decay slower.
- Intent. Is someone researching now? Score daily, with fast decay. A pricing page return visit might be worth 25 points and halve every seven days.
Then route on the combination, not the sum.
- High fit, high signal, high intent. Send to a rep today, with the signal as the opener.
- High fit, high signal, low intent. Nurture. Lead with the signal and wait for intent to appear.
- High fit, low signal, high intent. Investigate before sending. Find the person, find the reason, then reach out.
- Low fit, anything. Do not spend sends on it, however warm it looks.
Adding the three scores into one number hides which of them is doing the work, and that is the number your reps need to write a good first line.
What this looks like in practice
The data lands in one place (Postgres or the CRM), each source writes with a timestamp, and the scores recalculate on a schedule. Signals come from enrichment and monitoring (Clay, job boards, funding feeds, LinkedIn). Intent comes from visitor identification, your own product and web analytics, and any third-party feed you trust. A routing step reads the three scores and fires the right play. A sequence, a Slack alert to the account owner, or a task.
The part most teams skip is decay. Without it, an account that visited the pricing page in March is still "hot" in October, and reps stop trusting the score within a month.
The short version
Signal data is the reason. Intent data is the timing. Fit decides whether either matters. Score them separately, decay them at different speeds, and route on the combination.
If your team is buying intent data and getting opens without replies, the gap is usually the signal layer. If you are running signal-based outbound and getting polite replies without meetings, the gap is timing.
I build signal and intent engines in code, inside your own stack. See how they fit together on the home page, read what GTM engineering is, or book a 30-minute session and I will look at what you have.



