How to define your ICP: signals, not labels
Short answer: Your Ideal Customer Profile isn't a demographic or a firmographic label. It's a group of people so alike that the same message moves them and the same product satisfies them. You find it where three things overlap: who they are (profile), what they're doing right now that shows the need (signals), and how they respond to your offer (engagement). Then you filter for the pain that's frequent and severe enough to make them act.
Building a product is hard. It's hard for the wrong market, and it's hard for the right one. So you might as well build it for the right one.
Nobody sets out to build for the wrong market. They think it's the right one, because they never tested it. That's the biggest mistake founders make: they don't start with the market. They start with the product, which means they're probably building for the wrong customer.
Everybody wants the right market. Few go through the process of finding it.
So what is "the right market"? It's your ICP, plus the value proposition that moves them to act. This page is about the first half.
An ICP is homogeneous
Here's the test. Your ICP members are all the same in the way that matters: the same marketing works on them, and the same product satisfies them.
If one customer wants it in blue and another wants it in black, they're not one ICP. Find out why they differ, because of this, because of that. Now you have two potential ICPs.
Pick one, at least to begin with. The one who can pay the most, gets the most value, or needs the least from you. Your call. But the exercise itself is gold, because it shows you exactly what separates one group from another.
The ICP sits where three circles overlap
- Profile: who they are. Firmographics in B2B (industry, size, stage), demographics in B2C, role, tech stack. Static facts.
- Signals: what they're doing right now that shows the need. Dynamic, and the most powerful of the three.
- Engagement: how they respond when you put your offer in front of them. The only one you can't guess.
A profile without signals gives you a list of people who might care someday. Signals without engagement give you people with a problem who don't want your solution. You need all three.
The migraine test
Imagine two people.
One gets a mild headache now and then. The other gets a migraine every other day, bad enough to miss work. It's holding back her career. She's already spending hundreds on acupuncture, special pillows, anything that might help.
You're launching a new, unproven treatment. Who tries it first?
The second one. Every time. You're the experimental drug, and her situation is bad enough that trying you is less risky than doing nothing.
Two filters already hide in this simple story. Can you spot them? Keep reading.
Pain filters
1. Frequency: how often does it hurt? A pain felt every day is always on their mind. That makes them easier to find with marketing and easier to convert, which keeps your acquisition cost down. They also need you every day, so activation and retention come easier. Solve a once-a-year problem and they'll forget you exist.
2. Severity: how badly does it hurt? A mild headache is an annoyance. A migraine that stops you working is a crisis. The more acute the pain, and the more it costs them in their work or life, the more willing they are to take a chance on you.
3. Size: what does it cost them? This one isn't in the migraine story. It's the money, time or reputation the problem burns. In B2B especially, a pain with a price tag gets a budget.
You want all three high. A severe pain that happens once a year won't build a business. A frequent pain nobody minds won't either.
Signals: what changed?
Everyone talks about signals now, and for good reason. A signal is an indicator that something has changed for a potential customer, and they're now more likely to buy.
Profile tells you who could buy. Signals tell you who's ready to buy now.
Where to find them:
- Questions people ask in public. A founder posting on Reddit or Quora about churn is telling you they have a churn problem.
- Questions people ask AI. Someone asking ChatGPT "how do I fix churn in my SaaS?" just showed you a signal. It's why your content should answer those questions.
- Searches. This is why search ads worked so well for years: a search is a signal.
- Groups and communities. Joining a group about a problem is raising a hand.
- Changes in their world. A funding round, a new hire, a new regulation, a new role, a project landing on their desk.
- Signal platforms. A growing category of tools tracks these changes for you: job moves, hiring, funding, website visits, engagement with competitors' content.
Signals also tell you when to reach out and how to phrase it. Someone who just hit the problem is ten times easier to win than someone who might hit it someday.
Profile filters
- Firmographics or demographics. Useful, but weak on their own. They narrow the field; they don't find the buyer.
- Stack. What they already use says a lot. iPhone users, for example, tend to pay more readily. Android gives you a wider market, but more devices to support and a different population. Pick deliberately.
- How they solve it today. What's their current workaround, and what does it cost them? If the answer is "nothing", ask whether the pain is real. Real pain moves. Phantom pain complains.
Access and fit
- Can you reach them? Where do they hang out? Do you have a channel, a network, or credibility there? The perfect ICP you can't reach is a fantasy.
- Are they ideal for you? Customers you understand, can serve well, and enjoy working with. It's called an ideal customer profile for a reason.
Engagement: test, don't decide
Write down two or three ICP hypotheses and score each:
| Hypothesis | Pain (1 to 5) | Access (1 to 5) | Evidence (1 to 5) |
|---|---|---|---|
| ICP A | |||
| ICP B | |||
| ICP C |
Then put the same offer in front of each and watch what people do: replies, sign-ups, calls booked, pilots signed. The group that responds alike, to the same message, is your ICP. Commit to it for a while, and keep the losers in a drawer. They make excellent pivot options later.
If you already have customers, work backwards
Look at your best customers: the ones who got the most value with the least effort from you. What signal brought them in? Who felt the pain, and who decided to buy?
If you have enough active users, run the Sean Ellis survey. The "very disappointed" group, and how they describe themselves, is your ICP in their own words. Here's a P/MF survey template with the follow-up questions. For the method taken further, read how Superhuman built an engine to find product/market fit.
Common mistakes
- Choosing the biggest market instead of the most desperate one. Your vision of serving everyone can wait for round D.
- Using firmographics alone. They narrow the field. Pain and signals do the heavy lifting.
- Looking only at static descriptors. Who they are doesn't change. What they're doing does. Signals are dynamic, and that's where the timing is.
- Mixing two ICPs into one. If they need different messages or different products, they're two groups. Pick one.
- Confusing the buyer with the user. In B2B they're often different people with different pains. Your ICP needs both.
- Treating the ICP as permanent. It's an assumption. Keep testing it, and when it changes, revisit everything downstream.
What to do next
- List two or three ICP hypotheses.
- For each, write the pain (in their words), how often and how badly it hurts, and one signal that would show they're ready now.
- Score them on Pain × Access × Evidence.
- Put the same offer in front of the top two and see who moves.
Want to do it with an AI agent? Plan PMF, my free Claude Code plugin, builds three ICP hypotheses, drills into the pain, researches each one, and helps you pick. It's free on GitHub.
Not sure which of your customer groups is the real ICP? Tell me who you think it is, and I'll tell you what the clues say.