Live ICP Research

Your best customers already know your ICP.

5 or more existing customers in, structured ICP out. Finds the patterns, surfaces the outliers, lets you pick the cluster. Optional deal context (ACV, NPS, expansion flags) sharpens the analysis dramatically.

v1.0 Web search required Outputs JSON + CSV 5+ customers required
RC
reverse-icp-from-customers.zip
16.1 KB · Bundle: .skill file + SKILL.md inside · v1.0
Download skill
Want to read what it does first? View source ↓
What it does

Pattern detection on real deals.

Pattern detection across your actual customers is more reliable than pattern detection from your marketing copy. But only if the patterns are honestly anchored to the customers, and the outliers are surfaced instead of flattened.

The skill profiles each customer (industry, size, geography, stage, business model), runs the matrix, and reports cluster strength per dimension: 80%+ shared is a strong pattern, 50 to 80% is moderate, anything less is not a pattern.

If your customer base has two real segments (60% mid-market SaaS plus 30% enterprise FinServ), you'll see both. The skill never collapses heterogeneity to look clean. You pick the cluster, you don't get one decided for you.

Try saying

Any of these will work.

Here are our 15 best customers. What's the ICP?
Find the pattern in these customer logos.
Analyze our closed-won deals. Customer list attached.
Look at this customer CSV and tell me who to target next.
How it works

Five steps. Surfaces clusters, not averages.

01

Normalize the input

Pasted names, domain list, CSV upload, or table. All work. Ambiguous names get resolved before profiling.

02

Profile each customer

Web research per customer: industry, sub-vertical, headcount, geography, stage, business model. Confidence per field per customer.

03

Run the matrix

Cluster strength per dimension. 80%+ shared is strong, 50 to 80% is moderate with outliers named, below 50% is not a pattern.

04

Surface the segments

If the customer base has two real clusters, both get reported. You pick the segmentation, not the skill.

05

Emit ICP + matrix

JSON in the same schema as ICP Extractor (cross-skill compatible) plus the full customer-by-dimension matrix CSV for audit.

Why it doesn't lie to you

Built around the things that usually go wrong.

!

5-customer minimum

Below 5 customers, patterns aren't reliable. The skill refuses to claim them and tells you why instead of producing a polished-looking guess.

@

Outliers are evidence

The 30% of customers that don't fit the dominant pattern aren't noise. They might be a secondary segment, an early-customer artifact, or a product gap. All three matter.

?

Deal context changes the answer

If you provide ACV, NPS, or expansion flags, the skill produces two views: baseline pattern and high-value-subset pattern. They're often meaningfully different.

×

Persona is inferred, not derived

You can guess who buys at a mid-market SaaS, but that's inference, not evidence. Persona claims always get flagged as inferred when reverse-engineered from firmographics alone.

The output

JSON ICP, plus the matrix it came from.

The JSON is schema-compatible with ICP Extractor, so downstream skills (account lists, lookalike expansion) consume it identically. The matrix CSV shows every dimension for every customer, so you can re-segment later without re-running the whole analysis.

Sample output
REVERSE ICP: Mid-market SaaS Derived from: 12 customers CONFIRMED PATTERNS Industry: B2B SaaS [10 of 12] Headcount: 200 to 2000 [9 of 12] Geography: United States [12 of 12] OUTLIERS 2 enterprise FinServ customers (possible secondary segment)
ICP contract
Output
JSON + matrix CSV
Schema
Linkd ICP v1
Min customers
5
Pattern threshold
80% (strong)
Deal context
Optional, recommended
Audit trail
Per-customer matrix
Install

Pick your Claude. Drop in the skill.

The download is a zip containing two things: the .skill file (what you upload to Claude) and a SKILL.md sidecar (the human-readable instructions). Unzip first, then follow the steps for your Claude.

Most people

Claude.ai or Desktop

  1. Download and unzip the bundle.
  2. Open or create a Project in Claude.
  3. Go to Project knowledge, click Add content.
  4. Upload the .skill file from the unzipped bundle.
  5. Start a new chat in that project. Ask it to run the skill.
Download bundle ↓ No restart needed
›_
Developers

Claude Code

  1. Download and unzip the bundle.
  2. Unzip the inner .skill file too (it's also a zip).
  3. Move the resulting folder into ~/.claude/skills/
  4. Restart Claude Code.
  5. Type a prompt that fits the trigger. The skill loads automatically.
Download bundle ↓ macOS / Linux / WSL
{ }
Builders

API or Agent SDK

  1. Download and unzip the bundle.
  2. Open the SKILL.md sidecar to read the full instructions.
  3. Load via the Skills API, or paste the instructions into your agent's system prompt.
  4. Make sure your agent has web_search and file output enabled.
  5. Ship it.
Source

Read the full instructions.

This is exactly what Claude reads when the skill triggers. No hidden prompts, no separate config. What you see here is what you get.

MD
reverse-icp-from-customers-SKILL.md 11.0 KB · the full skill instructions
Loading SKILL.md...

Need help implementing this on your team?

We'll install the skills, customize them to your workflow, and run the output through your team's combined LinkedIn network. Skills do the research, Linkd does the motion.