# Spend $1k to find your first customers

URL: /workflows/spend-1k-to-find-customers · Id: `page:workflows/spend-1k-to-find-customers`

> Fund a $1,000 Demand Budget with a target and a stop rule, let the Marketing Lead compose the Play mix, and read the result each week.

A [Demand Budget](/business/nouns/demand-budget) puts your money behind demand [Plays](/business/nouns/play) for a fixed window, with a target and a stop rule. You fund $1,000; the [Marketing Lead](/agents/marketing/marketing-lead) composes the mix, and the stop rule closes it without asking.

## Prerequisites
- A Live [Startup](/business/nouns/startup) with a published [Offer](/business/nouns/offer) and the [Founder](/agents/founding/founder) [Role](/business/nouns/role).
- The $0 Plays already running. They keep running under every budget.
- The CLI, `npx startup-builder`.

The examples fund `shiftnote.app`, which sells shift scheduling to independent cafes for $19 a month.

## Steps
1. To see what free demand already brings, read the marketing view:

   ```bash
   npx startup-builder show "view:shiftnote.app?role=marketing"
   ```

   ```text
   Week 2026Q4W4 · $0 budget
     Answer engines        41 visits   2 trials
     Directory listings    18 visits   1 trial
     Shared social posts   63 visits   0 trials
     First paid months     1
   ```

2. To set a target you can afford, read what one [Customer](/business/nouns/customer) is worth:

   ```bash
   npx startup-builder show '/metrics?where=name in (contribution-margin, ltv)' --fields 'name,value'
   ```

   With $17 of margin a month and 9 months of expected life, `shiftnote.app` can pay $50 for a first paid month. It earns that back within 3 months.

3. To fund the budget, create it with the amount, the target, the stop rule and an end date:

   ```bash
   npx startup-builder do DemandBudget.create --json '{
     "amount": { "amount": 1000, "currency": "USD" },
     "tier": "$1k",
     "target": "cost per first paid month under $50",
     "stopRule": "cost per first paid month above $90 for two straight weeks",
     "until": "2026-12-20"
   }'
   ```

   The budget is recorded as an investment [Decision](/business/nouns/decision). It overrides the day-one payback default for this window and target only.

4. To read the mix before any money moves, show the budget's Plays:

   ```bash
   npx startup-builder show /demand-budgets/demand-budget_1
   ```

   ```text
   pending  ad-spend window closes 2026-10-23 17:00
     Paid search    $850   Google Search, 7 exact terms   minimum $600
     Data           $50    rank tracking, enrichment
     Creative       $100   2 landing Pages
   ```

   One paid Play fits above its minimum effective budget, so the mix holds one. To stop the launch, pause the [Action](/business/nouns/action) before the window closes.

5. To follow the money, read the same view at each weekly close:

   ```bash
   npx startup-builder show "view:shiftnote.app?role=marketing&w=2026Q4W6"
   ```

   ```text
   Demand Budget $1k · day 14 of 60
     Spent              $412
     First paid months  6 at $69   target $50   stop line $90
   ```

   Office hours reads the same view. Between the target and the stop line, the [Analyst](/agents/marketing/analyst) cuts the weakest terms and the budget runs on.

6. To close early, change the stop rule, or renew, record a new Decision on the budget. A budget the stop rule closes keeps its [Evidence](/business/nouns/evidence), so the next one starts from what this one learned.

## Result
The budget ends `Closed` at its date or `Stopped` by its rule, with every dollar traced to a Play and a Customer. The $0 Plays ran throughout.

The same steps run at every tier. Each tier adds Plays to the ones below it.

| Tier | Startup | Mix | Target | Stop rule |
| --- | --- | --- | --- | --- |
| $100 | A [Dataset API](/products/templates/dataset-api) of liquor license filings for beverage distributors | 500 signal-led cold emails to sales managers at distributors that hired this month | 5 demos | Under 1 percent positive replies after 500 sends |
| $1k | `shiftnote.app`, above | Paid search on Google Search, data, two landing [Pages](/business/nouns/page) | First paid month under $50 | Above $90 for two weeks |
| $10k | A [SaaS](/products/templates/saas) for physical therapy clinics at $149 a month | Facebook and Instagram, LinkedIn [Ads](/business/nouns/ad), a Capterra placement, two webinars | First paid month under $300 | One placement above 1.5 times target for two weeks |
| $100k | A b2c language tutor agent at $15 a month | YouTube, TikTok, Facebook and Instagram at scale, brand-search defense, a 10 percent geo holdout | Incremental cost per subscriber under $40 | Lift against the holdout below 20 percent |

## Next steps
- [Demand budgets](/workflows/marketing/demand-budgets): minimum effective budgets, cost curves, and each tier in full.
- [Demand plays](/workflows/plays): every Play with its tier and minimum budget.
- [Office hours](/workflows/processes/office-hours): the weekly read of the budget's numbers.