River
Y CombinatorBacked by Y Combinator

Free template

Ideal Customer Profile Template

An ideal customer profile built from the customers who stayed, not just the ones who signed, plus persona briefs, disqualifiers and a tested fit score.

Free download · No account needed

What you get

Pack of 8 files: 5 documents, 3 spreadsheets

Ideal Customer Profile Template
  • Cohort MethodDocument
  • Fit Score ValidationDocument
  • ICP DefinitionDocument
  • Persona BriefsDocument
  • Disqualification CriteriaDocument
  • Segment PerformanceSpreadsheet
  • Cohort Retention and ExpansionSpreadsheet
  • Fit Scoring ModelSpreadsheet
RiverIdeal Customer Profile Template

Segment Performance

The same three segments, ranked twice

Bramwell Analytics, reporting software  ·  640 closed opportunities, 187 won, 142 old enough to measure at 24 months

SegmentWin rateCohortRetainedLogo ret.Per accountPer opportunity
Agencies41.6%712129.6%$18,245$7,588
In-house, multi-site24.0%383386.8%$47,376$11,361
Everything else22.2%331442.4%$24,855$5,511

The ranking flips on the same data

Agencies close 17.6 points better and are worth a third less per opportunity worked. Value per opportunity is win rate multiplied by what an account returns over the horizon, and the two factors pull in opposite directions here.

Two rules that make the numbers honest

Only accounts old enough to answer are counted. Forty-five of the 187 won accounts started less than 24 months ago. They are excluded, not counted as retained. A rate quoted against the full won set flatters by construction.

Value per account divides by the cohort, not the survivors. Dividing by survivors is the most common way this measurement gets ruined, and it always produces a better number than the truth.

Net revenue retention over the same window: 107.8% in-house, 26.7% agencies, 58.6% across the cohort.

Page 1 of 1197 words

How to create an ideal customer profile

An ideal customer profile (ICP) describes the companies most worth selling to: the ones that buy, stay and grow. To create one, join your closed deals to your billing history, then measure each segment by what its accounts paid over a set period, such as two years. Write it in traits a rep can check before a sale, and name the accounts to decline and the people who buy.

Who signs and who stays are often different groups. A profile built only from closed deals describes the first group, and points your sales team straight at it.

Four colleagues seen from above at a wooden table, going over printed pie and bar charts together
Decide the profile from what customers did, not from opinions in the room. Photo: Vitaly Gariev on Unsplash

Pull two exports, not one

Many profiles come out of a workshop where the team describes the customers it likes. Start from records instead. Your CRM knows who signed: HubSpot, which makes CRM software, lists a deal's stage, amount, close date and whether it was won or lost among its default deal properties1.

Who stayed is another matter. HubSpot can record when a deal's recurring revenue stops, and why, but only on Sales Hub Enterprise or Service Hub Enterprise, once someone sets up that tracking. Otherwise, renewals, upgrades and cancellations live in your billing system. So pull two exports, plus any call notes:

  • Closed deals, won and lost: account ID, outcome, amount, close date, lead source and every company detail you hold
  • Billing history for each account: start date, starting amount, current amount and status
  • Discovery notes or call transcripts, where the sharpest disqualifiers often turn up

Join the files on the account ID. Count rows that fail to match in either direction instead of dropping them, since a high count usually means the IDs differ between systems.

Measure only accounts old enough to answer

Pick a horizon that includes at least one renewal. On annual contracts, 24 months covers the first renewal and the year after it. Your cohort is the won accounts whose billing started at least 24 months ago.

Leave younger accounts out of every rate, and say how many there are. They haven't had time to leave, so counting them as retained flatters the result. Measure from the billing start date, not the close date. An account that signs in March and goes live in July has had four months less to leave than its close date suggests.

Divide by everyone who started

To get value per account, divide the cohort's total revenue by every account in it, including those that left. Dividing by only the survivors flatters every segment that lost accounts.

Rank segments by value, not win rate

For each segment, put five numbers in one row, with the count beside every rate:

  • Win rate: deals won over deals closed
  • Logo retention: the share of the cohort still paying at the horizon
  • Net revenue retention: what the cohort pays now against what it paid at the start
  • Value per account: what the cohort paid over the horizon, per account
  • Value per opportunity: win rate multiplied by value per account

Point sales time at the last one, because reps work opportunities, not accounts. Win rate and value per account can disagree. Venture capitalist David Skok gives an example in his guide to SaaS metrics: bigger customers are harder to sell to, but usually place bigger orders, and churn less frequently2.

One sample company's segments, ranked two ways

SegmentWin rateStill paying at 24 monthsValue per accountValue per opportunity
Agencies41.6%21 of 71 (29.6%)$18,245$7,588
In-house, multi-site24.0%33 of 38 (86.8%)$47,376$11,361
Everything else22.2%14 of 33 (42.4%)$24,855$5,511

Illustrative figures from the template's made-up reporting software company. Agencies close best but are worth a third less per opportunity.

Find the disqualifiers inside your best segment

A profile that only names who to pursue gives a rep nothing to point at when a bad deal turns up. Disqualifiers fix that, and each needs a number. Start with a payback threshold: what an account must return within the horizon to cover the cost of winning and onboarding it. A unit economics model works out acquisition cost and payback.

Look for disqualifiers inside your best-looking segment. Split it by what buyers said in discovery, and test each split against retention. A strong headline rate is often two groups averaged together.

ExampleA disqualifier with its numbersAn illustrative example written for this guide, from the template's made-up company

Discovery question: Is this for an ongoing need, or for one client project?

One client project: 34 agency accounts, three still paying at 24 months (8.8%). They returned $15,171 per account, $1,729 short of the $16,900 threshold.

Ongoing need: 37 agency accounts, 18 still paying (48.6%). They returned $21,070 per account, clearing the threshold by $4,170.

  • Visible before the sale. One discovery question answers it.
  • Priced, not argued. A shortfall against the company's own threshold is hard to wave away.

Sort what you find into hard criteria, which mean decline unless a sales lead records an exception, and soft ones, which mean selling on different terms, such as self-serve. Also record what you tested and ruled out, such as industry, so nobody proposes it again. Make the hard questions required fields in your discovery call template, and count the exceptions each quarter against how those accounts performed.

Score fit, then test it on newer accounts

Turn the attributes that separated stayers from leavers into a fit score, using only ones a rep can check before the sale. Record where each value comes from and how many accounts have it. A hand-typed industry field is weaker evidence than a location count you can check on a website. Give each attribute a small whole-number weight, totaling 100, so anyone can see why an account scored 65.

Then test the score on accounts it has never seen. The documentation for scikit-learn, a widely used machine learning library, calls testing a model on the same data it learned from a methodological mistake3. Split by start date, not at random, since the score will judge future accounts: fit the weights on older accounts and score the newer ones.

In both groups, compare retention in the top-scoring quarter with the bottom quarter. Expect the gap to narrow on the newer accounts, as it does in the template's made-up example (71.3 points to 54.5). Trust the smaller gap.

Add personas to the ideal customer profile

Personas come last, and only for your primary segment. One buyer rarely decides alone: Forrester's 2026 report on business buying found that the typical buying decision now includes 13 internal stakeholders and nine external influencers4. Write separate briefs for the weekly user, the person who signs, and anyone who can stall the deal without joining a call.

Base each brief on interviews. Nielsen Norman Group, a user experience research firm, warns that personas created with no new research5 can be "an echo chamber for the team's incorrect assumptions." It suggests starting with five to 30 interviews. Each brief should cover:

  • What the person is measured on at work
  • What they did before buying, and what made them act
  • What they need in their first 30 days
  • Their own words, quoted from a real call

Add one anti-persona: the buyer who is decisive, pleasant to sell to and gone at renewal. Naming the pattern helps reps spot it on the first call, not in next year's churn report.

Before you share the profile

  • Every rate shows its count, such as 33 of 38
  • Accounts too young to measure are left out, and the number is stated
  • Value per account divides by the whole cohort
  • Every attribute names its source and how many accounts have it
  • Each disqualifier shows its number against the payback threshold
  • The fit score was tested on accounts it never saw
  • The profile names what it gives up and the result that would change it

Next, write a positioning statement for the segment the profile names, and map who matters in each deal with a stakeholder and champion map. The template on this page works through each step for a made-up company, and Edit with AI joins your own exports in River.

How to use this template

Use the files as they are, or open them in River. River asks for your closed deals, won and lost, and your billing history by account. It joins the two, reports the rows that don't match and sets aside accounts too young to measure. Then it ranks your segments by value per opportunity and says plainly whether the ranking flips.

Discovery notes or call transcripts help too, since what buyers said before the sale is where the best disqualifiers hide. Saved prompts in the workspace then take you through the disqualifiers, the fit score and its test, and the persona briefs.

  1. Download it or open it in River

    Get the five Word documents and three CSV sheets free, with a worked sample company, or open the template in River.

  2. Send your two exports

    Closed deals with company details, plus billing history by account. Add discovery notes or call transcripts if you have them.

  3. Review the segment ranking

    Check the cohort counts, the accounts set aside as too young, and which segment is worth most per opportunity.

  4. Write the criteria and personas

    Run the saved prompts for disqualifiers, the fit score and persona briefs, then edit them or ask River for changes.

What's in the template

The cohort account by account, the criteria with their arithmetic, and a score tested out of sampleCohort Retention and Expansion, the Disqualification Criteria with payback arithmetic, and the Fit Scoring Model with its holdout.
Ideal Customer Profile Template
RiverCohort

Cohort Retention and Expansion

One row per account, 142 of them, with starting and current recurring amounts. Segment rollups below.

GroupAccountsRetainedExpandedStartingAt 24 monthsNet rev. ret.
Agencies712112$1,022,400$273,00026.7%
  single client engagement3431$476,800$39,0008.2%
  ongoing operating need371811$545,600$234,00042.9%
In-house, multi-site383324$866,400$933,900107.8%
Everything else33148$580,800$239,40041.2%
Measurable cohort1426844$2,469,600$1,446,30058.6%

The only segment above 100 percent net revenue retention is the one that closes worst. Twenty-four of its 33 survivors increased their recurring amount, which is a second signal agreeing with the first and the reason a cohort of 38 is usable rather than reckless.

Forty-five won accounts are missing from this table on purpose. They started inside the horizon and cannot yet answer the question. Counting them as retained would move logo retention from 47.9 percent to 60.4 percent of the won set and mean nothing at all.

Measure the horizon from the billing start rather than the signature. An account that signed in March and went live in July has four months of contract and no exposure.

RiverDisqualifiers

Disqualification Criteria

Every criterion observable before the sale, tested against retention, priced against a $16,900 payback threshold.

CriterionKindAccountsRetainedRateReturned per accountAgainst threshold
Buying for a single client engagementhard3438.8%$15,171short by $1,729
Buying for an ongoing operating needpursue371848.6%$21,070clears by $4,170
No named weekly owner at signaturehard23417.4%–binary, no version of the sale works
Fewer than six physical locationssoft––––route to self serve, do not decline
Industry classificationnot a criterion––––no separation once locations are held constant
Estimated annual revenuenot a criterion––––documented as an estimate, 41% populated
Deal size at signaturenot a criterion––––small deals retained as well as large

The first two rows are the same segment. Both sit inside the highest win rate in the business, so a win-rate profile recommends both, and one of them loses money on the company's own threshold. The criterion is a line drawn through the middle of the best segment rather than a fence around it.

What is not a criterion is written down too. Industry and deal size get proposed every quarter, so the test that cleared them is recorded rather than re-argued.

Enforcement is three changes: the hard questions become required discovery fields, failing an opportunity needs a written exception, and the exceptions get counted against how those accounts performed.

RiverFit score

Fit Scoring Model

Six attributes, small integer weights, fitted on the earlier accounts and tested on the later ones.

AttributeSource fieldWeightFill rateSeparates alone
Six or more physical locationsenrichment, verified on their site2594%yes
Marketing owned in-housediscovery, verified on careers page2571%yes
Between 40 and 400 employeesNumberOfEmployees1588%no, only in combination
Reports assembled by hand each monthdiscovery1566%yes
Named weekly owner at signaturediscovery1088%yes
Ongoing need, not one engagementdiscovery1062%yes
Quartile by scoreBuild set, 98 accountsHoldout, 44 accounts
Top quartile22 of 25   88.0%8 of 11   72.7%
Second15 of 24   62.5%5 of 11   45.5%
Third9 of 25   36.0%3 of 11   27.3%
Bottom quartile4 of 24   16.7%2 of 11   18.2%
Spread, top minus bottom71.3 points54.5 points

The split is by billing start date, never at random. A random split lets the score borrow from the future, and the question it has to answer is about accounts that have not arrived yet. The shrinkage from 71.3 points to 54.5 is the honest measure of what the score is worth.

Then score the losses. High-scoring closed-lost deals are a sales or product problem rather than a targeting one. Low-scoring wins are the accounts the criteria would have declined, and counting them quarterly is what keeps the criteria enforceable.

Weights stay small integers so a representative can look at a score of 65 and name the three attributes that produced it.

  • ICP DefinitionThe profile itself: the accounts measured, the segment table, each attribute's source, and what the profile gives up.
  • Persona BriefsThree briefs inside the primary segment (the weekly user, the signer, the finance partner who appears late) plus an anti-persona.
  • Disqualification CriteriaHard and soft criteria tested against retention, a payback threshold, what was ruled out, and how to enforce them.
  • Cohort MethodHow to join deals to billing, cut the cohort, avoid two date traps and grade company data.
  • Fit Score ValidationWhy to test the score on newer accounts, how to read the gap, and when to re-fit.
  • Segment Performance sheetEach segment's win rate, retention, value per account and value per opportunity, with counts beside every rate.
  • Cohort Retention and Expansion sheetOne row per measured account: revenue at the start and at 24 months, and whether it grew, shrank or left.
  • Fit Scoring Model sheetSix weighted attributes, results on the build and test accounts, score bands with actions, and when to re-fit.

Common questions

What should an ideal customer profile include?

An ideal customer profile should name the target segment and the traits a rep can check before a sale, such as headcount, number of sites or the buyer's stated need. Note each trait's source and how many accounts have it. Then add the disqualifiers, how many accounts it was measured on, and the result that would change it.

What is the difference between an ICP and a buyer persona?

An ICP describes companies, and a buyer persona describes people. The ICP says which accounts to pursue, using company traits like size, structure and need. Personas describe the people inside those accounts: the weekly user, the person who signs, and anyone who can stall the deal. Write the ICP first, then personas for its main segment.

How many customers do you need to build an ICP?

There is no fixed minimum, but every rate should show its count. The template's sample rests on 38 measured accounts in its main segment. A small cohort can hold when the gap is large and a second signal, such as expansion, agrees. If yours is too small to split, River says so and offers a shorter horizon, which measures onboarding rather than retention.

What if I don't have billing data?

Any list with one row per customer account, showing its start date, current status and amount, will do. An invoice export, a subscription report or a renewals sheet kept by hand all work. What won't work is a closed-won list on its own, because it can't show which of those customers still pay.

How often should you update your ICP?

Re-measure once enough new accounts have reached your horizon to form another cohort, and whenever your product or price changes a lot, since both change who the product suits. Keep each dated version instead of overwriting it. An attribute that stops predicting retention usually means the market moved or a competitor arrived.

Is this ideal customer profile template free?

Yes, free and with no signup: five Word documents and three CSV sheets. The sheets and most documents come filled in for a made-up reporting software company, so you can see the method at work before you swap in your own numbers. Edit with AI opens the same files in River.

What does Edit with AI do?

It opens this template in a free River workspace and asks for two exports: your closed deals and your billing history by account. River joins them, sets aside accounts too young to measure, and ranks your segments by value per opportunity. It writes the profile and personas only after that table exists.

Sources

  1. HubSpot. “HubSpot's default deal properties.” knowledge.hubspot.com (opens in a new tab)

  2. For Entrepreneurs. “SaaS Metrics 2.0 – A Guide to Measuring and Improving what Matters.” forentrepreneurs.com (opens in a new tab)

  3. scikit-learn. “Cross-validation: evaluating estimator performance.” scikit-learn.org (opens in a new tab)

  4. Forrester. “The State Of Business Buying, 2026.” forrester.com (opens in a new tab)

  5. Nielsen Norman Group. “3 Persona Types: Lightweight, Qualitative, and Statistical.” nngroup.com (opens in a new tab)

Written by

Chandler Supple

Co-founder & CEO, River

Chandler has spent the last six years working in AI, building tools for millions of users and Fortune 100 companies. In 2025, he co-founded River to build a new kind of operating system for AI agents.

Reviewed by

Brian Joseff, Co-founder, River