Living ICP, segments and leads
Write the yardstick, write who you are targeting, then read who your own records reach.
On this page
Where this comes from
This guide is distilled from src/features/growth-kit/help/content/market.ts. When the guide and Growth-OS disagree, that document is the one to trust, and the difference is worth reporting.





The ICP is a rule comparison, not a score about a company
A living ICP record declares what we mean by fit: target platforms, a minimum catalog size, a minimum number of languages, and optional disqualifier lines. The comparison uses only what the record declares, so a criterion nobody wrote is a criterion nothing enforces.
Four criteria carry a hundred declared points: technographic fit 30, catalog scale 30, localization 25, and recorded problem evidence 15. Met contributes its weight, not met contributes nothing, and an input nobody recorded leaves the denominator entirely. Below 60 evaluated points there is no score at all, only the list of what was missing. This is deterministic and it is not a prediction that a company will buy.
A disqualifier never rejects and never subtracts. A matching line raises the record for a person to read, names the line and the field it was found in, and leaves the score where it was.
A segment saves criteria, not members
A segment record saves who we are targeting and who we are deliberately leaving out. It does not save a member list: Leads re-derives membership from the company records on every read, so the count moves when the records move and there is nothing to refresh.
Write one clause per line. A clause is a field, a comparator and a value, and the fields are the ones a company record holds. A line the grammar cannot read is reported with its line number, the text as you wrote it, the reason and a hint. It is never guessed at, because a guessed clause quietly changes who gets contacted.
- ecommerce platform is one of Shopify, Magento
- catalog size is at least 5000
- number of languages is at least 3
Leads reports three populations
Companies eligible for outreach, companies excluded by a rule, and companies our records cannot answer for. The third group contradicts nothing; it simply records nothing a clause compares, and it is listed under cannot tell rather than counted as a miss.
Every exclusion carries the first rule that decided it: marked exclude from campaigns, campaign suppression not recorded, already a customer, open opportunity, contacted recently, matched a deliberate exclusion, or a deliberate exclusion that could not be answered. The contact window defaults to thirty days and is a courtesy rule we chose, not a deliverability rule and not consent.
The coverage funnel is coverage of what we have written down, never of the market. Forty company records produce a funnel about forty companies. Below twenty eligible companies the page says a result from a run that small cannot be read as anything but noise.
Fix the record, not the figure
Leads has no editing controls by design. A company in cannot tell needs the field a clause compares. A company excluded for unrecorded suppression needs that answer typed on it. A member with no route needs a company domain. Every fix is one record away, and the next read follows.
Was this page helpful?
Feedback is stored only in this browser in the starter implementation.