Skill Tracer
Skills › Marketing Skills › prospecting › signal-plays.md

signal-plays.md

141 lines · skills/prospecting/references/signal-plays.md at 88c79f6

Open on GitHub

Most marks come from matching words in the file, so treat them as pointers.

1# Signal Plays
2
3A list tells you who could buy. A signal tells you who might buy now. This reference turns signals into outbound plays: which signals to trust, how fresh they need to be, what to do when one fires, and how much effort each account deserves.
4
5Signals are a timing and relevance filter. They don't replace ICP fit. A strong signal at a company outside your ICP is still a skip, and a great-fit account with no signal can still get a well-aimed message built on its situation.
6

Signal Plays

A list tells you who could buy. A signal tells you who might buy now. This reference turns signals into outbound plays: which signals to trust, how fresh they need to be, what to do when one fires, and how much effort each account deserves.

Signals are a timing and relevance filter. They don't replace ICP fit. A strong signal at a company outside your ICP is still a skip, and a great-fit account with no signal can still get a well-aimed message built on its situation.

Raw lines 1 to 6
7## Rank signals by how close they are to you
8
9The closer the signal is to your product and your past customers, the better it converts. Work down this list and stop where you have enough volume:
11| Rank | Signal | Why it works | Typical source |
12|------|--------|--------------|----------------|
13| 1 | **Your own product usage**: a signup from a company domain, a plan limit hit, a big upload, a team invite | They already chose you once | Your product analytics, billing |
14| 2 | **Past champions changing jobs** | Former users bring the tool with them; vendors report win rates roughly double when the buyer has used the product before | CRM contacts + job-change tracking (UserGems, Clay, manual LinkedIn checks) |
15| 3 | **High-intent website visits**: pricing, comparison, integration pages | Active evaluation | Visitor identification (RB2B, Warmly, Vector), your analytics |
16| 4 | **Engagement with you or a competitor**: comments on your posts or a competitor's, community questions | Public interest in the problem | Trigify, Common Room, social listening |
17| 5 | **Hiring in the function you serve**, or a new leader in it | New budget and a mandate to change things | Job boards (TheirStack, PredictLeads), LinkedIn |
18| 6 | **Funding, launches, expansion** | Budget, plus pressure to grow fast | Crunchbase, news, press releases |
19| 7 | **Tech stack changes**: adding or dropping a tool next to yours | A related decision is in motion | BuiltWith, Wappalyzer, job-post tech mentions |
20| 8 | **Generic third-party intent** | Weakest, and noisy | Bombora-style intent feeds, review-site intent |
22Stack signals before acting on the weaker ones. Hiring a lifecycle marketer **plus** an ESP in the stack **plus** a fit score above your threshold is worth a sequence. Any one of those alone usually isn't.

Rank signals by how close they are to you

The closer the signal is to your product and your past customers, the better it converts. Work down this list and stop where you have enough volume:

RankSignalWhy it worksTypical source
1Your own product usage: a signup from a company domain, a plan limit hit, a big upload, a team inviteThey already chose you onceYour product analytics, billing
2Past champions changing jobsFormer users bring the tool with them; vendors report win rates roughly double when the buyer has used the product beforeCRM contacts + job-change tracking (UserGems, Clay, manual LinkedIn checks)
3High-intent website visits: pricing, comparison, integration pagesActive evaluationVisitor identification (RB2B, Warmly, Vector), your analytics
4Engagement with you or a competitor: comments on your posts or a competitor's, community questionsPublic interest in the problemTrigify, Common Room, social listening
5Hiring in the function you serve, or a new leader in itNew budget and a mandate to change thingsJob boards (TheirStack, PredictLeads), LinkedIn
6Funding, launches, expansionBudget, plus pressure to grow fastCrunchbase, news, press releases
7Tech stack changes: adding or dropping a tool next to yoursA related decision is in motionBuiltWith, Wappalyzer, job-post tech mentions
8Generic third-party intentWeakest, and noisyBombora-style intent feeds, review-site intent

Stack signals before acting on the weaker ones. Hiring a lifecycle marketer plus an ESP in the stack plus a fit score above your threshold is worth a sequence. Any one of those alone usually isn't.

Raw lines 7 to 23
24## Warm paths: your network is a signal too
26Before buying a list, mine the relationships you already have. A warm introduction gets read when the twentieth cold email of the day doesn't, and AI-written outreach makes that gap wider.
281. **Export your network.** LinkedIn connections (Settings → Data privacy → Get a copy of your data), calendar attendees, and inbox contacts. LinkedIn's export includes emails only for connections who allow it.
292. **Enrich and rank** every contact: company, role, industry, headcount. Score them against your ICP like any other list.
303. **Match against target accounts** to find first- and second-degree paths into the companies you want.
314. **Start with your calendar.** Recent meetings show who is in a buying moment right now.
325. **Find one connector per vertical**: someone trusted by buyers who ignore cold outreach (an agency owner who knows every other agency owner). Pay them the way you'd pay for a qualified meeting, and disclose the arrangement.
336. **Double opt-in intros only.** Ask the connector, then the target, before anyone is introduced. Keep a human approving every intro, and never ask one contact to take intros for two vendors in the same week. Trust is the asset; spend it slowly.
35*Adapted from Cody Schneider's podcast with Chris of Super Connector (October 2026).*

Warm paths: your network is a signal too

Before buying a list, mine the relationships you already have. A warm introduction gets read when the twentieth cold email of the day doesn't, and AI-written outreach makes that gap wider.

  1. Export your network. LinkedIn connections (Settings → Data privacy → Get a copy of your data), calendar attendees, and inbox contacts. LinkedIn's export includes emails only for connections who allow it.
  2. Enrich and rank every contact: company, role, industry, headcount. Score them against your ICP like any other list.
  3. Match against target accounts to find first- and second-degree paths into the companies you want.
  4. Start with your calendar. Recent meetings show who is in a buying moment right now.
  5. Find one connector per vertical: someone trusted by buyers who ignore cold outreach (an agency owner who knows every other agency owner). Pay them the way you'd pay for a qualified meeting, and disclose the arrangement.
  6. Double opt-in intros only. Ask the connector, then the target, before anyone is introduced. Keep a human approving every intro, and never ask one contact to take intros for two vendors in the same week. Trust is the asset; spend it slowly.

Adapted from Cody Schneider's podcast with Chris of Super Connector (October 2026).

Raw lines 24 to 36
37## Freshness windows
39A signal decays. Act inside these windows or downgrade it:
41| Signal | Act within | After that |
42|--------|-----------|------------|
43| Product usage spike, limit hit | Same day (ideally within minutes) | Treat as a normal product-qualified lead |
44| Pricing or comparison page visit | 24 hours | Drop to the general list |
45| Champion job change | 30–90 days in the new role | They've already chosen their stack |
46| New leader in the function | First 90 days | Priorities are set |
47| Job post for the function | While the post is open, up to ~60 days | Hire made, budget allocated |
48| Funding announcement | 30–60 days | Old news; don't congratulate on it |
49| Tech install or removal | 30 days | Decision done |
51Record the signal date on every lead. A lead sheet without signal dates can't be prioritized.

Freshness windows

A signal decays. Act inside these windows or downgrade it:

SignalAct withinAfter that
Product usage spike, limit hitSame day (ideally within minutes)Treat as a normal product-qualified lead
Pricing or comparison page visit24 hoursDrop to the general list
Champion job change30–90 days in the new roleThey've already chosen their stack
New leader in the functionFirst 90 daysPriorities are set
Job post for the functionWhile the post is open, up to ~60 daysHire made, budget allocated
Funding announcement30–60 daysOld news; don't congratulate on it
Tech install or removal30 daysDecision done

Record the signal date on every lead. A lead sheet without signal dates can't be prioritized.

Raw lines 37 to 52
53## From signal to play
55Every signal you track should map to a specific play, so nobody improvises the angle at send time:
57| Signal | Play | Opening angle | Channel order |
58|--------|------|---------------|---------------|
59| Product limit hit | Sales-assist | Offer to help them get more from the plan they're outgrowing | Email from a founder or account owner within minutes, then LinkedIn |
60| Champion job change | Reunion | Reference the work they did with you before; ask how the new team handles it | LinkedIn first (they're updating their profile), then email |
61| Pricing page visit (identified) | Evaluation help | Don't mention the visit. Lead with the decision they're probably weighing | Email, then call for Tier 1 |
62| New leader in the function | First 90 days | The thing new leaders in that role usually fix first, with proof | LinkedIn connect, then email |
63| Hiring for the function | Bridge the gap | What they can get done before the hire lands, or what the hire will need | Email |
64| Competitor engager | Alternative | The problem they engaged with, not the competitor | LinkedIn, then email |
66Write the angle as the problem the signal implies. "Saw you raised a Series A" is a fact everyone else sent. "Most teams that just raised are told to double pipeline in two quarters, and the site usually becomes the bottleneck" is a reason to reply.

From signal to play

Every signal you track should map to a specific play, so nobody improvises the angle at send time:

SignalPlayOpening angleChannel order
Product limit hitSales-assistOffer to help them get more from the plan they're outgrowingEmail from a founder or account owner within minutes, then LinkedIn
Champion job changeReunionReference the work they did with you before; ask how the new team handles itLinkedIn first (they're updating their profile), then email
Pricing page visit (identified)Evaluation helpDon't mention the visit. Lead with the decision they're probably weighingEmail, then call for Tier 1
New leader in the functionFirst 90 daysThe thing new leaders in that role usually fix first, with proofLinkedIn connect, then email
Hiring for the functionBridge the gapWhat they can get done before the hire lands, or what the hire will needEmail
Competitor engagerAlternativeThe problem they engaged with, not the competitorLinkedIn, then email

Write the angle as the problem the signal implies. "Saw you raised a Series A" is a fact everyone else sent. "Most teams that just raised are told to double pipeline in two quarters, and the site usually becomes the bottleneck" is a reason to reply.

Raw lines 53 to 67
68## Gap plays: a signal plus a gap you can see
70The strongest services and tooling plays pair two things: a signal that the company is spending or growing, and a gap you can verify from outside that your offer fixes. The signal says they have budget and a reason to act. The gap gives you a specific, checkable opener instead of a guess.
72| Signal | Gap to verify | How to check it from outside | Fits an offer like |
73|--------|---------------|------------------------------|--------------------|
74| Recent funding or a new marketing leader | The site hasn't changed in a long time, or doesn't match the new story | Wayback Machine snapshots, the copyright year, positioning that doesn't match the funding announcement | Website, CRO, positioning |
75| Hiring several SDRs or BDRs | The outbound stack doesn't match the plan | The tools named in the job post, sending-domain DNS (SPF, DKIM, DMARC), the tech stack | Email infrastructure, enrichment, deliverability |
76| Hiring for repetitive work (data entry, reporting, lead research, CRM admin) | The job post describes tasks that can be automated | The responsibilities list in the post itself | Automation, RevOps, AI agents |
77| Running paid ads | No visible ad or analytics tags | Page source, browser network tab, or a tag-checker extension (Meta Pixel Helper, Google Tag Assistant) | Tracking and attribution setup |
78| Running paid ads | Paid traffic lands on the homepage | The destination link on each ad in the Meta Ad Library or LinkedIn Ad Library | Landing pages, CRO |
79| Running the same ads for months | Creative fatigue | Start dates in the Meta Ad Library; the Google Ads Transparency Center for search and YouTube | Ad creative |
80| Many locations | Missing or thin location pages | Store locator count vs. pages found with `site:domain.com/locations`; Google Business Profiles per location | Local SEO |
81| Many integrations or use cases | Few pages about them | The integrations directory vs. a `site:` search for integration or use-case pages | Programmatic SEO, content |
82| A lead magnet (ebook, calculator, webinar) | No follow-up after opt-in | Opt in with an address you control and log every email for 14 days, then unsubscribe | Email nurture, lifecycle |
83| Expanding into a new country | The site isn't localized for it | Language switcher, `hreflang` tags, local currency and payment methods on pricing | Localization, international SEO |
85**Rules for gap plays:**
871. **Verify the gap; never assume it.** Record what you checked, the date, and a screenshot or URL. An agent asked to find gaps will invent them unless every gap needs evidence. "No gap found" is a valid result, the same as "no hook found" in [account-research.md](account-research.md).
882. **Know what can't be seen from outside.** Server-side tracking (Meta's Conversions API, server-side Google Tag Manager) doesn't show in page source, so a missing browser tag isn't proof of missing tracking. Ask, don't accuse. A homepage is also a normal destination for brand-name search ads, and an ad running for months may be the winner rather than tired. Ad longevity is a proxy, not proof.
893. **Re-check before sending.** Gaps get fixed. Re-verify within 7 days of the first touch, or drop the gap from the message.
904. **The gap must map to your offer.** Spotting a problem you can't fix is research, not a play.
915. **Lead with the observation and a question, not a verdict.** "Your Meta ads for the spring launch point to the homepage. Is that on purpose?" gets replies. "Your landing pages are wasting your ad spend" gets deleted. Offer the evidence, and the teardown, only after they say yes (see the cold-email skill's outbound plays reference).
93Searching for these by hand is slow, which is why the plays used to be rare. Agents with web, ad-library, and X search access (Grok, for example, searches X directly) can build the list. A human still reviews the evidence for Tier 1 and a sample for Tier 2. Once a play gets replies, run it on a schedule with the signal-sweep loop in the marketing-loops skill.

Gap plays: a signal plus a gap you can see

The strongest services and tooling plays pair two things: a signal that the company is spending or growing, and a gap you can verify from outside that your offer fixes. The signal says they have budget and a reason to act. The gap gives you a specific, checkable opener instead of a guess.

SignalGap to verifyHow to check it from outsideFits an offer like
Recent funding or a new marketing leaderThe site hasn't changed in a long time, or doesn't match the new storyWayback Machine snapshots, the copyright year, positioning that doesn't match the funding announcementWebsite, CRO, positioning
Hiring several SDRs or BDRsThe outbound stack doesn't match the planThe tools named in the job post, sending-domain DNS (SPF, DKIM, DMARC), the tech stackEmail infrastructure, enrichment, deliverability
Hiring for repetitive work (data entry, reporting, lead research, CRM admin)The job post describes tasks that can be automatedThe responsibilities list in the post itselfAutomation, RevOps, AI agents
Running paid adsNo visible ad or analytics tagsPage source, browser network tab, or a tag-checker extension (Meta Pixel Helper, Google Tag Assistant)Tracking and attribution setup
Running paid adsPaid traffic lands on the homepageThe destination link on each ad in the Meta Ad Library or LinkedIn Ad LibraryLanding pages, CRO
Running the same ads for monthsCreative fatigueStart dates in the Meta Ad Library; the Google Ads Transparency Center for search and YouTubeAd creative
Many locationsMissing or thin location pagesStore locator count vs. pages found with site:domain.com/locations; Google Business Profiles per locationLocal SEO
Many integrations or use casesFew pages about themThe integrations directory vs. a site: search for integration or use-case pagesProgrammatic SEO, content
A lead magnet (ebook, calculator, webinar)No follow-up after opt-inOpt in with an address you control and log every email for 14 days, then unsubscribeEmail nurture, lifecycle
Expanding into a new countryThe site isn't localized for itLanguage switcher, hreflang tags, local currency and payment methods on pricingLocalization, international SEO

Rules for gap plays:

  1. Verify the gap; never assume it. Record what you checked, the date, and a screenshot or URL. An agent asked to find gaps will invent them unless every gap needs evidence. "No gap found" is a valid result, the same as "no hook found" in account-research.md.
  2. Know what can't be seen from outside. Server-side tracking (Meta's Conversions API, server-side Google Tag Manager) doesn't show in page source, so a missing browser tag isn't proof of missing tracking. Ask, don't accuse. A homepage is also a normal destination for brand-name search ads, and an ad running for months may be the winner rather than tired. Ad longevity is a proxy, not proof.
  3. Re-check before sending. Gaps get fixed. Re-verify within 7 days of the first touch, or drop the gap from the message.
  4. The gap must map to your offer. Spotting a problem you can't fix is research, not a play.
  5. Lead with the observation and a question, not a verdict. "Your Meta ads for the spring launch point to the homepage. Is that on purpose?" gets replies. "Your landing pages are wasting your ad spend" gets deleted. Offer the evidence, and the teardown, only after they say yes (see the cold-email skill's outbound plays reference).

Searching for these by hand is slow, which is why the plays used to be rare. Agents with web, ad-library, and X search access (Grok, for example, searches X directly) can build the list. A human still reviews the evidence for Tier 1 and a sample for Tier 2. Once a play gets replies, run it on a schedule with the signal-sweep loop in the marketing-loops skill.

Raw lines 68 to 94
Names a skill cold-email :91
Names a skill marketing-loops :93
95## Two worked examples
97**A services agency selling to B2B SaaS (for example, a CRO and landing page agency)**
98- **Signals:** funding in the last 60 days; a new VP Marketing or head of growth; open roles for growth or performance marketers; a redesigned site or new pricing page; paid search or paid social campaigns launching.
99- **Play:** value first, built on a verified gap from the gap plays table. Offer a short teardown of their actual page. Send it only after they say yes. See the cold-email skill's outbound plays reference.
100- **Volume:** about 50 well-researched accounts a week beats 5,000 generic sends. Agencies rely on depth.
102**A self-serve SaaS tool (for example, an email verification product)**
103- **Signals:** signups from company domains; credit or plan limits hit; large list uploads; team invites. Off-product signals include companies hiring lifecycle, RevOps, or SDR roles and cold-email tools appearing in their stack.
104- **Play:** product-led outbound for usage signals, problem-led cold outbound for the rest. The outbound plays reference covers both.
105- **Volume:** usage signals are few but hot. Cold lists can be larger, but every send has to model the deliverability the product sells.

Two worked examples

A services agency selling to B2B SaaS (for example, a CRO and landing page agency)

  • Signals: funding in the last 60 days; a new VP Marketing or head of growth; open roles for growth or performance marketers; a redesigned site or new pricing page; paid search or paid social campaigns launching.
  • Play: value first, built on a verified gap from the gap plays table. Offer a short teardown of their actual page. Send it only after they say yes. See the cold-email skill's outbound plays reference.
  • Volume: about 50 well-researched accounts a week beats 5,000 generic sends. Agencies rely on depth.

A self-serve SaaS tool (for example, an email verification product)

  • Signals: signups from company domains; credit or plan limits hit; large list uploads; team invites. Off-product signals include companies hiring lifecycle, RevOps, or SDR roles and cold-email tools appearing in their stack.
  • Play: product-led outbound for usage signals, problem-led cold outbound for the rest. The outbound plays reference covers both.
  • Volume: usage signals are few but hot. Cold lists can be larger, but every send has to model the deliverability the product sells.
Raw lines 95 to 106
Names a skill cold-email :99
107## Account tiers
109Tiers decide how much research and how many channels each account gets. Assign the tier before writing anything.
111| Tier | Accounts | Research | Channels | Copy |
112|------|----------|----------|----------|------|
113| **Tier 1 (1:1)** | Top ~25–50 by fit and signal | A full account brief (see [account-research.md](account-research.md)), mobile numbers | Email, LinkedIn, phone, video, possibly direct mail | Written per person; a human reviews every message |
114| **Tier 2 (1:few)** | Segments of 20–200 sharing one specific pain | Segment research plus one personal line | Email + LinkedIn | Written per segment, with a personal opener; a human reviews a sample |
115| **Tier 3 (1:many)** | Everyone else who fits | The segment definition is the research | Email | Written per segment; relevance comes from how tightly the segment is defined |
117Keep campaigns small. Several vendor and agency datasets show reply rates falling as campaign size grows, with campaigns of 50 or fewer recipients replying at roughly twice the rate of campaigns over 1,000.

Account tiers

Tiers decide how much research and how many channels each account gets. Assign the tier before writing anything.

TierAccountsResearchChannelsCopy
Tier 1 (1:1)Top ~25–50 by fit and signalA full account brief (see account-research.md), mobile numbersEmail, LinkedIn, phone, video, possibly direct mailWritten per person; a human reviews every message
Tier 2 (1:few)Segments of 20–200 sharing one specific painSegment research plus one personal lineEmail + LinkedInWritten per segment, with a personal opener; a human reviews a sample
Tier 3 (1:many)Everyone else who fitsThe segment definition is the researchEmailWritten per segment; relevance comes from how tightly the segment is defined

Keep campaigns small. Several vendor and agency datasets show reply rates falling as campaign size grows, with campaigns of 50 or fewer recipients replying at roughly twice the rate of campaigns over 1,000.

Raw lines 107 to 118
119## Tools for detecting signals
121| Signal type | Options | Agent access |
122|-------------|---------|--------------|
123| Job postings and hiring | TheirStack, PredictLeads, LinkedIn Jobs (manual) | TheirStack has an MCP; PredictLeads has an API |
124| Job changes | UserGems, Clay job-change tracking, manual checks of past champions | Clay MCP |
125| Website visitors | RB2B (US, person-level), Warmly, Vector, Koala | Mostly webhooks into your CRM or a Zap |
126| Social and community engagement | Trigify, Common Room | Both have APIs and MCPs |
127| Funding and news | Crunchbase, news search, Exa | Exa MCP; Crunchbase API on paid plans |
128| Public posts and announcements | X search (Grok searches X directly), LinkedIn posts (manual), news search | Grok via the xAI API; Exa MCP |
129| Ad activity | Meta Ad Library, Google Ads Transparency Center, LinkedIn Ad Library | Meta Ad Library API (political and EU ads only; check its current scope); otherwise browser research |
130| Tech stack | BuiltWith, Wappalyzer, tech mentions in job posts | APIs |
131| Product usage | Your own analytics and billing events | Webhooks into your CRM |
133See the [tools registry](https://github.com/coreyhaines31/marketingskills/blob/main/tools/REGISTRY.md) for setup. A scheduled sweep of these sources is the signal-sweep loop in the marketing-loops skill.

Tools for detecting signals

Signal typeOptionsAgent access
Job postings and hiringTheirStack, PredictLeads, LinkedIn Jobs (manual)TheirStack has an MCP; PredictLeads has an API
Job changesUserGems, Clay job-change tracking, manual checks of past championsClay MCP
Website visitorsRB2B (US, person-level), Warmly, Vector, KoalaMostly webhooks into your CRM or a Zap
Social and community engagementTrigify, Common RoomBoth have APIs and MCPs
Funding and newsCrunchbase, news search, ExaExa MCP; Crunchbase API on paid plans
Public posts and announcementsX search (Grok searches X directly), LinkedIn posts (manual), news searchGrok via the xAI API; Exa MCP
Ad activityMeta Ad Library, Google Ads Transparency Center, LinkedIn Ad LibraryMeta Ad Library API (political and EU ads only; check its current scope); otherwise browser research
Tech stackBuiltWith, Wappalyzer, tech mentions in job postsAPIs
Product usageYour own analytics and billing eventsWebhooks into your CRM

See the tools registry for setup. A scheduled sweep of these sources is the signal-sweep loop in the marketing-loops skill.

Raw lines 119 to 134
Uses an outside tool MCP :123
Names a skill marketing-loops :133
135## Common mistakes
137- Treating any funding round as a buying signal for everything.
138- Opening with the signal itself ("Congrats on the raise"). Use it to choose the angle, then talk about their problem.
139- Acting on stale signals. A six-month-old job change is just a job.
140- Mentioning website visits that the prospect doesn't know were tracked. It reads as surveillance.
141- Running every account at the same depth. Tier first.

Common mistakes

  • Treating any funding round as a buying signal for everything.
  • Opening with the signal itself ("Congrats on the raise"). Use it to choose the angle, then talk about their problem.
  • Acting on stale signals. A six-month-old job change is just a job.
  • Mentioning website visits that the prospect doesn't know were tracked. It reads as surveillance.
  • Running every account at the same depth. Tier first.
Raw lines 135 to 141