Why generic ICP filters fail
Your ICP doc says "Series B SaaS, 100-500 employees." So does everyone else's. There is no differentiation in the signals you score on.
The question that matters: what is actually different between your closed-won accounts and your closed-lost accounts? Not what you think. What the data shows.
How to discover your niche signals
Step 1: Export two lists
Pull from Salesforce or HubSpot:
closed-won.csv(50 accounts that closed)closed-lost.csv(50 accounts that did not)
Step 2: Run the niche signal discovery skill
Claude Code reads the Deepline niche signal discovery skill and runs:
deepline enrich --input closed-won.csv --output won-enriched.csv \
--with 'company=crustdata_companydb_autocomplete:{"field":"company_name","query":"{{Company}}"}' \
--with 'tech=builtwith_domain_lookup:{"domain":"{{Domain}}"}' \
--with 'jobs=crustdata_job_listings:{"company_name":"{{Company}}"}'
deepline enrich --input closed-lost.csv --output lost-enriched.csv \
--with 'company=crustdata_companydb_autocomplete:{"field":"company_name","query":"{{Company}}"}' \
--with 'tech=builtwith_domain_lookup:{"domain":"{{Domain}}"}' \
--with 'jobs=crustdata_job_listings:{"company_name":"{{Company}}"}'
Step 3: Review the signals
Claude analyzes both cohorts and surfaces the 3-5 attributes that statistically separate winners from losers.
Step 4: Deploy as a scoring model
The discovered signals become a scoring function:
deepline workflows deploy icp-scoring --trigger webhook --spec scoring-model.yaml
What niche signals look like
Real examples from Deepline customer runs:
| Signal | Won accounts | Lost accounts |
|---|---|---|
| VP of RevOps hired in last 6 months | Yes | No |
| Tech stack | Snowflake + dbt | Legacy BI |
| Open engineering roles | 5+ | Flat or shrinking |
| Careers page language | "data quality" | "dashboards" |
Your competitors cannot see these signals. They are running the same generic filters everyone else uses.
What gets enriched
| Data type | Sources |
|---|---|
| Firmographics | Apollo, People Data Labs |
| Technographics | BuiltWith, TheirStack |
| Hiring signals | Crustdata job postings |
| Funding | Crunchbase via Crustdata |
| Web research | Exa semantic search |
Cost breakdown
| Stage | Credits | Cost |
|---|---|---|
| Enrich 100 accounts | 50-80 | ~$5-8 |
| AI comparison + scoring model | 10 | ~$1 |
| Total | 60-90 | ~$6-9 |
Compare to a RevOps consultant at $5K-15K.
Who uses this
- Founders who want to stop guessing which accounts to prioritize
- RevOps leads building scoring models that predict revenue
- AEs who want to know which accounts are worth their time
Deploy ongoing scoring
Once you have the signals:
New leads get scored automatically. Signals stay tied to real outcomes, not assumptions.
Common questions
Frequently Asked Questions
1How many accounts do I need?+
50 of each is enough to find patterns. 100+ gives stronger signal.
2What if my won/lost sets are imbalanced?+
Deepline normalizes for sample size. 30 won and 70 lost still works.
3Can I re-run this quarterly?+
Yes. Your ICP evolves as you close more deals. Re-running keeps signals fresh.
Find the signals hiding in your data
Export your won and lost accounts. Deepline does the rest.