URL: /capabilities/goal-mode · Id: `page:/capabilities/goal-mode`

# Give it a goal

> Name the result and your budget: your agent shows the plan and its price, works inside it, and brings back a receipt for every call.

Name the result and your budget: your agent shows the plan and its price, works inside it, and brings back a receipt for every call.

- **Deepens:** [`noun:goal`](https://startupbuilder.dev/business/nouns/goal), [`noun:limit`](https://startupbuilder.dev/business/nouns/limit), [`noun:decision`](https://startupbuilder.dev/business/nouns/decision)
- **Works with:** [Every Workflow, agent task and Service: 40 calls](/capabilities/how-calls-compose#catalog)
- **Dry run:** Free: the plan and its estimate, nothing spent
- **Reference:** [Goal mode](/code/goal-mode)
- **First call:** `Goal.pursue`

```text title="Run it · Ask"
Book 5 calls with property managers this month from cold email, sending only from my warmed domain. Spend up to $40, and show me the plan first.
```

```ts title="Run it · SDK"
import { $ } from 'startup-builder'

const result = await $.try.Goal.pursue({ objective: 'Book 5 calls with property managers this month from cold email. Send only from the warmed domain.', by: '2026-11-26', budget: { amount: 40, currency: 'USD' } })
```

**Plan.** (1) The Key Result: `Meeting.booked`, 5, by 2026-11-26. (2) Read “property managers” from the offer’s ICP: 20 to 400 units, owners and operations leads. “Cold email” is email only. “Warmed domain” is the 2 warmed Mailboxes at 25 a day each: 50 a day, a hard limit. (3) lead with renewals, from the message test’s readout: a Decision with its source. (4) Build 400 checked prospects: Build a verified list, about $5.20. (5) Reach them in 3 touches: Personal first touch, about $5.44, first touches paced over 8 sending days, follow-ups on days 3 and 8. (6) Answer about 20 replies and book: Answer every inbound, about 32¢; `Meeting.book`, free. (7) Brief each call: Account brief × 5, about 55¢. (8) Keep 150 more prospects in reserve, about $4.00, if replies run under 3% by day 6. Expected: $11.61, at most $16.00, over 3 to 4 weeks. Estimate $11.61 of $40.00.

**Receipt.** 10 calls, $13.97 spent, 5 of 5 calls booked.

The reference for every call on this page is [Goal mode](/code/goal-mode).

## Two goals, spent well under budget
A founder with no customers has two questions first: who do I write to, and what do I write about. These two goals answer them.

The first asked [Build a verified list](/capabilities/find-customers/build-a-verified-list) for 50 verified heads of operations, with a $4 budget. The second asked the [Keyword opportunity map](/capabilities/research-demand/keyword-opportunity-map) for 20 keywords a new site can win, with $1.

Each stopped the moment it had what was asked. A budget is a ceiling, never a target: the agent spends nothing to use it up. Each cent below has a row on its [receipt](#g1).

> 50 verified heads of operations (or COO / VP Operations / Director of Property Operations) at US residential property management companies managing roughly 100–1,000 units.

50 of 50 verified · 29¢ of $4.00 · 136 calls · 21 minutes

> Find 20 winnable keywords for salesbuilder.dev (AI agents that get a founder their first customers).

20 of 20 keywords · 12¢ of $1.00 · 78 calls · 6 minutes

## It plans before it spends
A goal is a hub [Goal](https://startupbuilder.dev/business/nouns/goal) with one [Key Result](https://startupbuilder.dev/business/nouns/key-result), due within 31 days. The agent works through the call’s agentic [Function](https://startupbuilder.dev/business/nouns/function), whose `budget` is the most it may spend.

It starts from the call’s default program, the one a [Workflow](https://startupbuilder.dev/business/nouns/workflow) runs with every input set. Free counts size each step before anything is bought.

Each phrase of yours is a hard rule it never relaxes. A filter it adds to get there, such as a headcount range standing in for unit count, is soft, and the plan says so.

In [try mode](https://startupbuilder.dev/business/nouns/mode) the plan comes back with its estimate, and nothing is spent. To run that exact plan, pass it back as `plan`.

1. Read your words: each phrase becomes a hard rule, and any filter the agent adds is marked soft.
2. Plan from the default program of the Workflow, agent task or Service the sentence matches, sized by free counts.
3. Price each step at its unit price, and add one priced contingency step for the likeliest shortfall.
4. Ask at most one question, and only when a reading would change the price by more than twice or the result by more than half.
5. Return the plan and its estimate for $0. Nothing runs until you call it again with `send` or `do`.

## It runs inside the budget and changes course on the record
The budget is a [limit](https://startupbuilder.dev/business/nouns/limit) on the goal’s [Action](https://startupbuilder.dev/business/nouns/action), checked before every call. When the goal is met, it stops. When the next call fits what is left, it makes it.

When the next call does not fit, it stops and opens an [approval](https://startupbuilder.dev/business/nouns/approval) with its projection: “43 of 50 found. About 61¢ more finds the last 7. Your budget has 18¢ left.” A person answers it; the agent never does.

Every change of course is a [Decision](https://startupbuilder.dev/business/nouns/decision) that supersedes the plan, with the options it weighed and its reason. A fallback between routes is the platform’s job and records no Decision.

| It may change on its own | It never |
| --- | --- |
| How many rows, pages or candidates it reads | Relaxes a phrase of yours |
| The order of the work, such as checking emails in fit order to stop at the target | Raises its own budget, or answers its own approval |
| A soft filter it added, widened when too few results come back | Calls a Play, or acts outside your [standing approval](https://startupbuilder.dev/business/nouns/mandate) |
| The route, when one fails: an API to the browser agent, one call to its parts | Spends ad money past `spend`, or carries on past `by` |
| When it stops: early, when the goal is met or no supply is left at any price | Passes `by` on a step: whether a step reads or follows a rule is fixed in the composition |

## The receipt shows every call and why
The receipt is a view over one [Action](https://startupbuilder.dev/business/nouns/action). It opens on the Decisions, then gives one line per call: how many ran, what they cost, and what came back. Every row sits in a fold beneath, and the totals equal the sum of the rows.

Agent minutes and wall-clock days are two figures. A goal that waits on replies runs for weeks on a few minutes of agent time. Ad spend sits beside the budget, never inside it: the site bills it to your own account.

The agent’s own model cost sits on its own line as `agentUsd`, so you can see what the planning cost apart from the work. It is usually 2¢ to 10¢ a goal.

| Column | What it holds |
| --- | --- |
| # | The row, numbered from 1 within the goal; a Decision cites rows by this number |
| Call | The Verb it ran, with any option that changes its price, such as `ContactPoint.verifyEmail({ depth: 'deep' })` |
| Subject | What the call was about: a person, a term, a domain |
| Cost | What that call cost, in dollars at the precision it needs, such as $0.000495; a miss or a catch-all check is $0 |
| Running | The total so far, which the next call is checked against |
| Outcome | What came back, typed: counted, listed, found, none found, deliverable, risky, catch-all, invalid, no reading |
| Domain | On a find: whether the address sits at the person’s company domain, and the Decision that handled it when it does not |
| Why | Why it made the call; a change of course cites its Decision |

## Five goals, worked
The two goals above each ran one call. Three more ran several. One wrote and indexed [answer pages](/capabilities/make-content/answer-pages) until AI answers named Leaseline. One ran a [message test](/capabilities/run-ads/message-test) on $100 of ad spend, paused two losers early, and asked for $50 more. You said no.

The third is this page’s Run it: `Goal.pursue` booked five calls with property managers in 19 days and 95 agent minutes. It built the list, wrote the first touches, answered the replies and briefed each call. On day 6 it changed segment, as a Decision, because the larger companies had not replied.

Each call’s own page carries its goal’s plan, its Decisions and its full receipt. [Directory submissions](/capabilities/earn-first-links/directory-submissions) carries one more, where the agent switches routes when an API refuses.

> Get Leaseline named in AI answers for the 10 questions small landlords ask most about tracking rent.

10 of 10 questions answered by an indexed page · $1.94 of $15.00 · 107 calls · 60 minutes

> Find out which message gets small landlords to start a trial. Put up to $100 into ads.

1 of 1 winning message, likely · 28¢ of $5.00 · 41 calls · 14 minutes

## The 50-lead goal, call by call

The receipt of [Build a verified list](/capabilities/find-customers/build-a-verified-list) in goal mode. Run for real, it found 50 of 50 verified, and six Decisions explain every change of course.

| # | Time (UTC) | Call | Subject | Cost | Running | Outcome | Decision and reason |
| --- | --- | --- | --- | --- | --- | --- | --- |
| 0 | 12:49 | `Prospect.count` | 7 ops titles, industry Real Estate, headcount 5-75, US | Free | Free | 5150 people | free sizing of the first query |
| 1 | 12:49:48 | `Prospect.count` | industry ['Leasing Residential Real Estate'], keyword None, headcount 5-75 | Free | Free | 51 people | free sizing: industry=Leasing Residential Real Estate |
| 2 | 12:49:49 | `Prospect.count` | industry ['Real Estate'], keyword ['property management'], headcount 5-75 | Free | Free | 882 people | free sizing: industry=Real Estate + keyword property management |
| 3 | 12:49:51 | `Prospect.count` | industry ['Real Estate'], keyword ['residential property management'], headcount 5-75 | Free | Free | 18 people | free sizing: industry=Real Estate + keyword residential property management |
| 4 | 12:50:02 | `Prospect.find` | ['Real Estate'] + keyword ['property management'], size 150 | $0.038 | $0.038 | 150 rows | pull 150 rows from the 882-count query (Real Estate + 'property management' keyword, headcount 5-75, US) |
| 5 | 12:51:24 | `ContactPoint.findEmail` | Vanessa S. @ zestpm.com | $0.000495 | $0.0385 | v****@zestpm.com via route 1 of 1 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 6 | 12:51:28 | `ContactPoint.findEmail` | Dallas R. @ hollandprop.com | $0.005 | $0.0435 | d****@hollandprop.com via route 3 of 3 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 7 | 12:51:30 | `ContactPoint.findEmail` | Veronica C. @ guardstonepm.com | $0.000495 | $0.044 | v****@guardstonepm.com via route 1 of 1 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 8 | 12:51:44 | `ContactPoint.findEmail` | Michael F. @ choice-ny.com | $0.005 | $0.049 | m****@choicenewyork.com via route 3 of 3 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 9 | 12:51:46 | `ContactPoint.findEmail` | Eli H. @ aryamgmt.com | $0.000495 | $0.0495 | e****@aryamgmt.com via route 1 of 1 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 10 | 12:51:47 | `ContactPoint.findEmail` | Christy R. @ donasher.com | $0.000495 | 5¢ | c****@donasher.com via route 1 of 1 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 11 | 12:51:49 | `ContactPoint.findEmail` | Micah H. @ rebeesmanagement.com | $0.000495 | $0.0505 | m****@rebeesmanagement.com via route 1 of 1 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 12 | 12:51:51 | `ContactPoint.findEmail` | Manny V. @ sparkdevco.com | $0.004834 | $0.0553 | m****@naipfefferle.com via route 2 of 2 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 13 | 12:52:38 | `ContactPoint.findEmail` | Brandon K. @ jgmpropertygroup.com | $0.0089 | $0.0642 | b****@vrmco.com via route 6 of 6 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 14 | 12:52:39 | `ContactPoint.findEmail` | Kelly S. @ veloresidential.com | $0.000495 | $0.0647 | k****@veloresidential.com via route 1 of 1 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 15 | 12:52:41 | `ContactPoint.findEmail` | Jason R. @ rhoresidential.com | $0.000495 | $0.0652 | j****@rhoresidential.com via route 1 of 1 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 16 | 12:52:42 | `ContactPoint.findEmail` | Jamin H. @ tmg-atl.com | $0.000495 | $0.0657 | j****@gwinnettcounty.com via route 1 of 1 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 17 | 12:52:44 | `ContactPoint.findEmail` | CJ W. @ markrent.com | $0.000495 | $0.0662 | c****@markrent.com via route 1 of 1 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 18 | 12:52:45 | `ContactPoint.findEmail` | Andrew P. @ propertyss.com | $0.000495 | $0.0667 | a****@propertyss.com via route 1 of 1 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 19 | 12:52:47 | `ContactPoint.findEmail` | David B. @ blankfamilycommunities.com | $0.000495 | $0.0672 | d****@blankfamilycommunities.com via route 1 of 1 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 20 | 12:53:40 | `ContactPoint.findEmail` | Cassandra E. @ allcountycfl.com | $0.0089 | $0.0761 | c****@allcountycfl.com via route 5 of 5 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 21 | 12:53:42 | `ContactPoint.findEmail` | Aaron L. @ essentialpm.com | $0.000495 | $0.0766 | a****@essentialpm.com via route 1 of 1 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 22 | 12:53:44 | `ContactPoint.findEmail` | Patrick G. @ dartmouthpropertymanagement.com | $0.000495 | $0.0771 | p****@atlanticpropmgmt.com via route 1 of 1 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 23 | 12:53:45 | `ContactPoint.findEmail` | Dalton B. @ expressrpm.com | $0.000495 | $0.0776 | d****@expressrpm.com via route 1 of 1 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 24 | 12:53:47 | `ContactPoint.findEmail` | Duncan M. @ propwell.co | $0.004834 | $0.0824 | d****@propwell.co via route 2 of 2 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 25 | 12:53:49 | `ContactPoint.findEmail` | Kathleen T. @ associated-management.com | $0.000495 | $0.0829 | k****@associated-management.com via route 1 of 1 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 26 | 12:53:51 | `ContactPoint.findEmail` | Bob H. @ trillium-pm.com | $0.000495 | $0.0834 | b****@trillium-pm.com via route 1 of 1 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 27 | 12:53:53 | `ContactPoint.findEmail` | Joe R. @ csimanagement.com | $0.004834 | $0.0882 | j****@csicommunitymanagement.com via route 2 of 2 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 28 | 12:53:55 | `ContactPoint.findEmail` | MacKenzie F. @ bronxnypropertymanagement.com | $0.004834 | $0.0931 | m****@genrealgroup.com via route 2 of 2 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 29 | 12:53:57 | `ContactPoint.findEmail` | Devon P. @ abcmgt.com | $0.004834 | $0.0979 | d****@abcmgt.com via route 2 of 2 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 30 | 12:53:58 | `ContactPoint.findEmail` | Mario N. @ gtiproperties.com | $0.000495 | $0.0984 | m****@gtiproperties.com via route 1 of 1 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 31 | 12:54:00 | `ContactPoint.findEmail` | Alyssa H. @ flagshiprentalproperty.com | $0.004834 | $0.1032 | a****@flagshipnc.com via route 2 of 2 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 32 | 12:54:01 | `ContactPoint.findEmail` | Stephanie S. @ louisvillepropertymanagement.com | $0.004834 | $0.1081 | s****@lreillc.com via route 2 of 2 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 33 | 12:54:03 | `ContactPoint.findEmail` | Kendall E. @ thebrawleygroup.com | $0.000495 | $0.1085 | k****@thebrawleygroup.com via route 1 of 1 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 34 | 12:54:05 | `ContactPoint.findEmail` | Natasha A. @ exponentialpropertygroup.com | $0.004834 | $0.1134 | n****@exppg.com via route 2 of 2 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 35 | 12:54:07 | `ContactPoint.findEmail` | Stephen S. @ livbrook.com | $0.000495 | $0.1139 | s****@qdlending.com via route 1 of 1 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 36 | 12:54:08 | `ContactPoint.findEmail` | Greg G. @ blueskycommunities.com | $0.000495 | $0.1144 | g****@blueskycommunities.com via route 1 of 1 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 37 | 12:54:10 | `ContactPoint.findEmail` | Tiffanie B. @ sackcapitalpartners.com | $0.000495 | $0.1149 | t****@sackcapitalpartners.com via route 1 of 1 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 38 | 12:54:15 | `ContactPoint.findEmail` | Wendy L. @ jfisherco.com | $0.005 | $0.1199 | w****@jfisherco.com via route 3 of 3 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 39 | 12:54:23 | `ContactPoint.findEmail` | Lisa L. @ kromerinvestments.com | $0.000495 | $0.1204 | l****@kromerinvestments.com via route 1 of 1 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 40 | 12:54:25 | `ContactPoint.findEmail` | Sheri L. @ genesisliving.com | $0.000495 | $0.1209 | s****@genesisliving.com via route 1 of 1 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 41 | 12:54:27 | `ContactPoint.findEmail` | Sandy M. @ aptresidential.com | $0.004834 | $0.1257 | s****@aptresidential.com via route 2 of 2 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 42 | 12:54:31 | `ContactPoint.findEmail` | Lewis L. @ mysunrisecommunity.com | $0.005 | $0.1307 | l****@mysunrisecommunity.com via route 3 of 3 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 43 | 12:54:33 | `ContactPoint.findEmail` | Darla H. @ pk-companies.com | $0.004834 | $0.1355 | d****@pkhousing.com via route 2 of 2 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 44 | 12:54:34 | `ContactPoint.findEmail` | Karlin C. @ imgre.com | $0.000495 | $0.136 | k****@imgre.com via route 1 of 1 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 45 | 12:54:36 | `ContactPoint.findEmail` | Jared B. @ atlasstark.com | $0.000495 | $0.1365 | j****@atlasstark.com via route 1 of 1 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 46 | 12:54:37 | `ContactPoint.findEmail` | Branden L. @ bbliving.com | $0.000495 | $0.137 | b****@bbliving.com via route 1 of 1 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 47 | 12:54:51 | `ContactPoint.findEmail` | Courtney T. @ onewallcommunities.com | $0.0089 | $0.1459 | c****@owcommunities.com via route 5 of 5 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 48 | 12:55:28 | `ContactPoint.findEmail` | William H. @ mhpartners.org | Free | $0.1459 | w****@mhpartners.org via route 8 of 8 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 49 | 12:55:32 | `ContactPoint.findEmail` | Anthony Z. @ hamiltonzanze.com | $0.005 | $0.1509 | a****@hamiltonzanze.com via route 3 of 3 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 50 | 12:55:34 | `ContactPoint.findEmail` | Brady S. @ montgomerypartners.com | $0.000495 | $0.1514 | b****@montgomerypartners.com via route 1 of 1 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 51 | 12:55:37 | `ContactPoint.findEmail` | Yoel S. @ halcyonre.com | $0.000495 | $0.1519 | y****@halcyonre.com via route 1 of 1 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 52 | 12:55:38 | `ContactPoint.findEmail` | Alex N. @ bradenfellman.com | $0.000495 | $0.1524 | a****@bradenfellman.com via route 1 of 1 tried | routed waterfall, cheapest-per-hit first (LinkedIn URL), name+domain fallbacks, 3¢ cap per person |
| 53 | 12:55:55 | `ContactPoint.findEmail` | Manny V. @ sparkdevco.com | $0.005 | $0.1574 | m****@sparkdevco.com via route 1 of 1 tried | first find returned an address at a former employer; retry by name + current company domain only, excluding the LinkedIn-history routes |
| 54 | 12:57:07 | `ContactPoint.findEmail` | Brandon K. @ jgmpropertygroup.com | Free | $0.1574 | no email via route — of 12 tried | first find returned an address at a former employer; retry by name + current company domain only, excluding the LinkedIn-history routes |
| 55 | 12:57:12 | `ContactPoint.findEmail` | Jamin H. @ tmg-atl.com | $0.005 | $0.1624 | j****@tmg-atl.com via route 1 of 1 tried | first find returned an address at a former employer; retry by name + current company domain only, excluding the LinkedIn-history routes |
| 56 | 12:57:18 | `ContactPoint.findEmail` | Stephen S. @ livbrook.com | Free | $0.1624 | s****@livbrook.com via route 4 of 4 tried | first find returned an address at a former employer; retry by name + current company domain only, excluding the LinkedIn-history routes |
| 57 | 12:57:30 | `ContactPoint.verifyEmail` | v****@zestpm.com | $0.0004 | $0.1628 | invalid via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 58 | 12:57:35 | `ContactPoint.verifyEmail` | d****@hollandprop.com | $0.0004 | $0.1632 | valid via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 59 | 12:57:46 | `ContactPoint.verifyEmail` | v****@guardstonepm.com | $0.0004 | $0.1636 | valid via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 60 | 12:58:00 | `ContactPoint.verifyEmail` | m****@choicenewyork.com | Free | $0.1636 | valid via route 1 | routed verify: free route first, paid fallbacks capped at 1¢ |
| 61 | 12:58:04 | `ContactPoint.verifyEmail` | e****@aryamgmt.com | Free | $0.1636 | valid via route 1 | routed verify: free route first, paid fallbacks capped at 1¢ |
| 62 | 12:58:08 | `ContactPoint.verifyEmail` | c****@donasher.com | Free | $0.1636 | valid via route 1 | routed verify: free route first, paid fallbacks capped at 1¢ |
| 63 | 12:58:13 | `ContactPoint.verifyEmail` | m****@rebeesmanagement.com | $0.0004 | $0.164 | valid via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 64 | 12:58:17 | `ContactPoint.verifyEmail` | m****@sparkdevco.com | $0.0004 | $0.1644 | valid via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 65 | 12:58:20 | `ContactPoint.verifyEmail` | k****@veloresidential.com | $0.0004 | $0.1648 | valid-risky via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 66 | 12:58:32 | `ContactPoint.verifyEmail` | j****@rhoresidential.com | $0.0004 | $0.1652 | valid via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 67 | 12:58:36 | `ContactPoint.verifyEmail` | j****@tmg-atl.com | $0.0004 | $0.1656 | valid via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 68 | 12:58:39 | `ContactPoint.verifyEmail` | c****@markrent.com | $0.0004 | $0.166 | valid via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 69 | 12:58:43 | `ContactPoint.verifyEmail` | a****@propertyss.com | $0.0004 | $0.1664 | valid via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 70 | 12:58:59 | `ContactPoint.verifyEmail` | d****@blankfamilycommunities.com | Free | $0.1664 | valid via route 1 | routed verify: free route first, paid fallbacks capped at 1¢ |
| 71 | 12:59:01 | `ContactPoint.verifyEmail` | c****@allcountycfl.com | Free | $0.1664 | accept_all via route 1 | routed verify: free route first, paid fallbacks capped at 1¢ |
| 72 | 12:59:05 | `ContactPoint.verifyEmail` | a****@essentialpm.com | $0.0004 | $0.1668 | valid via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 73 | 12:59:10 | `ContactPoint.verifyEmail` | p****@atlanticpropmgmt.com | $0.0004 | $0.1672 | valid via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 74 | 12:59:13 | `ContactPoint.verifyEmail` | d****@expressrpm.com | $0.0004 | $0.1676 | invalid via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 75 | 12:59:18 | `ContactPoint.verifyEmail` | d****@propwell.co | $0.0004 | $0.168 | valid via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 76 | 12:59:23 | `ContactPoint.verifyEmail` | k****@associated-management.com | $0.0004 | $0.1684 | valid via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 77 | 12:59:26 | `ContactPoint.verifyEmail` | b****@trillium-pm.com | $0.0004 | $0.1688 | valid via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 78 | 12:59:29 | `ContactPoint.verifyEmail` | j****@csicommunitymanagement.com | $0.0004 | $0.1692 | valid-risky via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 79 | 12:59:32 | `ContactPoint.verifyEmail` | m****@genrealgroup.com | $0.0004 | $0.1696 | valid via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 80 | 12:59:35 | `ContactPoint.verifyEmail` | d****@abcmgt.com | $0.0004 | 17¢ | valid-risky via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 81 | 12:59:41 | `ContactPoint.verifyEmail` | m****@gtiproperties.com | $0.0004 | $0.1704 | valid via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 82 | 12:59:44 | `ContactPoint.verifyEmail` | a****@flagshipnc.com | $0.0004 | $0.1708 | valid-risky via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 83 | 13:00:03 | `ContactPoint.verifyEmail` | s****@lreillc.com | Free | $0.1708 | valid via route 1 | routed verify: free route first, paid fallbacks capped at 1¢ |
| 84 | 13:00:09 | `ContactPoint.verifyEmail` | k****@thebrawleygroup.com | $0.0004 | $0.1712 | valid-risky via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 85 | 13:00:13 | `ContactPoint.verifyEmail` | n****@exppg.com | $0.0004 | $0.1716 | valid via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 86 | 13:00:17 | `ContactPoint.verifyEmail` | s****@livbrook.com | $0.0004 | $0.172 | invalid via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 87 | 13:00:22 | `ContactPoint.verifyEmail` | g****@blueskycommunities.com | $0.0004 | $0.1724 | valid via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 88 | 13:00:27 | `ContactPoint.verifyEmail` | t****@sackcapitalpartners.com | $0.0004 | $0.1728 | valid via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 89 | 13:00:31 | `ContactPoint.verifyEmail` | w****@jfisherco.com | $0.0004 | $0.1732 | valid via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 90 | 13:00:35 | `ContactPoint.verifyEmail` | l****@kromerinvestments.com | $0.0004 | $0.1736 | valid via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 91 | 13:00:41 | `ContactPoint.verifyEmail` | s****@genesisliving.com | $0.0004 | $0.174 | valid-risky via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 92 | 13:00:44 | `ContactPoint.verifyEmail` | s****@aptresidential.com | $0.0004 | $0.1744 | valid via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 93 | 13:00:54 | `ContactPoint.verifyEmail` | l****@mysunrisecommunity.com | $0.0004 | $0.1748 | valid-risky via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 94 | 13:01:02 | `ContactPoint.verifyEmail` | d****@pkhousing.com | $0.0004 | $0.1752 | valid via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 95 | 13:01:09 | `ContactPoint.verifyEmail` | k****@imgre.com | Free | $0.1752 | valid via route 1 | routed verify: free route first, paid fallbacks capped at 1¢ |
| 96 | 13:01:14 | `ContactPoint.verifyEmail` | j****@atlasstark.com | $0.0004 | $0.1756 | valid via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 97 | 13:01:18 | `ContactPoint.verifyEmail` | b****@bbliving.com | $0.0004 | $0.176 | valid via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 98 | 13:01:21 | `ContactPoint.verifyEmail` | c****@owcommunities.com | $0.0004 | $0.1764 | valid via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 99 | 13:01:27 | `ContactPoint.verifyEmail` | w****@mhpartners.org | $0.0004 | $0.1768 | invalid via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 100 | 13:01:31 | `ContactPoint.verifyEmail` | a****@hamiltonzanze.com | $0.0004 | $0.1772 | valid via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 101 | 13:01:34 | `ContactPoint.verifyEmail` | b****@montgomerypartners.com | $0.0004 | $0.1776 | valid via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 102 | 13:01:38 | `ContactPoint.verifyEmail` | y****@halcyonre.com | $0.0004 | $0.178 | valid via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 103 | 13:01:44 | `ContactPoint.verifyEmail` | a****@bradenfellman.com | $0.0004 | $0.1784 | valid via route 2 (route 1 rate-limited 429, fell through) | routed verify: free route first, paid fallbacks capped at 1¢ |
| 104 | 13:02:39 | `ContactPoint.verifyEmail({ depth: 'deep' })` | k****@veloresidential.com | $0.004 | $0.1824 | deliverable (score 97, accept-all True) | second opinion on a catch-all / risky result: a verifier that resolves catch-all mailboxes, deepverify mode since the domain is the current employer |
| 105 | 13:03:13 | `ContactPoint.verifyEmail({ depth: 'deep' })` | c****@allcountycfl.com | $0.004 | $0.1864 | deliverable (score 97, accept-all True) | second opinion on a catch-all / risky result: a verifier that resolves catch-all mailboxes, deepverify mode since the domain is the current employer |
| 106 | 13:03:46 | `ContactPoint.verifyEmail({ depth: 'deep' })` | j****@csicommunitymanagement.com | $0.004 | $0.1904 | deliverable (score 99, accept-all False) | second opinion on a catch-all / risky result: a verifier that resolves catch-all mailboxes, deepverify mode since the domain is the current employer |
| 107 | 13:04:21 | `ContactPoint.verifyEmail({ depth: 'deep' })` | d****@abcmgt.com | $0.004 | $0.1944 | deliverable (score 99, accept-all True) | second opinion on a catch-all / risky result: a verifier that resolves catch-all mailboxes, deepverify mode since the domain is the current employer |
| 108 | 13:04:56 | `ContactPoint.verifyEmail({ depth: 'deep' })` | a****@flagshipnc.com | $0.004 | $0.1984 | deliverable (score 97, accept-all True) | second opinion on a catch-all / risky result: a verifier that resolves catch-all mailboxes, deepverify mode since the domain is the current employer |
| 109 | 13:05:28 | `ContactPoint.verifyEmail({ depth: 'deep' })` | k****@thebrawleygroup.com | $0.004 | $0.2024 | deliverable (score 97, accept-all True) | second opinion on a catch-all / risky result: a verifier that resolves catch-all mailboxes, deepverify mode since the domain is the current employer |
| 110 | 13:06:01 | `ContactPoint.verifyEmail({ depth: 'deep' })` | s****@genesisliving.com | $0.004 | $0.2064 | deliverable (score 99, accept-all True) | second opinion on a catch-all / risky result: a verifier that resolves catch-all mailboxes, deepverify mode since the domain is the current employer |
| 111 | 13:06:34 | `ContactPoint.verifyEmail({ depth: 'deep' })` | l****@mysunrisecommunity.com | $0.004 | $0.2104 | deliverable (score 97, accept-all True) | second opinion on a catch-all / risky result: a verifier that resolves catch-all mailboxes, deepverify mode since the domain is the current employer |
| 112 | 13:06:47 | `ContactPoint.findEmail` | Vanessa S. @ zestpm.com | $0.004834 | $0.2152 | v****@zestpm.com via route 1 of 1 tried | verify said invalid; re-find excluding the provider that produced the bad address |
| 113 | 13:07:04 | `ContactPoint.findEmail` | Dalton B. @ expressrpm.com | 2¢ | $0.2352 | d****@expressrpm.com via route 7 of 7 tried | verify said invalid; re-find excluding the provider that produced the bad address |
| 114 | 13:07:30 | `ContactPoint.findEmail` | Stephen S. @ livbrook.com | Free | $0.2352 | no email via route — of 11 tried | verify said invalid; re-find excluding the provider that produced the bad address |
| 115 | 13:07:39 | `ContactPoint.findEmail` | William H. @ mhpartners.org | $0.0198 | $0.255 | b****@mhpartners.org via route 8 of 8 tried | verify said invalid; re-find excluding the provider that produced the bad address |
| 116 | 13:07:50 | `ContactPoint.verifyEmail` | b****@mhpartners.org | Free | $0.255 | valid via route 1 | verify the re-found address |
| 117 | 13:07:52 | `Prospect.find` | ['Real Estate'] + keyword ['property management'], size 60 (page 2 token) | Free | $0.255 | 0 rows | pull 60 rows from the 882-count query (Real Estate + 'property management' keyword, headcount 5-75, US) |
| 118 | 13:08:08 | `Prospect.count` | industry ['Leasing Residential Real Estate'], keyword None, headcount 5-75 | Free | $0.255 | 51 people | free re-sizing after page-2 token returned 0 rows: Leasing Residential Real Estate (no keyword) |
| 119 | 13:08:10 | `Prospect.count` | industry ['Real Estate'], keyword ['apartment'], headcount 5-75 | Free | $0.255 | 193 people | free re-sizing after page-2 token returned 0 rows: Real Estate + keyword apartment |
| 120 | 13:08:12 | `Prospect.count` | industry ['Real Estate'], keyword ['multifamily'], headcount 5-75 | Free | $0.255 | 291 people | free re-sizing after page-2 token returned 0 rows: Real Estate + keyword multifamily |
| 121 | 13:08:14 | `Prospect.count` | industry ['Real Estate'], keyword ['residential property'], headcount 5-150 | Free | $0.255 | 57 people | free re-sizing after page-2 token returned 0 rows: Real Estate + keyword residential property management, headcount 5-150 |
| 122 | 13:08:25 | `Prospect.find` | ['Leasing Residential Real Estate'] + keyword None, size 51 | $0.01938 | $0.2744 | 51 rows | page-2 token returned nothing; switch to the higher-precision industry 'Leasing Residential Real Estate' (51 people) |
| 123 | 13:08:50 | `ContactPoint.findEmail` | Tiffany B. @ grayres.com | $0.000495 | $0.2749 | t****@grayres.com via route 1 of 1 tried | batch 2 (Leasing Residential Real Estate), same routed waterfall |
| 124 | 13:08:53 | `ContactPoint.verifyEmail` | t****@grayres.com | Free | $0.2749 | valid via route 1 | verify batch-2 find |
| 125 | 13:08:54 | `ContactPoint.findEmail` | Justin L. @ leasetexas.com | $0.000495 | $0.2754 | j****@leasetexas.com via route 1 of 1 tried | batch 2 (Leasing Residential Real Estate), same routed waterfall |
| 126 | 13:08:56 | `ContactPoint.verifyEmail` | j****@leasetexas.com | Free | $0.2754 | valid via route 1 | verify batch-2 find |
| 127 | 13:08:58 | `ContactPoint.findEmail` | Bob V. @ smartpmco.com | $0.000495 | $0.2759 | b****@smartpmco.com via route 1 of 1 tried | batch 2 (Leasing Residential Real Estate), same routed waterfall |
| 128 | 13:09:02 | `ContactPoint.verifyEmail` | b****@smartpmco.com | Free | $0.2759 | valid via route 1 | verify batch-2 find |
| 129 | 13:09:03 | `ContactPoint.findEmail` | Joe H. @ trepluspm.com | $0.000495 | $0.2764 | j****@trepluscommunities.com via route 1 of 1 tried | batch 2 (Leasing Residential Real Estate), same routed waterfall |
| 130 | 13:09:10 | `ContactPoint.verifyEmail` | j****@trepluscommunities.com | 1¢ | $0.2864 | valid via route 1 | verify batch-2 find |
| 131 | 13:09:11 | `ContactPoint.findEmail` | Princess M. @ wpg-management.com | $0.000495 | $0.2869 | p****@wpg-management.com via route 1 of 1 tried | batch 2 (Leasing Residential Real Estate), same routed waterfall |
| 132 | 13:09:14 | `ContactPoint.verifyEmail` | p****@wpg-management.com | Free | $0.2869 | valid via route 1 | verify batch-2 find |
| 133 | 13:09:15 | `ContactPoint.findEmail` | Lindsay S. @ streamlinemultifamily.com | $0.000495 | $0.2874 | l****@streamlinemultifamily.com via route 1 of 1 tried | batch 2 (Leasing Residential Real Estate), same routed waterfall |
| 134 | 13:09:18 | `ContactPoint.verifyEmail` | l****@streamlinemultifamily.com | Free | $0.2874 | accept_all via route 1 | verify batch-2 find |
| 135 | 13:09:53 | `ContactPoint.verifyEmail({ depth: 'deep' })` | l****@streamlinemultifamily.com | $0.004 | $0.2914 | deliverable (score 99, accept-all True) | second opinion on catch-all/risky |

## The 20-keyword goal, call by call

The receipt of the [Keyword opportunity map](/capabilities/research-demand/keyword-opportunity-map) in goal mode, including the switch to search-box suggestions when related terms had nothing for founder phrasing.

| # | Time (UTC) | Call | Subject | Cost | Running | Outcome | Decision and reason |
| --- | --- | --- | --- | --- | --- | --- | --- |
| 136 | 13:11:43 | `Keyword.find` | 'ai sales agent' (related, size 60) | $0.0005 | $0.0005 | 60 rows | seed 1 of 5: the product category term |
| 137 | 13:12:00 | `Keyword.find` | 'ai sdr' (related, size 100) | $0.0005 | $0.001 | 3 rows | seed 2: 'ai sdr' (first call billed per call, not per row, so size raised from 60 to 100 at no extra cost) |
| 138 | 13:12:02 | `Keyword.find` | 'how to get first customers' (related, size 100) | Free | $0.001 | no data (Data not found) | seed 3: 'how to get first customers' (first call billed per call, not per row, so size raised from 60 to 100 at no extra cost) |
| 139 | 13:12:05 | `Keyword.find` | 'find customers for startup' (related, size 100) | Free | $0.001 | no data (Data not found) | seed 4: 'find customers for startup' (first call billed per call, not per row, so size raised from 60 to 100 at no extra cost) |
| 140 | 13:12:07 | `Keyword.find` | 'lead generation for startups' (related, size 100) | $0.0005 | $0.0015 | 19 rows | seed 5: 'lead generation for startups' (first call billed per call, not per row, so size raised from 60 to 100 at no extra cost) |
| 141 | 13:12:10 | `Keyword.find` | 'ai lead generation' (related, size 100) | $0.0005 | $0.002 | 28 rows | seed 6: 'ai lead generation' (first call billed per call, not per row, so size raised from 60 to 100 at no extra cost) |
| 142 | 13:12:12 | `Keyword.find` | 'outbound sales automation' (related, size 100) | $0.0005 | $0.0025 | 70 rows | seed 7: 'outbound sales automation' (first call billed per call, not per row, so size raised from 60 to 100 at no extra cost) |
| 143 | 13:12:28 | `Keyword.find` | 'first customers' (phrase match, size 100) | $0.0005 | $0.003 | 100 rows | related-keyword graph had no data for founder phrasing; switch to phrase match (phrase match / suggestions) for 'first customers' |
| 144 | 13:12:30 | `Keyword.find` | 'first customers' (suggestions, size 100) | $0.0005 | $0.0035 | 100 rows | related-keyword graph had no data for founder phrasing; switch to suggestions (phrase match / suggestions) for 'first customers' |
| 145 | 13:12:32 | `Keyword.find` | 'ai sdr' (phrase match, size 100) | $0.0005 | $0.004 | 5 rows | related-keyword graph had no data for founder phrasing; switch to phrase match (phrase match / suggestions) for 'ai sdr' |
| 146 | 13:12:52 | `Keyword.find({ mode: 'suggestions' })` | 'how to get your first customers' | $0.00085 | $0.0049 | 10 suggestions | founder phrasing missing from the related-keyword graph; autocomplete for 'how to get your first customers' |
| 147 | 13:12:57 | `Keyword.find({ mode: 'suggestions' })` | 'how to get first customers for' | $0.00085 | $0.0057 | 10 suggestions | founder phrasing missing from the related-keyword graph; autocomplete for 'how to get first customers for' |
| 148 | 13:13:08 | `Keyword.find({ mode: 'suggestions' })` | 'ai agent for lead generation' | $0.00085 | $0.0066 | 10 suggestions | founder phrasing missing from the related-keyword graph; autocomplete for 'ai agent for lead generation' |
| 149 | 13:13:16 | `Keyword.find({ mode: 'suggestions' })` | 'ai agent that finds' | $0.00085 | $0.0074 | 4 suggestions | founder phrasing missing from the related-keyword graph; autocomplete for 'ai agent that finds' |
| 150 | 13:13:23 | `Keyword.find({ mode: 'suggestions' })` | 'first 10 customers' | $0.00085 | $0.0083 | 8 suggestions | founder phrasing missing from the related-keyword graph; autocomplete for 'first 10 customers' |
| 151 | 13:13:26 | `Keyword.find({ mode: 'suggestions' })` | 'ai sdr for' | $0.00085 | $0.0091 | 10 suggestions | founder phrasing missing from the related-keyword graph; autocomplete for 'ai sdr for' |
| 152 | 13:13:56 | `Keyword.measure` | 63 keywords | $0.022 | $0.0311 | 44 with data, 19 without | one batch call: volume, CPC, difficulty and intent for the 63-keyword shortlist (fills metrics for autocomplete ideas) |
| 153 | 13:14:12 | `Keyword.search` | 'ai lead generation' | $0.00015 | $0.0312 | 9 organic results | top-10 organic for a shortlisted keyword |
| 154 | 13:14:14 | `Keyword.search` | 'ai lead generator' | $0.00015 | $0.0314 | 10 organic results | top-10 organic for a shortlisted keyword |
| 155 | 13:14:18 | `Keyword.search` | 'ai sdr' | $0.00015 | $0.0315 | 10 organic results | top-10 organic for a shortlisted keyword |
| 156 | 13:14:25 | `Keyword.search` | 'ai sales agent' | $0.00015 | $0.0317 | 9 organic results | top-10 organic for a shortlisted keyword |
| 157 | 13:14:28 | `Keyword.search` | 'ai sales agents' | $0.00015 | $0.0318 | 10 organic results | top-10 organic for a shortlisted keyword |
| 158 | 13:14:34 | `Keyword.search` | 'ai agents for sales' | $0.00015 | $0.032 | 10 organic results | top-10 organic for a shortlisted keyword |
| 159 | 13:14:37 | `Keyword.search` | 'ai sales rep' | $0.00015 | $0.0321 | 9 organic results | top-10 organic for a shortlisted keyword |
| 160 | 13:14:40 | `Keyword.search` | 'ai salesperson' | $0.00015 | $0.0323 | 9 organic results | top-10 organic for a shortlisted keyword |
| 161 | 13:14:43 | `Keyword.search` | 'ai sales agent software' | $0.00015 | $0.0324 | 10 organic results | top-10 organic for a shortlisted keyword |
| 162 | 13:14:46 | `Keyword.search` | 'best ai sales agents' | $0.00015 | $0.0326 | 9 organic results | top-10 organic for a shortlisted keyword |
| 163 | 13:14:48 | `Keyword.search` | 'how to get your first 10 customers' | $0.00015 | $0.0327 | 10 organic results | top-10 organic for a shortlisted keyword |
| 164 | 13:14:51 | `Keyword.search` | 'ai agents for lead generation' | $0.00015 | $0.0329 | 9 organic results | top-10 organic for a shortlisted keyword |
| 165 | 13:14:55 | `Keyword.search` | 'customer acquisition for startups' | $0.00015 | $0.033 | 10 organic results | top-10 organic for a shortlisted keyword |
| 166 | 13:14:58 | `Keyword.search` | 'lead generation startup' | $0.00015 | $0.0332 | 10 organic results | top-10 organic for a shortlisted keyword |
| 167 | 13:15:01 | `Keyword.search` | 'ai sales prospecting' | $0.00015 | $0.0333 | 10 organic results | top-10 organic for a shortlisted keyword |
| 168 | 13:15:04 | `Keyword.search` | 'best ai tools for lead generation' | $0.00015 | $0.0335 | 10 organic results | top-10 organic for a shortlisted keyword |
| 169 | 13:15:08 | `Keyword.search` | 'outbound sdr' | $0.00015 | $0.0336 | 8 organic results | top-10 organic for a shortlisted keyword |
| 170 | 13:15:11 | `Keyword.search` | 'ai b2b lead generation' | $0.00015 | $0.0338 | 10 organic results | top-10 organic for a shortlisted keyword |
| 171 | 13:15:14 | `Keyword.search` | 'ai cold email' | $0.00015 | $0.0339 | 9 organic results | top-10 organic for a shortlisted keyword |
| 172 | 13:15:18 | `Keyword.search` | 'ai prospecting' | $0.00015 | $0.0341 | 9 organic results | top-10 organic for a shortlisted keyword |
| 173 | 13:15:21 | `Keyword.search` | 'ai powered sales development representative' | $0.00015 | $0.0342 | 10 organic results | top-10 organic for a shortlisted keyword |
| 174 | 13:15:26 | `Keyword.search` | 'how to get your first 100 customers' | $0.00015 | $0.0344 | 9 organic results | top-10 organic for a shortlisted keyword |
| 175 | 13:15:28 | `Keyword.search` | 'how to get your first customers' | $0.00015 | $0.0345 | 10 organic results | top-10 organic for a shortlisted keyword |
| 176 | 13:15:33 | `Keyword.search` | 'ai agent for lead generation' | $0.00015 | $0.0347 | 7 organic results | top-10 organic for a shortlisted keyword |
| 177 | 13:15:36 | `Keyword.search` | 'how to get first customers for saas' | $0.00015 | $0.0348 | 10 organic results | top-10 organic for a shortlisted keyword |
| 178 | 13:15:39 | `Keyword.search` | 'sdr tools' | $0.00015 | $0.035 | 9 organic results | top-10 organic for a shortlisted keyword |
| 179 | 13:15:41 | `Keyword.search` | 'ai sales automation' | $0.00015 | $0.0351 | 10 organic results | top-10 organic for a shortlisted keyword |
| 180 | 13:15:45 | `Keyword.search` | 'how to find your first customers' | $0.00015 | $0.0353 | 10 organic results | top-10 organic for a shortlisted keyword |
| 181 | 13:16:01 | `Domain.benchmark` | aisdr.com | $0.002685 | $0.038 | domain 80, page 23 | authority of a domain in a top-5 result; routed, first choice is the $0.00268 provider |
| 182 | 13:16:13 | `Domain.benchmark` | amplemarket.com | $0.002685 | $0.0407 | domain 82, page 33 | authority of a top-5 domain |
| 183 | 13:16:15 | `Domain.benchmark` | artisan.co | $0.002685 | $0.0434 | domain 89, page 26 | authority of a top-5 domain |
| 184 | 13:16:17 | `Domain.benchmark` | b2bmarketing.exchange | $0.002685 | $0.046 | domain 82, page 19 | authority of a top-5 domain |
| 185 | 13:16:19 | `Domain.benchmark` | callboxinc.com | $0.002685 | $0.0487 | domain 83, page 31 | authority of a top-5 domain |
| 186 | 13:16:21 | `Domain.benchmark` | clay.com | $0.002685 | $0.0514 | domain 89, page 36 | authority of a top-5 domain |
| 187 | 13:16:23 | `Domain.benchmark` | creatio.com | $0.002685 | $0.0541 | domain 88, page 29 | authority of a top-5 domain |
| 188 | 13:16:25 | `Domain.benchmark` | dialpad.com | $0.002685 | $0.0568 | domain 90, page 38 | authority of a top-5 domain |
| 189 | 13:16:27 | `Domain.benchmark` | failory.com | $0.002685 | $0.0595 | domain 87, page 29 | authority of a top-5 domain |
| 190 | 13:16:29 | `Domain.benchmark` | fin.ai | $0.002685 | $0.0621 | domain 87, page 31 | authority of a top-5 domain |
| 191 | 13:16:31 | `Domain.benchmark` | firstpagesage.com | $0.002685 | $0.0648 | domain 90, page 28 | authority of a top-5 domain |
| 192 | 13:16:32 | `Domain.benchmark` | getdatabees.com | $0.002685 | $0.0675 | domain 60, page 10 | authority of a top-5 domain |
| 193 | 13:16:34 | `Domain.benchmark` | gumloop.com | $0.002685 | $0.0702 | domain 84, page 22 | authority of a top-5 domain |
| 194 | 13:16:35 | `Domain.benchmark` | hsbcinnovationbanking.com | $0.002685 | $0.0729 | domain 75, page 17 | authority of a top-5 domain |
| 195 | 13:16:37 | `Domain.benchmark` | improvado.io | $0.002685 | $0.0756 | domain 88, page 31 | authority of a top-5 domain |
| 196 | 13:16:39 | `Domain.benchmark` | knock-ai.com | $0.002685 | $0.0783 | domain 79, page 11 | authority of a top-5 domain |
| 197 | 13:16:41 | `Domain.benchmark` | leadpages.com | $0.002685 | $0.0809 | domain 90, page 31 | authority of a top-5 domain |
| 198 | 13:16:43 | `Domain.benchmark` | leadzen.ai | $0.002685 | $0.0836 | domain 53, page 16 | authority of a top-5 domain |
| 199 | 13:16:45 | `Domain.benchmark` | lindy.ai | $0.002685 | $0.0863 | domain 87, page 32 | authority of a top-5 domain |
| 200 | 13:16:46 | `Domain.benchmark` | overloop.com | $0.002685 | $0.089 | domain 86, page 24 | authority of a top-5 domain |
| 201 | 13:16:48 | `Domain.benchmark` | payproglobal.com | $0.002685 | $0.0917 | domain 89, page 32 | authority of a top-5 domain |
| 202 | 13:16:49 | `Domain.benchmark` | qualified.com | $0.002685 | $0.0944 | domain 87, page 27 | authority of a top-5 domain |
| 203 | 13:16:51 | `Domain.benchmark` | quillbot.com | $0.002685 | $0.0971 | domain 90, page 38 | authority of a top-5 domain |
| 204 | 13:16:53 | `Domain.benchmark` | sales-automation.ai | $0.002685 | $0.0997 | domain 60, page 8 | authority of a top-5 domain |
| 205 | 13:16:54 | `Domain.benchmark` | salescloser.ai | $0.002685 | $0.1024 | domain 84, page 22 | authority of a top-5 domain |
| 206 | 13:16:56 | `Domain.benchmark` | salesfocusinc.com | $0.002685 | $0.1051 | domain 73, page 23 | authority of a top-5 domain |
| 207 | 13:16:58 | `Domain.benchmark` | salesforge.ai | $0.002685 | $0.1078 | domain 84, page 41 | authority of a top-5 domain |
| 208 | 13:17:00 | `Domain.benchmark` | saleshandy.com | $0.002685 | $0.1105 | domain 88, page 35 | authority of a top-5 domain |
| 209 | 13:17:02 | `Domain.benchmark` | seamless.ai | $0.002685 | $0.1132 | domain 87, page 46 | authority of a top-5 domain |
| 210 | 13:17:03 | `Domain.benchmark` | simular.ai | $0.002685 | $0.1158 | domain 74, page 15 | authority of a top-5 domain |
| 211 | 13:17:05 | `Domain.benchmark` | snov.io | $0.002685 | $0.1185 | domain 90, page 35 | authority of a top-5 domain |
| 212 | 13:17:07 | `Domain.benchmark` | workist.com | $0.002685 | $0.1212 | domain 61, page 16 | authority of a top-5 domain |
| 213 | 13:17:08 | `Domain.benchmark` | salesbuilder.dev | $0.002685 | $0.1239 | domain 1, page 1 | baseline: our own new domain |

## A goal that works becomes a Workflow, then a Play
When every change of course on a receipt can be written as a rule, the receipt offers “Make this a Workflow”. Each Decision becomes a declared rule, such as “if fewer than 50 are valid, read 200 more companies, at most twice”.

The draft deploys as your own call, priced before it runs ([Compose your own](/code/compose)). “Keep doing this every week” is a [Play](https://startupbuilder.dev/business/nouns/play)’s job, not a goal’s, so the receipt offers the Play instead.

| From the receipt | What it offers | The call |
| --- | --- | --- |
| Every Decision can be a rule | A Workflow of your own, with the Decisions as rules | MCP `do` with `{ define: { verb, steps } }`, then deploy |
| You want it every week | The Play whose Tactic the plan matches | `Play.apply` |
| A segment rule worked | The rule saved to your customer sentence | `ICP.update` |

## Four types carry a goal from sentence to receipt
Every field, the two ways in, streaming and failure are on [the reference page](/code/goal-mode).

| Type | What it is |
| --- | --- |
| [`GoalModeInput`](/code/goal-mode#inputs) | `goal`, `budget`, and optional `spend`, `by`, `ask` and `plan`, beside the call’s own inputs |
| [`GoalPlan`](/code/goal-mode#plan) | What `try` returns: how it read each phrase, the priced steps, the estimate, at most one question |
| [`GoalResult`](/code/goal-mode#result) | The call’s own output, whether the goal was met and why it stopped, and the receipt |
| [`Receipt`](/code/goal-mode#receipt) | Every call, every Decision, every approval, and the budget spent and left |