Skip to main content

Ideal customer profile (ICP): what it is and how to build one

An ideal customer profile (ICP) is a description of the companies most likely to buy, get value, and stay, written as concrete, checkable attributes like industry, size, tech stack, and the situation that creates the need. It is the first decision in any GTM strategy, and the one most teams leave vague.

This guide covers what ICP means in sales and marketing, how an ICP differs from a buyer persona, how to build one from the deals you actually won, a template you can copy, a worked example, and how to turn the profile into a scored account list.

By Garrett Wolfe, founder of OneGTM, employee #9 at Unify, and author of the State of GTME report. Updated .

Key takeaways

  • An ICP describes companies. A buyer persona describes people inside them. You need both, and they answer different questions.
  • Build it from closed-won and closed-lost deals. Opinions about who should buy are where vague ICPs come from.
  • Write every field so a database can check it. "Fast-growing tech companies" fails that test; "software, 50 to 500 employees, hiring SDRs" passes.
  • Disqualifiers matter as much as qualifiers. Remove those accounts before you score anything.
  • An ICP becomes useful when it turns into a ranked account list, with buying signals deciding who gets contacted this week.

What ICP means in sales and marketing

ICP stands for ideal customer profile. In B2B it describes an account, meaning a company, and the profile is only useful if two people reading it would pick the same companies.

In sales, the ICP decides where reps spend their time. It sets which accounts get assigned, which inbound leads get a fast reply, and which deals get qualified out early. A rep with a sharp ICP spends their week on accounts that can close.

In marketing, the same profile chooses ad audiences, the account lists behind ABM, and the topics content is written about. When marketing and sales keep separate versions, marketing fills the funnel with leads sales will never call. Keep one document and let both teams edit it.

Some companies say "ideal client profile" instead, especially services firms. It means the same thing.

ICP vs buyer persona

AspectIdeal customer profileBuyer persona
DescribesA companyA person at that company
AnswersWhich accounts should we go after?Who do we talk to there, and what do we say?
Built fromFirmographics, technographics, trigger events, won and lost dealsInterviews, call recordings, job descriptions, reply data
Example fieldSoftware company, 50 to 500 employees, uses SalesforceVP of Sales, measured on pipeline coverage, worried about rep ramp time
Used forAccount lists, scoring, territory planning, ad audiencesMessaging, sequences, content, discovery questions

Pick the accounts with the ICP first, then choose the people with the persona. Doing it the other way round gets you a list of VPs of Sales at companies that will never buy.

How to build an ICP from closed-won data

Most ICPs are written in a workshop from memory. The better source is your CRM, because it already records who bought and who walked away.

  1. Pull the deals. Export closed-won and closed-lost opportunities from the last 12 to 24 months. Add churned customers if you have them, since a customer who left after a year is a weak fit you would otherwise count as a win.
  2. Enrich every account. Fill in industry, employee count, region, funding stage, and tech stack with a data enrichment tool. CRM fields entered by reps are often blank or wrong.
  3. Find what was true before they bought. Look at the 90 days before each deal opened. Did they raise a round, hire a new leader, post a run of sales jobs, or switch tools? Those are your triggers.
  4. Compare won against lost. A trait that shows up in 80 percent of wins and 80 percent of losses tells you nothing. The useful fields are the ones where the two groups differ.
  5. Write the disqualifiers. List the account types that look right on paper and never close: too small to have budget, already running a competitor under contract, selling the same thing you sell.
  6. Turn every line into a filter. If a field cannot be checked in a database or a data provider, rewrite it until it can. Then count how many accounts pass. A few hundred is a niche; tens of thousands usually means the ICP is still too broad. The TAM calculator estimates what enriching that list costs.

No closed-won data yet? Write the ICP as a hypothesis from the problem you solve, test it with a small outbound list per segment, and rebuild it from replies and meetings after the first 90 days.

What goes into an ideal customer profile

CategoryExamplesWhere the data comes from
FirmographicsIndustry, business model, employee count, revenue band, region, funding stage, ownershipCompany databases, LinkedIn, funding data
TechnographicsCRM, data warehouse, cloud provider, the tool you replace or plug intoTech stack tracking tools, job postings
Team shapeSize of the team that would use the product, whether a specific role existsHeadcount by department, title search
Triggers and signalsNew funding, a leadership hire, hiring for a role, a tool change, a product launchBuying signals, job posting data
DisqualifiersCompetitors, too small, wrong business model, existing contract, regions you cannot serveYour CRM, exclusion lists, company descriptions

Ideal customer profile template

Copy this table into a doc or spreadsheet and fill in the middle column. The right-hand column is the test: if you cannot name where the data comes from, the field is not finished.

FieldYour answerHow you will check it
Industry and business model Industry code, company description
Company size Employee count or revenue band
Region Headquarters or employee location
Stage or ownership Funding data, PE ownership
Tech stack Tech detection, job postings
Team shape Headcount by department, title search
Trigger events Signal sources, with how recent counts
Disqualifiers Exclusion list, CRM status, description keywords
Buyer and user titles Title search at each account
Accounts that pass A count from your data provider

ICP example: a B2B SaaS company

A made-up company that sells contract management software to in-house legal teams. Its closed-won deals clustered at mid-size software and services companies that had just hired their first or second lawyer, and its losses were mostly very large companies already locked into an enterprise suite.

FieldExample answer
Industry and business modelB2B software and professional services companies that sign many customer and vendor contracts
Company size150 to 2,000 employees
RegionUnited States and Canada
Stage or ownershipSeries B and later, or PE-backed
Tech stackSalesforce or HubSpot, plus an e-signature tool; no enterprise contract suite
Team shapeAn in-house legal team of one to five people
Trigger eventsFirst General Counsel hired in the last six months, a legal operations job posted, or a funding round in the last 90 days
DisqualifiersLaw firms, companies over 5,000 employees, current customers of the two main enterprise suites
Buyer and user titlesBuyer: General Counsel or Head of Legal. Users: legal counsel, sales operations
Accounts that passAround 6,000 before triggers, a few hundred in any given month once a trigger is required

Notice the last row. The ICP alone gives a list too large to work by hand. The trigger cuts it to the accounts worth contacting this month, which is the job of signals.

From ICP to a scored account list

A written ICP does nothing until it ranks real companies. The steps below take the profile from a document to a list a rep can work.

  1. Pull every account that might fit from a company database using the hard filters: industry, size, region.
  2. Remove the disqualified ones. Disqualifiers are gates. An account that sells what you sell gets removed, not scored low, or it will creep back to the top on size alone.
  3. Score fit from 0 to 100 over the durable attributes: stage, team shape, stack, industry tier. Weight the fields that separated won from lost deals the most.
  4. Add signals for timing. Fit says whether you should ever talk to an account. A buying signal says whether to talk to them this week. Keep them as separate fields so one burst of activity does not inflate an account for months.
  5. Find the people. Use the buyer persona to pick titles at the top-scored accounts, then verify emails before anything is sent.
  6. Check the score against reality. Run your closed-won accounts through the model. If your best customers do not land in the top tier, the weights are wrong.

The GTM playbook covers what happens next: sequences, routing, and how to measure each segment.

How OneGTM uses ICP scoring in outbound

Every outbound system I build starts with the client's ICP written as code: the filters, the exclusion list, and a fit score stored next to each account. A few rules come from doing this many times.

Disqualify before you score. Industry codes often cannot tell a customer from a competitor, since both file under the same category. I match on what a company says it does in its own description, and keep that check separate from the score.

Show the gaps. When an input cannot be read, say the stage is unknown or the homepage will not load, that part of the score gets half credit and is stored on its own. A missing field stays visible instead of hiding inside a total.

Measure team shape directly. "Lean sales team" sounds like a judgment call, but headcount by department turns it into a number: sales and marketing headcount as a share of the company. I compare that number within a segment only, because services firms and software companies count their people differently.

Pair fit with a signal. High fit decides who is on the list. A signal decides who hears from us this week. For Antimetal, a fit score ranked every account by size, engineering footprint, and how much reliability matters to them, and signals decided when reps reached out.

If you want to see where your own targeting stands, the free GTM scorecard grades it along with the rest of your go-to-market setup, and the GTM glossary defines the terms used here.

Common ICP mistakes

  • Describing a vibe ("innovative mid-market teams") instead of writing filters.
  • Building the ICP from the logos you want rather than the customers who renewed.
  • Skipping disqualifiers, then wondering why competitors and tiny companies keep showing up in the list.
  • Mixing the ICP and the persona into one document, so nobody knows whether "VP of Sales" is a company filter or a contact filter.
  • Writing it once. Your best customers change as the product changes, so the profile should too.

Ideal customer profile FAQ

What does ICP mean in sales?
In sales, ICP stands for ideal customer profile: a description of the companies most likely to buy, get value, and stay, written as attributes you can check, like industry, size, tech stack, and the situation that creates the need. Reps use it to decide which accounts deserve their time.
What is the difference between an ICP and a buyer persona?
An ICP describes the company: industry, size, tech, stage, and the events that make it ready to buy. A buyer persona describes a person inside that company: their title, what they are measured on, and what they worry about. You pick accounts with the ICP and write the message with the persona.
What does ICP mean in marketing?
It means the same thing as in sales: the profile of the companies you want as customers. Marketing uses it to choose ad audiences, account lists for ABM, and content topics, so it should be the same document sales uses rather than a separate version.
How do you define an ICP?
Start from your best closed-won customers. Enrich them with firmographics and technographics, note what was true just before they bought, compare them with closed-lost deals, and write the differences down as filters and disqualifiers. If a field cannot be checked in a database, rewrite it until it can.
What should an ideal customer profile template include?
Industry and business model, company size, region, stage or ownership, tech stack, team shape, the trigger events that start a buying cycle, disqualifiers, the buyer and user titles, and the number of accounts that pass the filters.
How often should you update your ICP?
Review it every quarter against the deals you won and lost, and rewrite it whenever a segment you expected to work stops booking meetings or a new segment starts closing on its own.

Want your ICP turned into a scored account list and live signals?

Talk to OneGTM about your ICP

Tell me what you're building. I reply the same day.

Call with Garrett
Where did you hear about us? (optional)

Takes about 20 seconds. Times show up right here, and the call is with Garrett directly. See our privacy policy.

Rather do it the old way? team@getaob.com LinkedIn