You do not decide who your ideal client is. Your closed-won deals decided it for you. The job is to read them without flinching, then build your message and your ads on what you actually find.
Somewhere on a shared drive there is a slide with a stock photo of a woman in her forties. Her name is Marketing Mary. She is 42, she values efficiency, and her pain point is "lack of time".
Nobody has ever won a deal because of that slide.
The problem is not that personas are stupid. The problem is that most of them are invented in a room by people guessing, and then used to justify decisions worth tens of thousands in ad spend. An ideal customer profile built on a guess produces messaging built on a guess, which produces campaigns built on a guess.
There is a better source, and you already own it.
Start with the export, not the whiteboard
Open your CRM. Export every deal you have closed and won. Not your leads, not your pipeline, your wins. That list is the only honest description of who buys from you, because it is made of people who actually paid.
When we did this for ourselves, we exported 34 closed-won deals and put them in a spreadsheet. What came out did not match what we would have written on a whiteboard. It rarely does.
The five columns that matter
For each won deal, fill in:
Company size. Headcount, not revenue. Headcount predicts how decisions get made.
Sector. Be specific. Not "construction" but "custom joinery" or "roofing".
The trigger. What was happening in that business the month they contacted you? A new hire, a lost contract, a competitor moving in, a founder finally admitting referrals had dried up.
Who signed. Owner, marketing manager, commercial director. This changes your message more than the sector does.
How it went. Deal size, how fast it closed, and whether you would take that client again.
That last column is the one people skip and the one that matters most. A client who paid well and made you miserable is not part of your ICP. Neither is one who closed fast because you discounted.
Now look for the overlap. You are looking for the cluster where three or four of these columns line up across many wins. That cluster is your ICP. It is usually narrower than you hoped and more specific than you expected.
For us it landed on growth-stage Flemish companies, roughly 5 to 50 people, in energy, engineering and professional services, with inconsistent lead flow and no systematic pipeline. Not "Belgian SMEs". That is not a profile, that is a phone book.
If you have fewer than twenty wins
Use your losses too. Export closed-lost as well and look for the pattern in what went wrong. Companies that ghosted after the proposal, deals that stalled on budget, projects that needed six approvals. Those are the anti-patterns, and they are just as useful. Knowing who wastes your time is knowing who to exclude from your targeting.
The part everyone skips: deciding who you turn away
An ICP that includes everyone you could theoretically serve is not an ICP. The work is subtraction.
We cut real estate out of our targeting entirely. Not because there is no money in it, there clearly is, but because it sat awkwardly next to another thing we run and the message would have had to stretch to cover both. A message that stretches stops persuading.
Write down the segments you are deliberately not going after and why. This document is worth more than the persona slide, because it is the one that stops you from saying yes to a bad fit at the end of a slow quarter.
Write it so it passes the ten-second test
A usable ICP is one paragraph, and it passes this test: someone on your team can look at any company website for ten seconds and say yes or no.
"Ambitious B2B companies looking to grow" fails. Everyone is that.
"Flemish engineering or energy firms, 5 to 50 people, owner-led, currently getting work through referrals and word of mouth, with nobody internally responsible for marketing" passes. You can check most of that from a homepage and a LinkedIn page in under a minute.
Speak their problem, not your service
Here is where most companies lose the thread. They do the ICP work properly, then go straight back to writing about themselves.
Your ICP does not wake up wanting a growth system, a funnel, or a content strategy. They wake up annoyed that the phone is quieter than last year, or that their best salesperson left and took the pipeline with them, or that they are the only one in the company who worries about where the next project comes from.
So take the language from the source. Go through your last ten sales calls, your last twenty inbound emails, the notes in your CRM, and pull out the sentences people used to describe their situation before you gave them any vocabulary. Those exact phrases are your headlines.
Our own lead form opens with a line in plain Flemish that translates roughly to "done with dragging and pushing for every new client". That is not clever copywriting. It is a sentence a prospect said on a call, written down and reused.
The test for a message: could a competitor put their logo on it and have it still make sense? If yes, it says nothing. Rewrite it until it only works for you, aimed at them.
Running ads that reach them
This is where the ICP stops being a document and starts costing money.
Let the creative do the targeting
The instinct is to build the ICP into the audience settings: interests, job titles, layer upon layer. On Meta especially, that instinct is now outdated. Narrow interest stacking starves the algorithm of the volume it needs to learn, and the interest categories were never accurate about B2B roles anyway.
Go broad on the audience and put the targeting in the creative instead. If the first three seconds of your video say "if you run a joinery business and you are tired of waiting for referrals", the wrong people scroll past and the right people stop. You have targeted with the message, not the settings, and the algorithm learns from the people who respond.
What still deserves manual control: geography, exclusion lists of existing clients, and retargeting audiences. Those are facts, not guesses.
On LinkedIn and Google the logic flips, because there you are buying stated identity and stated intent. Use the firmographic targeting there. Use the creative on Meta.
Qualify inside the ad, not after it
A lead form that asks only for name and email will get you volume and waste your week. Put one qualifying question in the form itself.
We ask for annual revenue in three bands. It costs a fraction of the leads and removes almost all of the ones that were never going to buy. A slightly higher cost per lead here is not a problem, it is the point.
Scarcity that is actually true works too. If you can genuinely only take on a handful of new clients per quarter, say so in the ad. It reframes the conversation from persuading them to qualifying each other.
Match the landing page to the ad
The language in the ad and the language on the page must be the same. Same problem, same words, same tone. Every mismatch between the two is a moment where the visitor thinks "this is not what I clicked on", and that moment costs you more conversions than any button colour ever will.
Measure the thing that matters
Cost per lead is the number that looks best in a report and lies most often. Track these instead:
Cost per qualified conversation. Leads that became a real call.
Close rate by segment. Split your wins by sector and company size. You will usually find one segment closing at three times the rate of the others. That is your ICP tightening on its own.
Time to close by segment. A segment that closes at the same rate but twice as fast is worth more than the numbers suggest.
Then feed it back. Every quarter, re-export your wins and check whether the profile has moved. It usually does, slowly, as your work and your prices change.
Where to start this week
Three things, in this order:
Export your closed-won deals and fill in the five columns. An afternoon of work.
Write the one-paragraph profile, and the list of who you are deliberately not targeting.
Pull ten real sentences from sales calls and rewrite your main ad headline using their words instead of yours.
You will know it worked when your ads start getting fewer leads and more meetings.
Want a second opinion on your profile?
We do this on a 30-minute call. You bring your closed-won export, we look at the pattern together, and you leave knowing which segment is quietly carrying your business and which one is eating your time. No deck, no pitch.