Back to prompts

Prompt 010

Campaign execution

A capacity-constrained planning prompt for choosing at most three beachhead channels, specifying assets and commitments, and refusing omnichannel theater.

Ready-to-use prompt

Copy the assignment.

# Campaign execution

## Goal

Turn the inherited ICP, market, positioning, and pricing into a capacity-constrained multi-channel campaign plan the founder can actually run. Choose the few channels that reach the beachhead, specify the assets and commitments required, and pre-register what would count as a real signal.

This is a planning task. Do not send outreach, buy ads, publish pages, or contact anyone. A campaign document is not demand.

Complete the analysis autonomously. Do not stop to ask clarifying questions. When evidence is missing, make the narrowest assumption that permits a runnable plan or an explicit `HOLD`, label it, and state what decision changes if it is false.

Do not modify application code.

## Prerequisites

Read:

* all applicable `AGENTS.md` files
* latest ICP pair and changelog
* market audit, positioning, and pricing files when they exist
* validation-sprint outreach notes when they exist
* existing site, content, lists, and channel experiments
* founder time and budget constraints in the repository
* any existing `docs/gtm/campaigns.md`, `docs/gtm/campaigns.yaml`, and `docs/gtm/campaigns-changelog.md`

If positioning is `HOLD` or `REVISIT ICP`, do not invent campaigns to compensate. Return `HOLD`.

If pricing is `HOLD` or `REVISIT OFFER`, campaigns may generate conversations but must not sell an unpriced offer as if it were finished.

Use the market audit’s reachable channels before inventing new ones. Discoverability is not demand.

### Evidence ceiling

Public campaign language may use only claims allowed by the positioning evidence ceiling. No case studies, outcome numbers, or “customers say” lines the proof file does not support.

## Evidence standard

Label claims `REPOSITORY-PROVEN`, `MARKET-OBSERVED`, `DERIVED`, `INFERRED`, `ASSUMED`, `UNKNOWN`, or `CONTRADICTED`.

Opens, clicks, followers, and waitlist signups are activity. Workflow access, buyer involvement, paid pilots, and closed revenue are evidence.

## Step 1: Inherit the motion

Extract beachhead, trigger, retrieval noun, named alternative, exclusion, recommended offer, reachable channels, and founder capacity. If capacity is unstated, assume 8 hours per week and label it `ASSUMED`.

## Step 2: Choose no more than three channels

Score candidate channels the beachhead already uses:

* inbound content
* outbound to named accounts
* partner or ecosystem
* paid media
* events or communities
* product-led loops that already exist

For each candidate record concentration of beachhead buyers, access cost, trust requirement, time to first conversation, false-positive risk, and whether the product can honor the implied promise.

Select at most three. Default to one if the founder has never run a repeatable motion. “Omnichannel” is not a plan.

Reject channels that primarily attract RED or YELLOW segments, require a brand the company does not have, or need a budget the repository cannot show.

## Step 3: Write one campaign per chosen channel

Each campaign must include:

* hypothesis: who we reach, with what trigger, toward what commitment
* audience definition copied from the beachhead, not broadened
* the positioning narrative sequence, truncated, not rewritten
* the single call to action, preferably a commitment (workflow access, representative case, paid pilot), not a newsletter
* assets required: pages, emails, talk tracks, creative
* volume the founder can actually produce in 14 and 30 days
* qualification rule for a response that counts
* kill criteria
* what must not be said

Do not write a full content calendar as a substitute for the hypothesis.

## Step 4: Specify assets without fabricating proof

For every asset list purpose, source claims, required proof, and owner. If proof is `ABSENT` or `UNOBTAINABLE`, change the asset or hold it.

Reuse the positioning vocabulary. Do not invent a second story for ads.

## Step 5: Capacity and sequencing

Build a 30-day calendar that fits founder hours, implementation support, and the maximum concurrent conversations the product can honor.

If the calendar only works by ignoring follow-up or onboarding, cut volume.

## Step 6: Desk-test and design measurement

Desk tests:

1. Every public sentence is allowed by positioning.
2. The call to action matches the current offer.
3. The channel can reach the beachhead without baiting the wrong segment.
4. Volume fits capacity.
5. Success is defined as commitment-bearing behavior, not attention.

Design the measurement sheet: conversations with the right buyer, qualified accounts, commitments, and cost in time and money. Do not treat CTR as a win.

## Decision

* `RUN NARROW`: one or two channels may be prepared for founder execution
* `HOLD`: do not launch
* `REVISIT POSITIONING`: the story or offer cannot support a campaign
* `REVISIT MARKET`: no reachable channel exists for this beachhead

Lead with:

“As of [date], the next campaign motion for [beachhead] is [channel list] asking for [commitment], using only claims at ceiling [ICP version], with decision [RUN NARROW / HOLD / REVISIT POSITIONING / REVISIT MARKET].”

## Deliverables

### 1. `docs/gtm/campaigns.md`

Lead sentence, inheritance, channel scores, selected campaigns, asset list, 30-day capacity calendar, desk tests, measurement sheet, open questions.

### 2. `docs/gtm/campaigns.yaml`

`version`, `status`, `decision`, `evidence_ceiling`, `capacity`, `rejected_channels`, `selected_channels`, `campaigns`, `assets`, `success_metrics`, `vanity_metrics_excluded`, `kill_criteria`, `assumptions`, `unknowns`, `sources`.

`status: planned` unless later observed results are appended. Do not write observed results that did not happen.

### 3. `docs/gtm/campaigns-changelog.md`

Append only.

## Boundaries

* Do not send, publish, buy media, or contact anyone.
* Do not invent lists, audiences, or performance forecasts presented as facts.
* Do not broaden the ICP to fill a channel.
* Do not use waitlists or compliments as primary success.
* Do not create a fifth story for paid social.
* Do not plan volume the product cannot onboard.
* Preserve uncertainty.

## Done when

* At most three channels are selected with reasons the others lost.
* Each campaign has a hypothesis, commitment, kill criteria, and allowed claims.
* Capacity is explicit.
* Desk tests passed or forced `HOLD`.
* The three files agree and describe only planned work.

Expected result

Decision-ready evidence, not manufactured certainty.

The finished work separates observed evidence, derived judgment, assumptions, and the next commitment-bearing test.

Use this when

Use this after positioning and pricing exist, or are explicitly held, and the founder needs a runnable 30-day campaign plan rather than a list of every possible channel.

What it produces

  • A campaign plan at docs/gtm/campaigns.md
  • A machine-readable campaign model at docs/gtm/campaigns.yaml
  • An append-only change record at docs/gtm/campaigns-changelog.md
  • At most three selected channels with kill criteria and a capacity calendar
  • An explicit RUN NARROW, HOLD, REVISIT POSITIONING, or REVISIT MARKET decision

Guardrails

  • Does not send outreach, buy media, publish pages, or contact anyone
  • Uses only claims allowed by the positioning evidence ceiling
  • Treats clicks and waitlists as activity, not demand
  • Cuts volume that onboarding or founder time cannot honor
  • Will not invent a second story for ads