expansion-signal-spotter
Monitor existing customer accounts for upsell and cross-sell signals: team growth on LinkedIn, new job postings, product usage patterns, funding announcements, and public company news. Produces a weekly expansion opportunity list with context and talk tracks. Chains web search, LinkedIn profile monitoring, and job posting detection.
Best use case
expansion-signal-spotter is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Monitor existing customer accounts for upsell and cross-sell signals: team growth on LinkedIn, new job postings, product usage patterns, funding announcements, and public company news. Produces a weekly expansion opportunity list with context and talk tracks. Chains web search, LinkedIn profile monitoring, and job posting detection.
Teams using expansion-signal-spotter should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/expansion-signal-spotter/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How expansion-signal-spotter Compares
| Feature / Agent | expansion-signal-spotter | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Monitor existing customer accounts for upsell and cross-sell signals: team growth on LinkedIn, new job postings, product usage patterns, funding announcements, and public company news. Produces a weekly expansion opportunity list with context and talk tracks. Chains web search, LinkedIn profile monitoring, and job posting detection.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
Related Guides
SKILL.md Source
# Expansion Signal Spotter Find expansion revenue hiding in your existing customer base. Monitors accounts for signals that indicate they're ready to buy more — before they ask or before a competitor gets there first. **Built for:** CS teams and founders at early-stage companies where expansion revenue is the fastest path to growth. You already have the relationship — this skill finds the timing. ## When to Use - "Which customers are ready to expand?" - "Find upsell opportunities in our accounts" - "Run the weekly expansion signal scan" - "Who should I pitch [new feature/tier] to?" - "Monitor customer accounts for growth signals" ## Phase 0: Intake ### Account Data 1. **Customer list** — CSV or sheet with: company name, domain, primary contact LinkedIn URL, current plan/tier, MRR/ARR, seats/usage 2. **Product tiers** — What plans exist? What triggers an upgrade? (e.g., "Pro → Enterprise at 50+ seats") 3. **Cross-sell products** — Any add-ons or adjacent products you can sell? ### Signal Configuration 4. **Expansion triggers** — What signals mean "ready to buy more" for your product? - Team growth (new hires in relevant roles) - Funding announcement - Usage hitting plan limits - New department/use case interest - Champion promoted (more budget authority) 5. **Key contacts to monitor** — LinkedIn URLs of champions, decision-makers per account (if available beyond primary) ### Filters 6. **Minimum account value** — Only scan accounts above $X MRR? (Focus effort) 7. **Accounts to exclude** — Any accounts in active churn risk, paused, or in dispute ## Phase 1: Signal Detection ### 1A: Team Growth Signals For each customer, search for hiring activity: ``` Search: "[company name]" hiring OR "we're hiring" OR "join our team" Search: site:linkedin.com/jobs "[company name]" [relevant role keywords] Search: "[company name]" "head of" OR "director of" OR "VP" [your product's domain] ``` Signals to detect: | Signal | What It Means | Expansion Play | |--------|---------------|----------------| | **Hiring in your product's domain** | Growing the team that uses you | More seats / higher tier | | **New leadership hire** | Budget holder arrived, will evaluate stack | Executive alignment meeting | | **Hiring in adjacent team** | New department could use your product | Cross-sell / new use case | | **Rapid headcount growth** | Scaling fast, needs to scale tools too | Volume upgrade | ### 1B: Funding & Financial Signals ``` Search: "[company name]" funding OR raised OR "series" OR investment 2026 Search: "[company name]" revenue OR growth OR expansion ``` | Signal | What It Means | Expansion Play | |--------|---------------|----------------| | **New funding round** | Cash in bank, expanding everything | Premium tier / annual contract | | **Revenue milestone** | Business doing well, likely investing in tools | ROI-focused expansion pitch | | **Acquisition** | New parent company = new budget | Enterprise plan / multi-team | ### 1C: Product Usage Signals (if usage data available) From internal data, flag: | Signal | Threshold | Expansion Play | |--------|-----------|----------------| | **Approaching plan limit** | >80% of seats/usage quota | Proactive upgrade offer | | **New feature adoption** | Started using a feature in higher tier (via trial/beta) | Convert trial to paid | | **Power user emergence** | 1+ users with 3x average usage | Champion for internal expansion | | **Multi-team usage** | Users from 2+ departments | Department-level deal | | **API usage growth** | API calls trending up month-over-month | Usage-based tier upgrade | ### 1D: Public Signal Monitoring ``` Search: "[company name]" launch OR "new product" OR partnership OR expansion Search: "[company name]" "[your product category]" OR "[related use case]" ``` | Signal | What It Means | Expansion Play | |--------|---------------|----------------| | **New product launch** | May need your product for the new line | New use case pitch | | **Geographic expansion** | Growing into new markets | Multi-region / additional seats | | **Partnership announced** | Business growing, more complexity | Higher tier for scale | | **Competitor of yours mentioned** | Evaluating alternatives | Retention + upgrade pre-empt | ### 1E: Champion & Stakeholder Signals If monitoring champion LinkedIn profiles: ``` Search: "[champion name]" promoted OR "new role" OR "excited to announce" ``` | Signal | What It Means | Expansion Play | |--------|---------------|----------------| | **Champion promoted** | More authority, bigger budget | Propose expansion aligned to new scope | | **Champion left** | Risk + opportunity (new person = fresh pitch) | Onboard new contact, re-pitch value | | **New exec joined** | Potential new sponsor | Executive briefing | ## Phase 2: Opportunity Scoring Score each expansion opportunity: ``` Expansion Score = Signal Strength × Account Value × Timing Signal Strength (1-5): 5 = Approaching plan limit + funding + team growth (multiple signals) 4 = Strong usage signal + one external signal 3 = One strong external signal (funding, hiring) 2 = Usage trending up, no external confirmation 1 = Weak or single minor signal Account Value (multiplier): 2.0x = Top 20% accounts by MRR 1.5x = Mid-tier accounts 1.0x = Smaller accounts Timing (multiplier): 2.0x = Signal detected this week (fresh) 1.5x = Signal detected this month 1.0x = Signal older than 30 days ``` ### Opportunity Tiers | Tier | Score | Action | |------|-------|--------| | **Hot** | 15+ | Schedule expansion call this week | | **Warm** | 8-14 | Send value-add touchpoint, plant expansion seed | | **Watch** | 3-7 | Add to next QBR agenda, monitor | ## Phase 3: Talk Track Generation For each Hot and Warm opportunity, generate: ``` ACCOUNT: [Company Name] CURRENT PLAN: [Plan] — $[MRR]/mo EXPANSION TYPE: [Upsell / Cross-sell / Volume increase] ESTIMATED EXPANSION: $[additional MRR]/mo SIGNALS: - [Signal 1] — [Source + date] - [Signal 2] — [Source + date] EXPANSION OPPORTUNITY: [2-3 sentences: What should they buy and why now?] TALK TRACK: "[Opening line — connects the signal to their business goals, not your quota]" "[Value bridge — how the expansion directly helps with what they're already trying to do]" "[Soft ask — suggest next step without pressure]" TIMING: [Why now is the right time — tied to signal] RISK: [What could block this — budget freeze, champion change, etc.] ``` ## Phase 4: Output Format ```markdown # Expansion Signal Report — Week of [DATE] Accounts scanned: [N] Total expansion pipeline identified: $[X] additional MRR --- ## Summary | Tier | Opportunities | Potential MRR | |------|--------------|---------------| | 🔥 Hot | [N] | $[X]/mo | | 🟡 Warm | [N] | $[X]/mo | | 👀 Watch | [N] | $[X]/mo | --- ## 🔥 Hot Opportunities ### [Company 1] — Current: $[X]/mo → Target: $[Y]/mo (+$[Z]) **Signals:** [list] **Expansion type:** [Upsell to Enterprise / Add 20 seats / Cross-sell analytics] **Talk track:** "[scripted opener]" **Next step:** [Specific action + date] ### [Company 2] — ... --- ## 🟡 Warm Opportunities ### [Company] — Current: $[X]/mo | Signal: [brief] **Recommended touchpoint:** [What to do — e.g., "Send case study of similar customer who expanded"] --- ## 👀 Watch List | Account | Signal | Next Check | |---------|--------|------------| | [Name] | [Signal] | [Date] | --- ## Trends - [N] accounts showing team growth signals (potential seat expansion) - [N] accounts approaching usage limits - [N] accounts with new funding (potential tier upgrade) ## Expansion Playbook Priority This week, focus on: 1. **[Account]** — [Why: highest value + strongest signal] 2. **[Account]** — [Why] 3. **[Account]** — [Why] ``` Save to the current working directory or wherever the user prefers (e.g., `expansion/expansion-signals-[YYYY-MM-DD].md`). ## Scheduling Run weekly: ```bash 0 8 * * 2 python3 run_skill.py expansion-signal-spotter ``` ## Cost | Component | Cost | |-----------|------| | Web search (hiring, funding, news) | Free | | LinkedIn monitoring (if using linkedin-profile-post-scraper) | ~$0.50-1.00 | | Job posting detection (if using job-posting-intent) | ~$0.50 | | All analysis and talk tracks | Free (LLM reasoning) | | **Total** | **Free — $1.50** | ## Tools Required - **web_search** — for funding, news, hiring signals - **fetch_webpage** — for career pages and announcements - **Optional:** `linkedin-profile-post-scraper` for champion monitoring - **Optional:** `job-posting-intent` for structured hiring signal detection ## Trigger Phrases - "Find expansion opportunities in our accounts" - "Which customers are ready for an upgrade?" - "Run the expansion signal scan" - "Weekly expansion opportunity report"
Related Skills
signal-detection-pipeline
Detect buying signals from multiple sources, qualify leads, and generate outreach context
github-repo-signals
Extract and score leads from GitHub repositories by analyzing stars, forks, issues, PRs, comments, and contributions. Produces unified multi-repo CSV with deduplicated user profiles. No paid API credits required.
event-signals
Extract leads from conferences, meetups, hackathons, and podcasts by analyzing speaker lists, sponsor lists, hackathon entries, and podcast guests. Discovers events via Sessionize, Confs.tech, Meetup, Luma, ListenNotes, and Devpost. Looks back 90 days and forward 180 days.
competitor-signals
Extract leads from competitor product activity — Product Hunt commenters/upvoters, HN posts about competitors, case studies, testimonials, tech press, and switching signals. Detects people actively switching from competitors as highest-priority leads.
community-signals
Extract leads from developer forums (Hacker News, Reddit) by detecting intent signals — alternative seeking, competitor pain, scaling challenges, DIY solutions, and migration intent. Scores users by intent strength and cross-platform presence.
trending-ad-hook-spotter
Monitor Twitter/X, Reddit, LinkedIn, and Hacker News for trending narratives, viral posts, and hot-button topics in your space. Maps trends to ad hook opportunities with timing urgency scores. Tells you what to run ads about right now while the topic is hot.
newsletter-signal-scanner
Subscribe to and scan industry newsletters for buying signals, competitor mentions, ICP pain-point language, and market shifts. Parses incoming newsletter emails via AgentMail, matches against keyword campaigns, and delivers a weekly digest of actionable signals. Use when a marketing team wants to turn newsletter subscriptions into an ongoing intelligence feed without manual reading.
news-signal-outreach
End-to-end news-triggered signal composite. Takes any piece of news — an article, LinkedIn post, tweet, announcement, event, trend, regulation, product launch, acquisition, layoff, expansion, or any other public event — and evaluates whether the companies or people mentioned are ICP fits. If yes, identifies the connection between the news and your product, finds the right people to contact, and drafts personalized outreach using the news as the hook. Tool-agnostic. Accepts both company-level and person-level news triggers. AUTO-TRIGGER: Load this composite whenever a user shares a URL (LinkedIn post, article, tweet, blog post) or mentions a company/person they "came across", "saw", or "found" from any external source and asks about relevance, fit, ICP match, or whether to reach out. The user does NOT need to explicitly say "outreach" — any signal evaluation request from an external source triggers this.
hiring-signal-outreach
End-to-end hiring signal composite. Takes any set of companies, detects job postings that your product augments or replaces, finds relevant people (the hiring manager, buyers, champions, users), and drafts personalized outreach using the job role as the hook. Tool-agnostic — works with any company source, job board, contact finder, and outreach platform.
funding-signal-outreach
End-to-end funding signal composite. Takes any set of companies, detects recent funding events, qualifies against your company context, finds relevant people (buyers, champions, users), and drafts personalized outreach. Tool-agnostic — works with any company source, contact finder, and outreach platform.
funding-signal-monitor
Monitor web sources for Series A-C funding announcements. Aggregates signals from TechCrunch, Crunchbase (via web search), Twitter, Hacker News, and LinkedIn. Filters by stage, amount, and industry. Returns qualified recently-funded companies ready for outreach.
signal-scanner
Detect buying signals across TAM companies and watchlist personas. Three-phase architecture: (1) free diff-based signals from existing data (headcount growth, tech stack changes, funding rounds), (2) Apify-powered signals (job postings, LinkedIn content analysis, profile changes), and (3) post-processing with dedup, scoring, and lead status updates. Writes signals to Supabase signals table for downstream activation.