Who to hunt, written so a search can answer it.
An ICP profile is vertical, metro, exclusions, and an offer Scout can compile into a filter. A paragraph about quality businesses is not a filter.
Find
ICP profiles turn vertical, metro, exclusions, and an offer into a filter Scout can run.
An ICP profile is vertical, metro, exclusions, and an offer Scout can compile into a filter. A paragraph about quality businesses is not a filter.
leadActionId has to be enabled in Forge. If inbound voice is off, the profile does not save as a voice hunt.
Clients, open deals, and suppressions are locked on. Blast radius is counted on cached artifacts before a paid scan starts.
An ICP profile is a saved definition of who to hunt that Scout can compile into a search, an exclusion set, and an offer a DEMO can fulfill. The buyer is the marketer. The vertical on the profile is the kind of shop you sell to, not a user persona workshop.
Today, without an ICP, who we want is spread across a saved search, an automation scope, and a Relay enrichment call. The profile is the one object. Status is draft, active, paused, or archived. Name it like a hunt: Dental, San Diego, inbound voice.
GTM Autopilot is the operator-facing label for running that profile through the existing loop. There is no extra GTM package. Nova can plan the chain. The seeded playbook is gtm_autopilot. overnight_prospecting stays a sibling and is not this page's claim.
If you cannot say the vertical, the metro, the problem, and the offer in one sentence, you do not have an ICP yet. You have a mood. Scout will not turn a mood into a Places query.
Feature flag capability.gtm_autopilot can hide the ICP screen and the playbook. Off means the rest of Scout still searches. On does not mean send is live. Dry-run is still the first enable. Read the flag on the tenant you are in, not on a slide. Compile still emits search, scope, enrichment, and prebuild as a one-line summary you can read back before you activate.
The buyer is still the marketer. The vertical on the profile is the kind of shop you sell to. Scout never contacts those shops. Relay is the only agent that sends outreach, after ComplianceGate, on a domain you verified.
Vertical, metro, and exclusions become a Scout filter because compile is a pure step that emits a search spec Scout already knows how to run. Verticals are taxonomy ids. Dental offices maps to a health.dental node, not a keyword soup. Metro is a place: metros, radius, center, states, countries. Category lives in the taxonomy. Geo is not a vibe.
requiredSignals are predicates on the detector registry: website absent, receptionist_hiring present, rating at or under a number. excludedSignals cut the pile: an existing booking widget if you sell booking. Coming-soon detectors cannot be saved as dead predicates. The validator offers the nearest live proxy and will switch when the adapter ships.
Scout still searches Google Places as the required source and the only live discovery. Facebook adds page signals; Yelp needs a paid Fusion plan; Yellow Pages has no supported API. Each business is still saved once per source, keyed to the listing’s own ID. The ICP does not invent a second identity model. Handoffs still persist first and pass a business uuid.
Size bands and abilityToPay are optional and coarse. Ability to pay is an internal band. It never leaves the tenant screen. It never becomes a sentence in Relay. If you need a people graph of VPs, use Apollo. This filter hunts shops with problems. Size bands come from staff or review-volume proxies and stay labeled estimates. They sort. They do not become a sentence about payroll you never saw.
Handoffs still persist first and pass a business uuid. The ICP does not invent a second identity model. Each business is still saved once per source, keyed to the listing’s own ID. Facebook adds page signals; Yelp needs a paid Fusion plan; Yellow Pages has no supported API.
The offer must be a fulfillment action you can already deliver because the first email is supposed to attach a DEMO, not a brochure about a stack you have not enabled. leadActionId is an M06 id such as voice_agent.inbound. Secondary actions can ride along. If the lead action is off in Fulfillment Studio, save is blocked.
oneSentence is a merge-var template: you are losing X because Y happens every day. ground_lint in template mode checks that X and Y bind to signals and that the offer clause names the enabled action. A sentence that cannot be grounded does not become a sequence.
demoMode is preview_site, demo_number, or none. preview_site is a Forge website DEMO. demo_number is an inbound demo line. none means you are hunting without a sample, which is allowed and weaker. Voice stays inbound only. There is no demo mode for a cold call.
Role-to-offer defaults exist when you omit the action. Receptionist hiring leans inbound voice. The default still has to be enabled. The skill will ask. It will not quietly promise a funnel rebuild.
Voice stays inbound only. demoMode demo_number is an inbound demo line, not a cold call. preview_site is a Forge website DEMO. none means you are hunting without a sample, which is allowed and weaker. DEPLOY stays gated even when the preview loads.
Blast radius is computed before you spend by counting cached artifacts that match the compiled search and then subtracting locked and optional exclusions. The UI should say about 180 dental offices in that radius, about 140 after exclusions, with the subtraction reasons named.
That count is not a billable deep diagnostic. It is a read over what the engine already fetched. No enrichment. No Relay draft. No probe pack. If the cache is thin, the number is thin, and you should see that rather than a confident 10,000.
dailyNewAccounts and dailyResearchSpendCap sit on the profile as budget. Defaults in the spec are 25 accounts and a small research cap. Those are tenant-key budgets, not a public price list. This site will not turn them into a plan card.
Show the blast radius, then save as draft, then activate. Run now is optional and still only find plus exclude. Research, draft, and send live inside the playbook under other agents' autonomy. This skill does not call them.
Paused and archived are real statuses. Pause is how you stop a hunt without deleting the definition. Archive is how you keep Dental San Diego Voice around after you moved metros. Active should be few. Five active ICPs with overlapping geos will steal each other's contacted windows and then look empty.
The blast radius count is a read over cached artifacts. No enrichment. No Relay draft. No probe pack. If the cache is thin, the number is thin, and you should see that rather than a confident market you never fetched.
The locked exclusions always remove existing clients, open Pulse deals, and the suppression list, and those three are not editable on the ICP screen. contactedWithinDays defaults to 30. Competitors of clients can default on when you already have clients in the same vertical and metro. Franchises default off. Custom domains are optional extras.
Exclusions override inclusions. A row that matches every required signal still dies if it is last month's closed client. That is how you avoid emailing a shop Steward already invoices. It is also how you avoid a second sequence into an open Demo stage.
Unknown website is not a pass on a no-website hunt. The row goes to research for a re-fetch. Named buyer can be required. fallbackToGeneric defaults false, so info@ does not waltz into the outreach queue. Enrichment can retry. It does not get to send.
If you need to email a client about a new finding, that is Steward or an Atlas schedule, not an ICP blast. Mixing those paths is how retainers feel like cold traffic.
Suppression list is the M04 ledger. Unsubscribes and hard blocks live there. The ICP screen cannot turn that lock off. If a row keeps appearing, read the ledger before you blame compile.
contactedWithinDays defaults to 30. A row that matches every required signal still dies if it is last month's closed client. That is how you avoid a second sequence into an open Demo stage and a polite email to a shop Steward already invoices.
An ICP compiles into a search, a scope, and a DEMO mode as a pure scout.compile_icp result you can read as one line. search is the Scout query. scope type is icp for M08. enrichment is the buyer role order. prebuild is the DEMO the loop may raise when a row clears readiness.
Buyer roles are owner, president, gm, ops_lead, marketing_lead, office_manager, in the order you listed them. Default if you said nothing is owner, gm, office_manager. requireNamedBuyer feeds the readiness gate. A row without a person stays in Research.
minimumRecord is the other gate: website required or optional or absent_is_the_signal, named buyer, live signal, optional max age, and source plus date always on. Live means the signal has not decayed under Pulse profiles. A beautiful finding from 90 days ago is a museum piece.
queue_rank later explains why a row is on this morning's list: hiring receptionist, 2 days, Indeed, owner verified, DEMO built. Those reason strings are the product. A ranked queue without reasons is a slot machine.
minimumRecord is the other compile output: website required or optional or absent_is_the_signal, named buyer, live signal, optional max age, and source plus date always on. Live means the signal has not decayed under Pulse profiles.
GTM Autopilot starts in dry-run because find and exclude are cheap and send is the step with lawsuits and suspensions. nova.plan_chain asks M08 to enable the playbook in dry-run unless you already raised send and said live out loud. The skill's default is not live.
Dry-run shows what would match, what would be excluded, and what would wait on readiness. It touches nothing outbound. The Autonomy Matrix still keeps Relay yellow on send. ComplianceGate still brands a real send later. Quiet hours and warmup caps still exist.
Volume XOR autonomy is a ladder rule in the delta. You do not get to max daily accounts and max autonomy on day one as a mood. Circuit breakers and spend caps still apply. Kill switch still precedes everything.
overnight_prospecting is a different seeded playbook. This page does not claim it has been running in production. Governance screens can be live while the runner half is still a build. Ask what the last run row says. Do not take a slogan for a log.
Autonomy ladder volume XOR autonomy is a warning in config, not a proverb. If you raise dailyNewAccounts, the UI should push back on flipping send to green the same afternoon. Circuit breakers still exist. Spend caps still exist. Kill switch still exists. ICP does not outrank them.
Relay still drafts. ComplianceGate still brands a real send. Quiet hours and warmup caps still exist. Scout still never contacts. Activating a profile is not permission to spray a metro.
This ICP writer is for a solo marketer or a small team that already knows the verticals they can fulfill. Dentists in one metro, roofers in another, inbound voice for offices that keep posting receptionist. If your week is that sentence, write it down once.
If you sell to titles on LinkedIn, a people graph is the better corpus. If you only need a raw local list, a lighter scraper will feel faster. We start at the list and do not stop, which is more product to learn.
Agencies with two books of business care that compile stays inside the tenant. There is no path from one client's ICP matches into the other client's queue. v1 does not resell white-label sub-accounts.
Training can hold a copyable script. The profile is still the object. A playbook paragraph in M10 that you do not compile will rot. Taxonomy synonyms live in the detection catalog. Dental offices and dentist should land on the same node. If the parser misses, you pick the node. Do not save a free-text vertical Scout cannot query.
The first mistake is hunting quality businesses. Quality is not a filter. Vertical, metro, and a live predicate are a filter. If you cannot name the detector, you cannot name the DEMO.
The second mistake is an offer you cannot build this week. The validator will stop you if the action is off. If you bypass the spirit and write a oneSentence about a rebuild anyway, ground_lint should fail, and you should be glad.
The third mistake is treating unknown as absent so the blast radius looks bigger. You will email shops that had a site the crawl never rendered. Research exists. Use it.
The fourth mistake is activating five ICPs and then using personal Gmail because the queue looked full. Relay is the sender. Your domain is the gate. Sample-first still needs a finding and a link. An ICP is not a personality. A fifth mistake is saving abilityToPay as a pitch. That band never leaves the tenant screen. A sixth is treating unknown website as absent so the blast radius looks bigger.
Marketers reuse one ICP across a week by letting Monday's compile feed Tuesday's Radar list and Wednesday's Relay drafts. You do not retype San Diego dentists into five boxes. You open the profile. You read icp_stats. You see found, excluded, handed, and why the top of the queue is the top.
When a new detector goes live, the proxy can switch. Sentiment can replace a rating stand-in. You do not rewrite the hunt. When you enable a new Forge action, you can change leadActionId and demoMode. Old drafts that named the old offer should not silently retcon.
Watchtower can watch the rows the ICP already liked. Timing becomes a finding without a new philosophy. Steward inherits winners. The profile stays the definition of who you still want, not a trophy you framed after the first close.
Get started if you want into the next batch. Describe the kind of marketer you are. The form will not invent a price, and the ICP screen will not invent a vertical you did not pick. Write the hunt once. Let Scout run it tomorrow. That is the object.
Nova and Scout talk about an ICP in chat by parsing a sentence onto the five blocks, validating, showing blast radius, and saving a draft before anything spends. Set up an ICP: dental offices in San Diego hiring a receptionist, owner or office manager, lead with the voice agent. That maps verticals, geo, a hiring predicate, buyer roles, and voice_agent.inbound if the action is on.
The parser fills File-18 defaults when you stay quiet: contacted window 30 days, named buyer required, 25 accounts a day, a small research cap. You can change them. You should read them. Defaults that stay invisible become a hunt you did not mean.
Coming-soon predicates get a live proxy and a promise to switch. Sentiment is not live, so rating at or under 3.8 with at least 10 reviews can stand in. The draft should say that. Switching later should not rewrite old emails.
Why isn't this cafe in this morning's queue is a first-class question. The answer is a gate: no named buyer, Apollo-style enrichment returned info@ only, signal decayed, client exclusion, contacted inside the window. Research with a retry tonight is a state. Outreach is a different state. Do not merge them to make the queue look full.
scout.icp_stats is the 7-day funnel plus the top of the queue with reason strings. If chat answers with a slogan and no counts, believe the stats tool, not the slogan. Nova routes. Scout still owns the object.
Readiness requires the minimum record you stored on the profile before a row may reach the outreach queue. Website required, optional, or absent_is_the_signal. Named buyer on or off. Live signal on or off. Max age if you overrode the decay ceiling. Source and date always on.
A no-website hunt that lets unknown through will mail shops whose homepage the artifact engine never rendered. Those rows belong in research. A booking hunt that ignores an existing widget will mail a DEMO nobody needs. excludedSignals exist for that.
Enrichment for a person is an M04 provider slot. It can fail. fallbackToGeneric false keeps info@ out of the send pile. True allows info@ only into research. It never means send to whatever. ground_lint still wants a human-shaped merge when requireNamedBuyer is on.
queue_rank is a composite with explained contributions from persisted evidence. Hiring recency, owner verified, DEMO built, signal age, exclusion distance. Six contributions in the Radar diagnose_rank_icp tool. If a rank has no reasons, it is a slot machine and you should not trust the morning list.
Prebuild of a DEMO happens after readiness, not before. Building forty previews for rows that will die on named-buyer is how you burn Forge time. demoMode none skips prebuild. That is allowed. The email will be weaker. Say that to yourself before you call the ICP sample-first.
Competitors-of-clients exclusion needs you to already have clients in that vertical and metro. Empty book of business means the toggle does nothing useful. Franchises default off because a missing water-heater page at a franchisee can still be a local conversation. Custom domains are for the shops you have already decided never to mail.
An ICP cannot start sending email the night you activate it unless you already raised send and said live out loud. Compile and run find and exclude. The seeded playbook enables in dry-run. Supervised is the default. Scout still never contacts.
Dry-run shows what would match, what would be excluded, and what would wait on readiness. It touches nothing outbound. Relay still drafts. ComplianceGate still brands a real send later. Quiet hours and warmup caps still exist.
Volume XOR autonomy is a ladder rule. You do not get to max daily accounts and max autonomy on day one as a mood. Circuit breakers and spend caps still apply. Kill switch still precedes everything. ICP does not outrank them.
overnight_prospecting is a different seeded playbook. This page does not claim it has been running in production. Ask what the last run row says. Do not take a slogan for a log.
If the offer you want is not enabled in Forge, Scout will not save that leadActionId. Closest enabled actions are the ones you can put in a DEMO. A funnel rebuild you have not turned on cannot be the first sentence of an email.
oneSentence is a merge-var template. ground_lint checks that X and Y bind to signals and that the offer clause names the enabled action. A sentence that cannot be grounded does not become a sequence.
Role-to-offer defaults still have to be enabled. Receptionist hiring leans inbound voice. The skill will ask. It will not quietly promise a rebuild. Voice stays inbound only. There is no demo mode for a cold call.
demoMode is preview_site, demo_number, or none. none is allowed and weaker. Prebuild happens after readiness. Building previews for rows that will die on named-buyer is how you burn Forge time.
Locked exclusions stop you from mailing a current client because existing clients, open Pulse deals, and the suppression list are not editable on the ICP screen. A row that matches every required signal still dies if Steward already invoices it.
contactedWithinDays defaults to 30. Competitors of clients can default on when you already have clients in the same vertical and metro. Franchises default off. Custom domains are optional extras. Exclusions override inclusions.
If you need to talk to a client about a new finding, that is Steward or an Atlas schedule. Mixing those paths is how retainers feel like cold traffic. The ICP is a hunt for shops you do not already serve.
Suppression list is the M04 ledger. Unsubscribes and hard blocks live there. The screen cannot turn that lock off. If a row keeps appearing, read the ledger before you blame compile.
Unknown website is not a no-website lead because a failed fetch or a missing artifact is not the same fact as absent. The row goes to research for a re-fetch. Treating unknown as absent makes the blast radius look bigger and mails shops whose homepage never rendered.
website can be required, optional, or absent_is_the_signal. Absent is a verified claim. Unknown is an honest hole. LeadScore and filters that collapse those states will send you into a shop that has a form you never saw.
Named buyer can be required. fallbackToGeneric defaults false, so info@ does not waltz into the outreach queue. Enrichment can retry. It does not get to send. Research with a retry tonight is a state. Outreach is a different state.
A booking hunt that ignores an existing widget will mail a DEMO nobody needs. excludedSignals exist for that. Coming-soon predicates get a live proxy. The draft should say which proxy, and switching later should not rewrite old emails.
You should pause an ICP when the hunt is still the hunt you want and you need the queue to stop. Pause keeps the definition. Archive is how you keep Dental San Diego Voice around after you moved metros. Delete is how you lose the compile history.
Active should be few. Five active ICPs with overlapping geos will steal each other's contacted windows and then look empty. Read icp_stats. Found, excluded, handed, and why the top of the queue is the top.
When a new detector goes live, the proxy can switch. When you enable a new Forge action, you can change leadActionId and demoMode. Old drafts that named the old offer should not silently retcon. Pause is the safe moment to edit.
Agencies with two books care that compile stays inside the tenant. There is no path from one client's ICP matches into the other client's queue. v1 does not resell white-label sub-accounts. Two hunts that share a login share a list.
It is the targeting object a saved search, an automation scope, and a Relay offer directive compile from. You write it once. The hunt stops living in three screens.
Yes. website can be absent_is_the_signal. Unknown is not absent. Those rows go to research, not into the first email.
If that action is not enabled in Fulfillment, Scout will not save the offer. Closest enabled actions are the ones you can put in a DEMO.
No. Compile and run find and exclude. The seeded playbook enables in dry-run unless you already opted send up and asked for live. Supervised is the default.
Readiness can park it: no named buyer, a decayed signal, a locked exclusion, or a coming-soon predicate. The reason string should say which gate.
No. You are hunting local businesses with detectable problems and an offer you can fulfill, not LinkedIn titles.
Compile reads cached artifacts that match the search, then subtracts locked and optional exclusions. That count is not a Deep diagnostic. If the cache is thin, the number is thin.
Tell us your vertical, your metro, and what you can fulfill. Supervised is the default. Plans start at $99/mo.
14-day trial. Card required, converts on day 15. Full table on /pricing.