The ICP You Wrote Last Year Is Already Wrong
Most GTM teams treat ICP as a static document. Meanwhile, the market moves on. Here’s how to rebuild yours in an afternoon from data you already have.

When the Playbook Stops Working
A year ago, I would’ve sworn I knew our ICP cold. Who our buyers were, what triggered them to look, the exact language they used to describe the pain we solve. I was wrong, and I didn’t realize it until our outbound meetings started declining several months ago.
Was it targeting? Messaging? No one on my team could say for sure. Nothing had changed dramatically. But enough had drifted that the playbook stopped working as well as it had before.
The answer was already in our call recordings. Most teams record everything but analyze almost none of it, even though the data that would refresh an ICP, sharpen targeting, and reveal which pockets are driving pipeline is already in their stack. The reason most leaders don’t mine it is that the work used to require a RevOps team and a quarter of dedicated effort. Today, it can be done in an afternoon in a Claude Code window.
The gap between teams that do this work and those that don’t is a quietly compounding advantage — and one of the few in GTM right now where the barrier is genuinely application, not access.

How I Rebuilt Our ICP in an Afternoon
The proof of the gap isn’t anecdotal. McKinsey’s recent research found that nearly 90% of CMOs are experimenting with AI, but fewer than 10% have captured value across end-to-end workflows. PwC’s 2026 CEO survey is even sharper: 56% of CEOs have seen neither higher revenues nor lower costs from AI over the last 12 months. Most teams are using AI to summarize meetings and draft emails. Few are using it to rebuild the foundation of their GTM motion.
Here’s exactly how we ran this at Attention: We pulled data from 1,000+ calls — every disco and demo we’d run over the previous 90 days — and dropped them into Claude Code. We asked basic things: Who showed up? What triggered the call? What did they say about their pain?
The mechanics will differ at your company depending on your stack, but the underlying logic applies to any GTM team with call recordings and basic AI tools.
The output looked different from what we had in our internal decks. We came away with six concrete buyer pockets, two of which we hadn’t named at all. The full breakdown is below, but the key takeaway is that almost everything we thought we knew about who was closing was directionally off.
Here’s the playbook to do the same for your org:
Step 1: Pull every call from the last 90 days. Demos, discos, intros. Won, lost, and stalled. All of them. Use your recorder’s MCP or API in Claude Code.
Step 2: Mine each batch for six things. Have Claude store the results in markdown files, with per-call detail saved separately (you’ll need it later):
Trigger: What brought this buyer to a call?
Incumbent: What tool or alternative are they using, leaving, or comparing against?
Pain language: What verbatim phrases did they use to describe the problem?
Buyer profile: Title, role, seniority, persona type.
Features: Which resonated most with them?
Company shape: Industry, headcount, stage, geography, growth signals?
You’ll get back a structured corpus you can read in a few hours.
Step 3: Cluster personas. Use Clay (via their connector in Claude) to look up personas and their companies (firmographics, technographics, intent) and cluster them across the learnings you’ve surfaced.
Step 4: Tag every call with its trigger, then look at the distribution. Our top 3 explained 62% of our pipeline. At least one of yours will be something you don’t have a campaign against.
Step 5: Enrich the company list, then hunt for attribute combinations. Run it through Clay’s connector (or your enrichment of choice) to pull headcount, industry, tech stack, recent funding, hiring patterns, and growth signals. Then look for combinations of attributes that recur inside each persona — single filters don’t tell you much; combinations provide the real signal. Here’s what a pocket looks like as a runnable filter:
Title: “RevOps,” “Revenue Operations,” “Sales Operations,” “Sales Ops,” “GTM Operations”
Title exclude: “Analyst,” “Associate,” “Coordinator,” “Intern”
Seniority: Director, VP, Head of, Senior Manager
Headcount: 201–2,000
Industry: SaaS, Software Development, IT Services, Cloud Computing
CRM: Salesforce or HubSpot
Growth signals: Headcount growth >15%, recent Series B/C/D funding, new CRO hire in last 6 months
Geography: U.S. primary, UK/EMEA secondary
Step 6: Package each pattern as a pocket. For each, have Claude pull from the markdown files:
Persona description: title cluster, seniority, what makes them tick.
Company filter: the attribute combinations from Step 5.
Trigger profile: the compelling event from Step 4.
Humanized value prop: in the buyer’s own language, lifted from Step 2’s verbatim pain quotes.
Three to five named examples from real calls: this is for internal sales enablement, so a rep recognizes the buyer in seconds.
Claude will “deeply think” for a while and process this better than any human realistically could.
Once you have this information, build a priority matrix against volume, ACV, and win-rate signal.

The Pockets, Ranked by Where to Invest First
This was the result of an afternoon of effort:

“RevOps Builder” is our #1 pocket because it’s both the highest volume and clearest ROI. “Regulated Industry” is #6 by frequency but our highest win rate, and it had no campaigns behind it. That’s a missed asymmetric bet that wasn’t on our roadmap, so it gets a lighter, higher-quality campaign instead of mass outreach.
A few other things surprised me:
The “Enterprise CRO with AI Mandate” pocket drove 8% of our pipeline despite our team having discounted it as a one-off. A second look at the call data showed it wasn’t a one-off — it was the tip of a wedge.
The persona I’d been treating as our primary buyer (“VP Sales at High-Growth Startup”) was showing up third by volume. Our entire campaign architecture was built around a buyer who’s real but isn’t central.
The point: each pocket is small enough to design a real campaign against, anchored to evidence, and built on the exact language of buyers who’ve already closed. That’s a far different kind of targeting than what most teams ship.
For us, the proof showed up in the numbers quickly. Outbound SQLs jumped to 32% growth vs. our average 15%. It’s hard to fully attribute that lift to this exercise alone, but it didn’t hurt.
Once you’ve run this once, the next move opens up: making it continuous. We’re in the final stages of rolling out a system that runs on top of our GTM data, suggests campaigns, builds them automatically, and pings me in Slack to approve or reject. Each rejection comes with a reason, which is how the system learns. Doing the manual version once is what makes the automated version possible.

What You’ll Almost Certainly Find When You Run This Playbook
You’re likely to surface some version of the following:
Personas you’ve been over-weighting by ACV, when a different role at a different stage of company is a better fit.
Two different types of buyers you were treating as one, with different triggers and incumbents.
A pocket nobody’s worked on, which might deliver your highest win rate.
A trigger you discounted the first time you saw it that’s more repeatable than you think.
None of these are exotic, and they’re the kind of insights every GTM team can activate. We started seeing real uplift in meetings booked within weeks, and the compounding effect has been bigger than the initial lift.

The 90-Day ICP
Your market is moving fast enough now that anything older than 90 days in your ICP doc starts losing relevance. The good news: the effort is a few hours and the data’s already in your CI tool.
The hardest part of running this motion is accepting that the ICP you’ve been operating against — that your campaigns are tuned to, your reps are trained on, and your forecasts are built from — has probably already drifted past usefulness.
Your customer voice is already in your data. The question is whether you’re listening before your competitors do.
Anis Bennaceur is the co-founder and CEO of Attention.com, focused on automating increasingly intelligent work for revenue teams. After teaching himself to code at 12, he began his career in investment banking and private equity before moving into early growth at Tinder. He later founded Mixer, where he encountered many of the challenges he now solves at Attention. Anis is based in NYC, where the company is headquartered.




