Positioning
Why your ICP doesn't predict buyers (and what actually does)
TL;DR
A firmographic ICP tells you which companies are permitted to buy from you. It tells you nothing about which of them is looking right now, and that second question is the one your pipeline is actually asking. Think of it as a gate and a window. The gate is eligibility, stable and knowable from the outside. The window is a dated event inside an account that turned a tolerable problem into a funded one, and it closes on a schedule nobody outside the company sets. Two accounts can match a profile perfectly and convert at completely different rates because only one of them had a reason in the last ninety days. Here is how to name your triggers, watch for them without an intent platform, and audit open pipeline for deals with no date attached.
Two accounts. Same headcount band, same funding stage, same industry, same tools in the stack. One signed in six weeks. The other took four discovery calls across five months and went quiet.
Nothing in the ICP explained that, because nothing in the ICP was measuring it. A firmographic profile answers one question well. Which companies are permitted to buy from us. It has never had anything to say about which of them is looking right now.
What predicted the first account was a buying trigger. A specific, dated event inside the company that turned a tolerable problem into a funded one. A new VP with something to prove. An audit finding with a remediation date on it. A renewal ninety days out. A traffic spike that broke something at 2am and got a postmortem written about it.
We build the profile carefully, and then we ask it a question it was never built to answer. Who should we call this quarter.
Why do two accounts with identical firmographics convert so differently?
Because one of them had a reason to move in the last ninety days and the other didn't.
We can't see that reason in any field a firmographic profile contains. Headcount doesn't change when a compliance letter arrives. An industry code doesn't move when the person who maintained the internal workaround puts in notice.
The LinkedIn B2B Institute's joint research with the Ehrenberg-Bass Institute on the 95-5 rule says the quiet part out loud. Most of the companies that will eventually buy a category are out-market today. Their long-running work found that 75% of companies buy computers about once every four years. That's a fact about replacement cycles rather than a benchmark that goes stale, which is why it still holds. Durable business purchases get re-decided on a clock measured in years, and that clock has never once adjusted itself to somebody's quarter.
Run the arithmetic on a four-year cycle and roughly a quarter of the eligible market is in-market in a given year. A few percent in a given quarter.
The profile describes all four years. The pipeline needs this quarter.
The gate and the window
A gate decides who is allowed in. Company size, budget authority, technical fit, regulatory exposure, the integrations that have to already exist. Gates are stable, they're knowable from the outside, they change slowly, and a well-built one saves a team from a hundred conversations that were never going to convert. This is what a good ICP definition is for, and it's genuinely worth the work.
A window decides who is looking out of it today. Windows open on events and close on a schedule nobody outside the company sets. They're specific to the account, they're absent from every firmographic field, and they're the reason a stranger's email gets answered in a week when nothing else is on fire.
Both are real. Only one of them is on the dashboard.
The asymmetry is what matters. A gate that's wrong costs efficiency, because we spend calls on companies that were never able to buy. A window we can't see costs the deal itself, because somebody else was standing there when it opened.
We collapsed "fits our ICP" and "worth calling in October" into one score, and now the score is wrong in a way nobody can debug. It averages an eligibility judgment that's stable against a timing judgment that expires.
What actually opens a window
Most of what gets logged as a signal is a gate condition in a nicer outfit. A few things genuinely aren't.
- A person changes. New VP of engineering, new head of support, new owner of the budget line. Someone arrives with ninety days to show a decision.
- A number breaks. Volume doubles, error rates climb, the thing that worked at 40,000 records stops working at 400,000.
- A date lands. A SOC 2 renewal, a contract auto-renew, a board commitment with a quarter attached to it.
- A tool leaves. A vendor sunsets a product, gets acquired, raises price by half, or the author of the internal script resigns.
- Money arrives with a plan attached. Rounds get announced alongside a spending thesis, and the thesis usually names a department.
A website visit isn't on that list. Neither is a content download, or a headcount jump with no stated cause, or the note we left in the CRM that says they're growing fast and fit the profile. Growth is a gate condition wearing a window's clothes.
The distinction is whether we can put a date on it. Triggers have dates. Attributes don't.
Same cell, two accounts
Take a $5M ARR company selling log management to engineering teams. Two accounts sit in the same ICP cell. Both Series B e-commerce, about 180 people, both running the same open-source stack past the point it was designed for.
Three weeks ago the first one ran a load test ahead of their holiday season and it failed. A postmortem circulated internally with a line in it about log retention. The window is open. The rep who calls doesn't have to explain the category or build the case, because somebody inside the account already wrote the problem statement and attached their name to it.
The second one has had no incident, no new hire on the engineering side, and no renewal for eleven months. Identical firmographics. Identical fit. No reason. Every discovery call has to manufacture the urgency the first account produced on its own, which is how a deal ends up taking five months and then quietly losing to a real priority.
Timing decides more of this than we want to accept. 6sense's 2025 B2B Buyer Experience Report, published in November 2025, found that the vendor a buyer contacts first goes on to win 8 out of 10 deals. Seller conversations in their data are overwhelmingly buyer-initiated. The window opens, the buyer starts looking, and whoever they can already name takes most of the outcome.
Those two accounts need different jobs more than they need different messaging. One of them is a sales conversation this month. The other is a row on a watchlist and a reason to be memorable before the incident happens.
A watchlist you can build this week
You don't need an intent platform to start on this, and you probably shouldn't buy one until you know what you'd be watching for.
Read the last twenty closed-won deals and write down what changed inside each account in the ninety days before the first real conversation. Record what moved, rather than what they said the problem was in discovery. Most teams find the answers cluster into four or five recurring events, and two of them will be things nobody had thought to track.
Then find where each of those events is visible from outside. Job postings, changelogs, status pages, funding announcements, review-site activity, role changes, published audit dates. Most triggers leave a public trace, because somebody inside the company had to tell somebody else. If a trigger leaves no trace at all, your customer interviews are the only instrument that will ever catch it, and that's worth knowing before you budget for tooling.
Set alerts you'll actually read. A saved search, a Slack channel, a spreadsheet somebody opens on Friday.
Keep the two lists apart. The gate list is who you'd sell to. The window list is who you'd call. They are different lengths and they deserve different motions.
This will be crude and it will miss things. It might be worth running for a quarter anyway, because a rough answer to "who has a reason right now" tends to outperform a precise answer to a question nobody was asking.
What your open pipeline already knows
Open the current pipeline and sort every deal into two columns. Ones where we can name the event that started it. Ones where nobody can.
The second column is the forecast risk, and it's usually larger than anyone expects. Those deals passed the gate and they look qualified, because they are. They just never had a date attached, which means the close date in the CRM was assigned by a rep rather than by anything happening inside the account.
That's also the honest explanation for the pipeline we keep calling healthy while it doesn't move. Steady volume, good fit scores, nothing converting. The filter is working exactly as designed. It was just never a clock.
Every account on the list will be in-market eventually. Go find the ones whose eventually is this quarter.
What to Do Next
If you can describe your ICP in firmographics and still can't explain why two matching accounts convert at completely different rates, the profile isn't broken. It's answering a different question than the one your pipeline is asking.
A Bare Strategy positioning audit maps the specific trigger events that precede a purchase in your market, then separates them from the eligibility filters you already have, so your team knows which accounts to work now and which to simply stay memorable to.
If that's where you are, start here. The first conversation is free.
Frequently asked questions
No, and dropping them would make things worse. The gate does real work. It keeps your team out of conversations with companies that lack the budget, the scale, or the technical prerequisites to ever buy, and that's a large amount of wasted effort avoided. The problem is asking one filter to do two jobs. Keep the firmographic profile for deciding who belongs in the market, and build something separate for deciding who gets contacted this month. Two lists, two purposes, both maintained.
Use the stalled ones. Interview five prospects who went quiet and five customers who bought, and ask both groups the same question about what was happening internally in the weeks before they first looked. Early-stage teams often get better trigger data from losses than wins, because a buyer who didn't move can tell you plainly that nothing had forced the issue yet. Ten conversations is usually enough to see the first pattern, and you can revise it once real volume arrives.
Intent platforms detect research behavior, which is downstream of the trigger. By the time an account is reading comparison pages, the window has already opened and the buyer has likely contacted somebody. Trigger watching aims earlier, at the event that will cause the research in a few weeks. The two work well together and they answer different questions. If you only have budget for one, start by naming your triggers manually, because a platform can only surface signals you've told it to value.
Related reading
The author
Nick Pham
Founder of Bare Strategy. Twenty years in B2B marketing, the last decade in product marketing inside enterprise software.
More about the operator →If this is where you are
Bring the problem, not a brief, and you'll leave the first conversation with something useful either way.
Start a conversation