01
Write down who you sell to, and who you do not
Also called Ideal customer profile (ICP) and anti-ICP
Put your ideal customer, the customers you avoid, the people you sell to, their problems and your proof into one short document. Every list, score, email and AI agent reads from it, so everyone works from the same picture.
Why it matters. If "a good customer" is fuzzy on paper, it is fuzzy in every tool, score and email that follows. The written version becomes the agreement between sales and marketing.
How to do it
- Describe what you sell in one sentence a buyer would use, not your internal wording.
- List the industries, countries and company sizes you actually sell to and support today.
- Write what must be true for a real fit, and how you could prove it from public information.
- List who is not a fit: competitors, partners, look-alike businesses and existing customers.
- Name the roles you sell to, in priority order, including how their titles vary by country.
- Write their problems in their words, with one piece of proof for each.
What goes wrong
- Describing the customer you wish you had instead of the ones who actually buy.
- Forgetting the "not a fit" list, so the same wrong companies keep coming back.
Run it with the Account brief agent
02
Only add companies that pass hard checks
Also called Target account list (TAM) with account gates
Build your list of target companies from the bottom up, then let a company in only if it passes every check: big enough to pay, a real team that owns your problem, enough people to sell to, the right market and no open deal or recent rejection.
Why it matters. A short list that passes every check beats a long list you hope is right. The single best predictor is usually whether a real team owns the problem you solve.
How to do it
- Start from your written customer profile and pull every company that could match.
- Clean company websites to one standard format so duplicates show up.
- Check money: a revenue floor, or part of a group above it.
- Check ownership: is there a named team working on your problem, with visible output?
- Check reach: at least three people you could talk to across two teams, one of them senior.
- Check status: not a customer, no open deal, no "no" in the last 12 months.
What goes wrong
- Loose labels. If one tool says "Insurance" and another "insurance ", the rules downstream silently fail. Use one fixed list of values.
- Letting a company in because it "looks right" without evidence for each check.
03
Score fit and timing separately
Also called Fit score vs intent score, account tiers
Use two scores for two jobs. Fit (who they are) changes slowly and decides how much effort a company deserves. Timing (what they are doing now) changes daily and decides how fast you act. Crossing the two tells each rep what to do today.
Why it matters. Mixing both into one number hides the reason. A perfect-fit company that is quiet needs a different move than an average company showing strong interest.
How to do it
- Score fit from 0 to 100 using a few weighted facts: team ownership, size, sector, reach.
- Split companies into three tiers by fit: top (one-to-one attention), middle (small groups), rest (one-to-many).
- Score timing from live buying signals, letting old signals fade.
- Set a response time for each combination, for example top tier with strong signals gets a reply within 24 hours.
- Refresh fit every quarter and timing every day.
What goes wrong
- Ranking one global list, so one noisy segment floods the top tier. Rank within each segment.
- Treating the score as fact. It is a guess that you tune with results.
Timing comes from buying signals
04
Map everyone involved in the decision
Also called Buying committee mapping
Give every contact a role in the decision: the budget holder, the champion who pushes for you, the people who evaluate, and the daily users. You then see at a glance which companies rely on a single contact and in what order to approach the rest.
Why it matters. B2B decisions involve many people. If you only know one of them, the deal dies when that person goes quiet or leaves.
How to do it
- Define four roles: budget holder, champion, evaluator, daily user.
- Assign each contact a role from their title and seniority, using clear rules.
- Roll it up per company: how many people, how many teams, which roles are missing.
- Plan the order of approach, often starting with the champion and bringing the budget holder in with a senior colleague.
What goes wrong
- Keyword rules that misfire, for example "president" matching "vice president". Test the order of your rules.
- Counting ten people from one team as good coverage.
Forrester (2026) reports an average of 13 internal and 9 external people influencing a B2B purchase. [analyst research]
05
Check job titles before you reach out
Also called Job title classifier, persona filter
Use a fixed set of rules, checked in order, to decide whether a job title belongs to someone you sell to. The first rule that matches wins and gives a reason. Unlike AI judgement, the same title always gets the same answer.
Why it matters. Words like "strategy", "risk" or "innovation" show up in roles you want and roles you do not. Sorting by keyword sends your best emails to the wrong people.
How to do it
- Exclude obvious non-targets first: students, interns, former employees.
- Exclude roles that borrow your words but own a different job, like procurement or IT.
- Include your strongest title phrases next, even if they contain a functional word.
- Apply a senior-leader rule: remove the seniority word and see what is left.
- Default to "not a fit" when nothing matched, and log the reason for every verdict.
- Test changes on a set of tricky titles before running the full list.
What goes wrong
- Filtering on keywords instead of the actual job.
- Changing rules without logging why, so nobody can explain the results a month later.
Run it with the Right-person check agent
06
Run cheap checks before paying for data
Also called Enrichment waterfall and credit discipline
Order your data work so free, simple checks run first and paid data comes last. Validate every row with formulas, remove customers and anti-ICP companies with your exclusion lists, and only then pay to enrich. Personal contact details come last, once someone has decided to reach out.
Why it matters. Most data budgets are spent on rows that were incomplete, wrong or off-limits from the start. A free formula or an exclusion list would have ruled them out.
How to do it
- Start with the raw list and remove duplicates, matching on the company website domain rather than the name.
- Run formulas to check accuracy and completeness before any enrichment: is the website a real domain, are company name, country and size filled in, does the job title match the company, is the record recent? Rows that fail go to Hold with the reason.
- Filter by country, size and industry.
- Add your exclusion lists at this step: your customer list, so customers are never cold-emailed, and your anti-ICP list of competitors, partners and look-alike businesses. Keep the two lists separate and give every excluded row a reason.
- Only then run paid lookups on the companies and people left.
- Pull email addresses and phone numbers last, only for people you will contact.
What goes wrong
- Enriching first and filtering later, which pays for rows you throw away.
- Paying to enrich rows that were incomplete or wrong from the start. Validate first.
- Mixing customers and anti-ICP companies in one list, so you cannot tell "already bought" from "never a fit".
- Trusting one data provider everywhere. Coverage differs by country.
07
Clean your CRM company by company
Also called CRM deduplication and data hygiene
Clean the CRM starting with the companies that hold the most contacts, using contacts’ email domains as the source of truth. Merge only when you are sure two records are the same business, because a wrong merge destroys data.
Why it matters. Duplicates split history across records, double-count pipeline and send the same person two different emails.
How to do it
- Rank companies by number of contacts and start at the top: one fix cleans many records.
- Compare each company’s name with its contacts’ email domains.
- Sort look-alike records into: true duplicate, related company (parent or subsidiary) or wrongly assigned.
- Merge only true duplicates. Send related companies to a person to decide.
What goes wrong
- Merging on "probably the same". Two companies can share a brand word.
- Tools that change record IDs when merging, so old links break.
Questions people ask
What is an ideal customer profile?
An ideal customer profile is a written description of the companies most likely to buy from you and succeed with your product: industry, size, location, the team that owns the problem, and what must be true for a real fit.
How many target accounts should a small team have?
Enough that each rep can give real attention to the top tier. Many teams start with a few hundred companies in total, of which a few dozen get one-to-one attention. Quality of the list matters more than size.
What is the difference between fit and intent?
Fit is who the company is. Intent is what the company is doing now. Use fit to decide which companies deserve effort and intent to decide when to act.