Every revenue leader eventually runs into the same two questions. Which accounts do we target? And once we've decided, how do we allocate resources against them?
These questions sound simple. They're not. When you've got thousands, tens of thousands, sometimes hundreds of thousands of accounts sitting in your CRM, intuition alone won't get you very far. You need a system. And that system, increasingly, looks a lot like machine learning.
Let me walk you through how to think about this properly, and how one company we worked with used predictive models to completely reshape their channel mix.
The two fundamental go-to-market decisions
When we talk about go-to-market approach at GoodFit, we're really talking about two decisions stacked on top of each other.
The first is target selection. Out of all the accounts in your CRM, which ones do you actually go after first? The second is resource allocation. Once you know which accounts matter, how do you assign your channels to them?
And those channels can vary wildly in cost. On one end, you've got programmatic outbound emails. Fully automated sequences that cost around $300 a month to run across your whole infrastructure. On the other end, you've got calling, multithreading, targeted ads, and private dinners that can run $300 to $500 a head depending on who's choosing the wine.
As experienced sales leaders, we tend to make these calls intuitively. We look at an account, research it, and decide what feels right.
Take HiBob as an example. We sell to companies with established outbound sales teams, and HiBob fits perfectly. Big sales team, half a billion in funding, six-figure contracts with Outreach and 6sense already in place. When I see an account like that, I want my team multithreading it. I want targeted ads running on top. I'm probably inviting their senior leadership team to a private dinner.
Now take TrustKeith. Still inside our ICP, but at the other end of the scale. Five salespeople, a director of revenue, no venture funding (which we've seen correlates strongly with willingness to spend on sales tech like ours), and a pretty simple stack built around HubSpot. For that account, I want programmatic email. Cold calls at scale. Low-cost motion.

That's intuitive allocation, and it works fine for two accounts. But how do you scale that thinking across 30,000 accounts? Or 240,000?
You can't. Not with intuition alone. You need a clear, quantitative understanding of account value before you start targeting.
Step one: build a complete, enriched dataset
Before you can value accounts, you need to know you actually have every account worth selling to. This is where most companies fall short.
We recently released a report showing the average B2B company is missing 60% of the accounts they should be selling to. Sixty percent. So before any machine learning gets involved, you need to fix the dataset.
The process is roughly four steps. Define your ICP. Translate it into filters. Hand those filters to a data provider so they can pull your market from their database. And finally, make sure the market is enriched with as much standardized data as possible.
Here's a real example. An inbound sales tech platform we worked with defined their ICP qualitatively as "B2B companies in North America and EMEA with a large inbound sales motion." Translating that into filters looks something like this: B2B, region of North America or EMEA, sales team count of 10 or more, monthly unique website visits of 50k or more. Those last two filters proxy for the size of the inbound sales team.
But you can go further. If you really want to confirm a company has an inbound sales motion, you can ask the simplest question of all: do they have an inbound CTA on their website? Talk to sales, book a demo, that kind of thing. Companies with those CTAs are routing leads to an inbound sales team.
Now, that's not a standard enrichment point. ZoomInfo probably doesn't have "inbound CTA on site" as a filter you can toggle. A good data provider will build that custom enrichment point for you on top of the other filters.
The output is your full market. In this case, around 27,000 accounts, each with an active website, an enriched URL as a unique identifier, and a wide range of data points. That depth matters. You want sales team count, hiring activity, RevOps team size, and tech stack details. Anything that might relate to account quality for your business.
So you've got a clean dataset. You've answered the first part of the question: which accounts do we target? At least now you know the accounts in your CRM match your ICP. But the real value comes in step two.
Step two: grade accounts by value using machine learning
This is where you start building predictive models. Two of them, actually, both using your own first-party sales data.
The first model predicts win rate for every account in your market. The second predicts average contract value for every account in your market. The technique is regression analysis.
Here's how it works in practice. We worked with a German spend management company on this exact build. To predict win rate, you start by plotting every sales opportunity the company has won and every one they've lost across different data attributes.
The first attribute might be employee count. Plot won and lost deals against employee count, and you can already start to see clusters. Almost all the won accounts sit between 250 and 1,000 employees. The lost accounts sit outside that grouping. Employee count alone doesn't predict whether you'll win or lose a deal, but it predicts a percentage of that likelihood.
Then you layer on another attribute. In this case, ERP type, since ERP is a complementary technology to spend management. Almost every software category has complementary tools that signal purchase likelihood. Looking at the data, accounts using NetSuite were more likely to convert. Accounts using Sage were less likely.
Individually, each attribute predicts very little. But you stack 80 attributes on top of each other, and you start building genuinely comprehensive profiles of won and lost accounts. Throw any account in your market into that model, and you can predict its likelihood of being won or lost with a pretty high degree of accuracy.
You do the same exercise for average contract value.
How do you know the models are accurate? You've got a source of truth. Every account you've won, every account you've lost. Feed them back in and check whether the model correctly predicts the wins as wins and the losses as losses.
Once you're confident in accuracy, you multiply the two models together. Predicted win rate multiplied by predicted ACV gives you expected value, a single dollar figure for every account in your market.
For expert advice like this straight to your inbox, sign up for Pro+ membership.
You'll also get access to 100+ hours of exclusive video content, a complimentary Summit ticket, and so much more.
So, what are you waiting for?
What expected value looks like in practice
The German spend management company ran these models on 240,000 accounts (their entire addressable market) using 80 different attributes. Their accounts were grouped into three grades: A, B, and C.
A-grade accounts had a 20% win rate on average and a $16k ACV when won, giving them an expected value of $3,200.
B and C grade accounts actually had slightly higher conversion rates. That's because they tended to be smaller companies with smaller finance teams and smaller amounts of revenue to manage, which generally makes spend management easier to sell. But because their ACVs were lower, their expected values were lower too. B-grade accounts came in at $2,500 expected value. C grade at $750.
Now you can break down the market and see the share of A, B, and C grade accounts. But the real power of expected value is matching it against the cost of your channels.
13 min read
