Awareness Stage Scoring
This workflow aggregates signals from web visits, social, ads, and events into a single awareness score per account. It updates your CRM in real time and triggers outreach when accounts move from Aware to Interested to Evaluating.
OutcomeSales works accounts at the right time with context, not guesswork.
AdvancedTime to value: 3 to 4 weeks9 tools
How it flows
How it flows.
Build it, step by step
Build it, step by step.
01
Define your five awareness stages
Set clear thresholds for Identified, Aware, Interested, Evaluating, and Selecting. Identified is your target list with no engagement. Selecting is an open deal. The middle three are custom.
- Identified: account is on your target list, no activity yet
- Aware: lightweight signals like ad impressions or single site visit
- Interested: multiple touches, reply, or content download
- Evaluating: demo request, sales conversation, or trial sign-up
- Selecting: opportunity created in CRM
02
Map signals to each stage
Decide which engagement types move an account from one stage to the next. Use frequency and recency as thresholds.
- Aware: 3+ outbound opens in 30 days, 1+ deanonymized web visit, LinkedIn ad impressions under 5
- Interested: positive outbound reply, 5+ LinkedIn ad clicks, event attendance, 2+ web sessions
- Evaluating: demo requested, contact sales form, high-intent page visit (pricing, integrations)
- Track both first-party (your site, email) and third-party (ads, social) signals
- Avoid double-counting: use OR logic within a stage, not AND
03
Build your target account list in Clay
Pull accounts from Apollo or similar, qualify with Claygent, then push to HubSpot as company records.
- Run broad filters in Apollo or AI Ark to create TAM map
- Upload companies to Clay table
- Use Claygent to qualify based on tech stack, headcount, or use case fit
- Tier accounts (A/B/C) based on fit score
- Create or update company objects in HubSpot with tier and status
04
Collect signals in a single Clay workbook
Set up integrations to pull engagement data from every channel into one place. Clay becomes your signal warehouse.
- Website visits: Warmly or HubSpot tracking code
- Social engagement: Trigify for LinkedIn likes, comments, shares
- Ad exposure: Fibbler or ZenABM for account-level LinkedIn ad data
- Community: Slack API or Skool for participation events
- Events: Luma or Sequel.io for webinar and dinner attendance
- Store each signal as a timestamped row, not aggregated yet
05
Push signals to HubSpot as custom events
Send each engagement type to HubSpot as a timeline event, not a property. This keeps the history intact and makes filtering easier.
- Create custom event types in HubSpot for each signal (e.g. Website Visitor, LinkedIn Ad Click, Event Attendance)
- Use Clay HTTP API or RudderStack to send events with timestamp and account ID
- Create one property called Awareness Stage (single select: Identified, Aware, Interested, Evaluating, Selecting)
- Exception: store CEO Connections and LinkedIn Ad Engagement as properties for quick reference
06
Build HubSpot lists for each stage
Create five active lists that segment accounts by awareness stage. Use OR logic within each list to capture all qualifying signals.
- Aware list: Outbound Email Open ≥3 times in last 30 days OR Website Visitor ≥1 in last 30 days OR LinkedIn Ad Engagements <4 in last 30 days
- Interested list: Positive Outbound Reply in last 60 days OR Event Attendance ≥1 in last 60 days OR High-Intent Page Visit in last 30 days
- Evaluating list: Demo Requested in last 90 days OR Contact Sales Form submitted in last 90 days OR Trial Started in last 30 days
- Selecting list: Opportunity stage is not Closed Lost or Closed Won
- Identified list: not in any other list
07
Auto-update awareness stage with a workflow
A single HubSpot workflow checks list membership and writes the highest stage to the Awareness Stage property. It runs every time an account enters a new list.
- Trigger: company has entered any of the five stage lists
- Use branch logic to check membership from highest to lowest: Selecting, Evaluating, Interested, Aware, Identified
- Set Awareness Stage property to the highest matching stage
- Send webhook to Clay with company ID and new stage whenever it changes
- This ensures the property always reflects the current maximum engagement level
08
Generate stage-change summaries with Claude
When an account moves stages, pull all recent signals from HubSpot and ask Claude to write a two-sentence summary explaining why. Push it back to HubSpot as a note.
- Webhook from HubSpot hits Clay table with company ID and new stage
- Clay looks up HubSpot properties (CEO Connections, Ad Engagement)
- Clay calls HubSpot API to fetch all custom events for that account in the last 90 days
- Pass events and properties to Claude with a prompt: 'Explain in two sentences why this account moved to [stage]'
- Write Claude output as a timeline note in HubSpot
- Tag the account owner in Slack if stage is Interested or higher
The stack
The stack.
- Clay Signal aggregation and account enrichment
- HubSpot CRM and property storage
- Warmly Website visitor de-anonymization
- Fibbler LinkedIn ad engagement tracking
- Trigify Social engagement signal capture
- Slack Community participation tracking
- Luma Event attendance capture
- RudderStack Event pipeline and webhook routing
- Claude Awareness summary generation
Related workflows
Related workflows.
Talk to us: Want this workflow run for you?
We wire it into your stack, then run it.
Talk to Phi