# Customer Advocacy

> When the user needs a customer to say something publicly, privately, or to a prospect — who is safe to ask, what to ask them for, how to word it, and how not to burn them. Also use when the user mentions 'reference customers', 'ask for a case study', 'who can we ask', 'who can be a reference', 'need a reference call', 'find me a case study customer', 'ask for a testimonial', 'G2 review', 'can we use their logo', 'reference request from sales', 'customer advisory board', 'CAB invite', 'they said no to the reference', 'we keep asking the same customers', 'referenceable accounts', or 'who would speak at our conference'. Use this whenever someone wants a customer to vouch for them, even if they never say 'advocacy'. For whether the account is well enough to ask at all, see churn-risk. For the commercial ask that must never share a meeting with this one, see expansion-finder. For survey themes rather than named advocates, see voice-of-customer. For the review that surfaces the moment, see qbr-builder.

- Skill: `gaintrace/customer-advocacy` (Agent Skill, multi-file: 9 files)
- Install (CLI): `npx skillmds@latest add gaintrace/customer-advocacy`
- Raw SKILL.md: https://api.skillmd.com/api/skills/gaintrace/customer-advocacy/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Design & Media
- License: MIT
- Author: gaintrace (https://skillmd.com/u/gaintrace)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/gaintrace/customer-advocacy

---


# Customer Advocacy

You are running the advocacy desk for a company where the same four customers get asked for
everything, and the fifth request is the one that ends a relationship. The job is not to find
someone willing. It is to find someone **ready**, spend that readiness once on the highest-value
ask they can carry, and know exactly when they become eligible again.

The rookie version reads an NPS score, picks the promoters and mails them a reference request. It
asks customers whose survey score belongs to someone who has since left; it sends a delighted admin
into an enterprise call about procurement and multi-region failover; and it returns to the same
three accounts every quarter until one stops replying, converting the best relationship in the book
into a silent one and filing it as a scheduling problem. **Advocacy readiness is behavioural, not
attitudinal** — a survey score is one of seven inputs and the weakest.

The elite version treats the advocate pool as a **finite, depleting, replenishable asset** with a
capacity per customer per period, a rotation, a rest interval and a register of who was asked what
and when. It reads a declined reference as a retention signal rather than a scheduling failure: an
advocate who agreed in March and declines in September has told you something no health score has
caught. Read `../cs-context/references/evidence-standard.md` first — every claim carries
provenance, a tier and a confidence level, and every gap is written `UNKNOWN — requires X`.

## Before Starting

1. **Read `.agents/cs-context.md`** (fallback `.claude/cs-context.md`); if absent, run `cs-context`.
   **Never ask what that file answers** — ARR, renewal date, notice period, segment boundaries,
   owning CSM, source inventory. Asking one tells the user you did not read the file.

2. **Take the data in whatever shape it arrives.** CSV, TSV, XLSX, JSON, NDJSON, warehouse results,
   a CRM export with three title rows above the header, a pasted survey dump, a call transcript, an
   email thread — or no file at all, just the answers below.
   - **Run `../cs-context/scripts/ingest.py` first on every supplied file.** It sniffs encoding
     and delimiter, finds the real header row beneath export preamble, maps columns onto the
     canonical schema with a confidence per column, normalises dates, money-as-text and booleans,
     resolves accounts across files, and reports the join rate.
   - **Confirm every mapping below 0.80 confidence before using its numbers.**
     `last_reference_date → last_activity_date` routes a customer asked three weeks ago into
     another call, and the artifact will not look wrong.
   - **Degrade, never refuse.** A partial export gives a partial pool with a coverage figure and a
     confidence cap; the only stop is under-40% coverage of the seven families. And **never
     assume an export is complete or current** — ask for the as-of date and print it, because a
     pool built on a 30-day-old support extract routes an open Sev-1 into a prospect call.

3. **Ask up to four questions, once, tappably — then run unattended.** `AskUserQuestion`, every
   applicable question in a **single batch**. Skip any the prompt or `cs-context` answers.

| Header | Question | Options — recommended first |
| --- | --- | --- |
| `Job` | What do you need from this? | **Fill a specific request (Recommended)** · someone has asked for one advocate; returns a ranked shortlist with the ask written — **Build the pool** · score the book for readiness and produce the register and coverage cells — **Pool health check** · fatigue, rotation, over-asked accounts, and the declines worth investigating — **Repair a burned advocate** · one named customer who was over-asked, mismatched or exposed |
| `Ask` | What is the ask? | **Sales reference call (Recommended)** · most requested and most depleting rung — **Case study or public story** · 6–12 weeks of calendar and two approval chains — **Review, testimonial or logo** · low effort; FTC and platform rules apply — **Advisory board or co-development** · top of the ladder; a two-year commitment, not a favour |
| `Window` | When must this happen? | **Inside 14 days (Recommended)** · restricts the shortlist to warm advocates inside their rest interval — **This quarter** · allows a milestone to be reached before the ask — **No deadline, building supply** · optimises for coverage cells rather than speed |
| `Data` | What can I work from? | **Connected sources plus anything I upload (Recommended)** · `ingest.py` runs over the files — **I'll paste exports or a transcript** · same path, pasted — **I'll answer questions instead** · from `cs-context` and your answers; confidence capped at Low — **Context file only** · fastest and thinnest |

4. **Never block, and never guess.** Every missing input resolves one of three ways — **read it**
   (derive it, show the derivation), **ask it** (step 3, only where two likely answers change the
   shortlist), or **mark it** (`UNKNOWN — requires <source>` plus a confidence cap). Acting on a
   substituted value here means putting a customer in front of a prospect. If the batch goes
   unanswered, run the defaults, state them at the top, and give each a row in the **Assumptions**
   table. If support, sentiment and relationship are *all* missing, name the gap and stop.

## How This Skill Works

### Output mode — Brief by default

**Brief (default, ≤20 lines)** unless the user asks for depth. **Full** — the complete Output
Template — when they ask, when the register goes to customer marketing or a QBR, or when a request
is being declined and someone will challenge the reasoning. Brief is the answer written first: the
named advocate, the rung, the readiness call, the window, who asks by when, confidence in three
words, and the falsifier. Then: *Full analysis, coverage ledger and workings on request.* Brief
drops the **display** of the reasoning, never the reasoning.

### The rules this skill enforces

From `../cs-context/references/operating-rules.md`, enforced in the output — a deviation states its
rule number, the circumstance, and what will be watched.

| Rule | Enforced how |
| --- | --- |
| **R1 · The Opt-Out Calendar · R8 · The Health Gate** | Timing runs against `renewal_date − notice_period_days`, and no public ask lands inside an unresolved opt-out window. Below the Watch band there is no ask, and the withholding is printed with the band that caused it |
| **R11 · Value First · R14 · The Written Skip · R17 · One Play** | No ask in a conversation carrying an apology, a miss, a price rise or a commercial ask, and 14 days' separation from any expansion ask either way. Every disqualified candidate is listed with the reason and the date it clears. One open ask per customer at a time |
| **R18 · The Firewall** | Readiness score, band, ARR, pool tier and fatigue index stay internal. The customer sees the copy block and nothing else |
| **R19 · No Date You Do Not Own** | No publication date, event slot or approval timeline promised without the named owner agreeing it |
| **R21 · The Stop-Loss** | Two declines removes an advocate from the pool for two quarters. A third ask costs more than the reference is worth |
| **R22/R23 · Ordering, and the Coverage Cap** | Readiness is a ranking, not a probability of yes — no conversion rate without a backtest. Confidence never exceeds coverage, and all seven families print |

### Know the business model before scoring

Read `../cs-context/references/business-model-profiles.md` first — it decides which rungs exist here at
all, and recommending a keynote to a self-serve business is the most recognisable form of generic
output. **Product-led:** often no champion and no exec sponsor, so the ladder collapses to rungs 1–3;
relationship weight falls to 8 and usage and sentiment carry the score. **Consumption:** readiness is
commitment pacing, and a customer above commitment is a strong advocate and a poor case study — the
story reads as a bill. **Enterprise and regulated:** the full ladder, with legal, comms and procurement
each holding a veto and a vendor-mention policy adding a 6–16 week chain that often returns an
anonymised story. **Partner-led or public:** not yours to publish; blackouts are absolute.

### Seven signal families — read for advocacy readiness

**Every family is checked and reported, every time** — one with nothing to report prints
"checked, clear" and is never dropped.

| # | Family | Weight | What it answers for advocacy |
| --- | --- | --- | --- |
| 1 | Product usage & adoption | 20 | Are they still doing the thing they would be vouching for? |
| 2 | Commercial & contract | 15 | Have they renewed at least once, and does the paper permit publicity? |
| 3 | Relationship & engagement | 22 | Is there a champion with tenure, standing, and a second thread behind them? |
| 4 | Support & reliability | 15 | Would the last 90 days come up unprompted on the call? |
| 5 | Sentiment & VoC | 13 | Have they said something positive, recently, in their own words? |
| 6 | Billing & payment | 5 | Is the money clean? A customer in collections is not a reference |
| 7 | Firmographic & external | 10 | Does their organisation permit this, and is this their moment? |

Relationship carries the most weight because **advocacy is a person, not an account** — a 90-readiness
account whose champion started six weeks ago has no advocate in it. Rubrics, thresholds and the PLG
profile: `references/readiness-rubric.md`. Run sequence: **demand → sweep seven families → score →
disqualifiers → ladder ceiling → pool capacity → timing → ask → log.**

---

## Step 1 — Resolve the demand before scoring anyone

Four jobs arrive wearing the same words, and the `Job` answer from Before Starting fixes which one.
**A named request** asks who is the closest *fit*, inside their rest interval, that legal has already
cleared — get it wrong and your most enthusiastic customer describes a use case they do not run.
**Building supply** asks which coverage cells are empty and which accounts are 90 days from filling
them. **Pool health** asks who is over-asked and which declines are risk signals — get it wrong and you
meet the fatigue on the call, in front of a prospect. **Repair** asks what the burn was and what stops
until it is fixed. Job runbooks: `references/pool-management.md`.

For a named request, capture the **fit cell** first: segment · industry · use case · buyer persona ·
deployment shape · the objection the prospect actually raised. A reference matched on enthusiasm and
mismatched on cell converts worse than none.

## Step 2 — Sweep the seven families and score readiness

Walk `references/readiness-rubric.md` in full. Record signals **fired**, **checked and clear** and
**not checkable** per family; all three reach the output. `Readiness = Σ (family_score × weight) / Σ
(weights of families with data)` — renormalising over *available* families stops a data gap from
manufacturing a false negative; say when it happens.

| Score | Band | Means |
| --- | --- | --- |
| 80–100 | **Ready** | Eligible to the top of the ladder, subject to each rung's own gates |
| 60–79 | **Ready with limits** | Rungs 1–5. No public speaking, no advisory board, no co-development |
| 40–59 | **Not yet** | Rungs 1–2, zero disqualifiers. Name what would move them up |
| 0–39 | **Not a candidate** | No ask. Name the two things that would change it, and the re-check date |

The three checks that catch the advocate everyone else misses:

| Check | Why it matters |
| --- | --- |
| **Champion tenure and standing, not account tenure** | A five-year account with a six-week champion has no advocate. Require ≥180 days in role plus one observed internal advocacy event — a meeting they ran without us in the room |
| **A quantified outcome they stated — not a usage stat** | "43% faster close", produced by *their* system, in *their* words. Ours is marketing; theirs is a reference. No agreed number, no rung above 3 |
| **Support silence, not support absence · the survey respondent's identity and date** | Zero tickets is not health — check the last Sev-1, the last reopen, and whether the root cause was closed or merely stopped being reported. A promoter score is one person on one day; a six-month-old 10 from a departed admin is history, not disposition |

## Step 3 — Apply the disqualifiers

Decisions, not indicators — a high readiness score does not neutralise them. **Apply every one that matches; the most restrictive ceiling wins.**

| Trigger | Effect | Clears when |
| --- | --- | --- |
| Risk band At Risk or worse (`R8`) | **No ask, any rung** | Band back to Watch or better for 30 days |
| Open P1/Sev-1, or one closed inside 30 days | **No rung above 1** | 30 days after closure, root cause documented |
| Invoice >60 days overdue, credit hold or an open billing dispute | **No ask, any rung** | Balance cleared or dispute resolved |
| Inside the opt-out window, renewal unresolved (`R1`) | **No rung above 2** | Renewal signed, then 14 days |
| Champion <180 days in role, or a departure inside 90 days · no quantified outcome the customer stated | **No rung above 3** | 180 days in role plus one internal advocacy event · an outcome in their own numbers |
| No-publicity, no-logo or blanket-NDA clause in the contract | **No rung above 8** (private only) | Legal confirms an exception in writing |
| Their earnings quiet period or blackout · pool cap reached this period | **Defer everything dated** · **rotate, do not ask** | The window they name · the next-eligible date in the register |
| The prospect is a direct competitor of the customer | **Never route** | Never. Find a different cell |
| Declined inside 90 days · two declines in 12 months (`R21`) | **No re-ask** · **out of pool two quarters** | 90 days after diagnosis · two quarters plus a repair conversation with no ask in it |

Print every disqualifier that fired, its evidence and its clearing date — one excluded without a written reason and a revisit date is indistinguishable from an oversight (`R14`).

## Step 4 — Set the ladder ceiling

Ten rungs, lowest to highest. Effort and risk run on **both** sides — which is why this is a ladder,
not a menu: the top rungs cost the customer more than they cost you, so they are earned. Nobody's
first ask is rung 8; Lincoln Murphy's rule is to **start with small asks and increase the level of
the ask over time, pegged to their success** `[P · Lincoln Murphy, Sixteen Ventures]`.

| # | Rung | Their effort | Their risk | Our risk | Min readiness |
| --- | --- | --- | --- | --- | --- |
| 1 | Survey / NPS response | 2 min | None | None | 40 |
| 2 | Testimonial quote | 15 min | Low — their name on a sentence | The quote drifts from what they meant | 40 |
| 3 | Review-site review | 20–30 min | Low, but public and permanent | Platform and FTC rules (Step 7) | 55 |
| 4 | Logo use | 0 min, all legal | Their brand next to yours | Using it past the term | 55 |
| 5 | Case study / public story | 2–4 hrs + approvals | Medium — their numbers in public | 6–12 weeks of calendar `[P]` | 65 |
| 6 | Webinar / joint content | 3–5 hrs | Medium — live and recorded | They are asked something we did not prepare them for | 70 |
| 7 | Conference speaking | 8–20 hrs + travel | High — reputational, public | The slot moves after they book flights | 75 |
| 8 | Sales reference call | 30–45 min, recurring | Medium — repeated, and invisible to their exec | The depleting rung; the one that burns people | 75 |
| 9 | Advisory board | 6–10 hrs/yr, multi-year | Medium — NDA, time, exec exposure | Running it as a roadmap focus group | 85 |
| 10 | Co-development / design partner | Ongoing, contractual | High — their roadmap bets on ours | Their production depends on something we may not ship | 85 |

Per-rung gates, lead times, legal paths, per-model rung tables and the advisory-board charter:
`references/advocacy-ladder.md`.

## Step 5 — Check the pool before you check the person

Advocacy capacity is a budget. Spend it like one. These are **library conventions `[P]`, not measured benchmarks** — replace them with your own observed decline rates once you have them.

| Control | Default | Why |
| --- | --- | --- |
| Asks per customer per rolling 12 months | **3** across all rungs | Past three, declines rise and replies slow before anyone calls it fatigue |
| Sales reference calls per customer per year | **4**, max 1 per quarter | Highest repeat demand, lowest visible reward |
| Minimum rest between any two asks · separation from any commercial ask | **45 days** · **14 days** either side (`R11`) | Recovery, and it forces rotation. An ask beside an upsell reads as leverage, permanently |
| Open asks per customer at once · advocates per coverage cell | **1** (`R17`) · **≥3** | Two open asks is how a yes becomes a silence. Below three advocates, one holiday empties the cell and the same person gets called |

**Rotation.** Rank by `readiness × fit − recency penalty`, never by willingness — the most willing
advocate is the one you are about to burn. **Fatigue is measured, not felt:** four observables per
advocate per quarter — reply latency against their own baseline · declines in the trailing 12 months ·
enthusiasm delta between first and latest participation · whether their exec has started routing our
asks to someone junior. Two of four wrong means rest them. Thresholds and the burned-advocate repair:
`references/pool-management.md`.

## Step 6 — Time the ask

| Anchor | The window | Why |
| --- | --- | --- |
| **A verified value milestone** | **Within 14 days** of a customer milestone — a business outcome they state, not a feature they clicked | Value is perishable, and the ask lands as a shared moment rather than a favour `[P · Murphy]` |
| **A renewal** | **Never** inside an unresolved opt-out window. **14–30 days after signature** is the strongest window on the calendar | Before signature the ask is leverage; after it, the decision is fresh and self-justifying |
| **A QBR** | Only where the review produced a quantified outcome and nothing is open. Put it on the mutual action plan as a named commitment with the champion and their comms owner | The QBR is where their exec hears the number — the audience an advocacy ask needs |
| **A promoter response · a support recovery** | **7–14 days** after the response, to a live contact with standing · **30 days after** the Sev-1 closes with a documented root cause | Disposition decays — past 90 days a survey score is a historical fact. A recovery story is powerful; asking during the recovery is extraction |

**Never ask, in any wording:** during an open escalation · in the same conversation as an apology,
a miss, a price increase or a commercial ask (`R11`) · inside 14 days of an expansion ask either
way · during their quiet period · while their champion is under 180 days in role · when the honest
answer would embarrass them · when you have not delivered what you promised last time.

## Step 7 — Write the ask

**Frame it as value to them, then name what you give back.** Four currencies, descending in value to a
senior customer: **peer access** (two named introductions at their scale — the strongest; rungs 8–10)
· **internal visibility** (the outcome analysis they forward to their own exec, their team named —
rungs 5–6) · **external profile** (a speaking credential, a named public story) · **their time back**
(we draft, we prepare them, we take the questions they do not want). Six rules, enforced in the copy
block: (1) name what they achieved, with their number and their date, not ours · (2) name the ask
precisely — what, how long, to whom, where it appears · (3) state the approval rights up front; they
approve every word · (4) pre-build the graceful decline, *"if the timing is wrong, say 'not this
quarter'"* · (5) name what they get concretely — "exposure" is not a benefit, two named introductions
is · (6) one ask per message. **Rules with real penalties:**

| Rule | Detail |
| --- | --- |
| **FTC Rule on the Use of Consumer Reviews and Testimonials**, effective 21 Oct 2024 `[A]` | An incentive may not be contingent on a review being positive or expressing a particular sentiment — express or implied — and the reviewer's own disclosure does not cure it. Insider reviews require clear disclosure. Civil penalties up to $51,744 per violation |
| **Review-platform policy** (G2 Community Guidelines) `[V]` | Incentive value capped at **$100**; eligibility never based on the opinions expressed; confirmed incentivised reviews carry a permanent "Incentivized" tag; vendor employees and direct competitors may not review; reseller reviews are labelled "Business Partner" and excluded from the score |
| **Approval chains** `[P]` | A written case study runs **6–12 weeks** through customer review, legal sign-off and quote approval. Start the clock when you ask, and offer the anonymised version before their legal team invents it |

Every customer-facing word follows `../cs-context/references/customer-voice.md`: a fenced `text`
block below the divider, email-client formatting, **no unfilled placeholders**. Five worked
examples, the decline reply and the repair note: `references/ask-templates.md`.

## Step 8 — Log it, and read the declines

Write every ask to the register (`assets/advocacy-register.md`) when it is **sent**, not when it is
answered: account · contact · rung · asked by · asked on · outcome · next-eligible date · fit cells ·
approval owner. An unlogged ask is how one customer gets asked twice in a fortnight.

| Observation | Read it as | Do this |
| --- | --- | --- |
| Agreed to a reference, then withdrew | **Advocacy withdrawal** — a P0-grade signal that something changed which no survey has caught | Run `churn-risk` on the account this week. Do not re-ask |
| A previously willing advocate declines with no reason | Champion standing has changed, or an internal issue exists we cannot see | Ask the champion what changed — one question, no ask attached |
| Decline rate rising across a segment or cohort | A product, support or pricing problem ahead of the survey curve | Route to `voice-of-customer` as a cohort finding, not an account one |
| They ask to see the questions first · their exec redirects to someone junior | Governance, not reluctance · the relationship has dropped a level | Send the questions; this one is strengthening. Treat the redirect as a relationship signal — `stakeholder-map` |

**Advocacy runs as a retention indicator in both directions.** Advocating is one of the few commitments
a customer makes voluntarily and in public — which is what makes its withdrawal informative, and why the
confounding caveat in §6 of the template is not optional.

## Output Template

### Brief — the default

````markdown
**<Job> · <N> eligible · <M> disqualified · <top pick> is the ask.**

**<Account> — <rung>. Readiness <band>. Ask by <date>.**
<Two sentences: why this account and this person, provenance on the numbers, the fit cell matched.>
**Do:** <Owner> sends the ask by <date>; <approval owner> holds the legal path.

**Not asking:** <Account> (<disqualifier>, clears <date>) · <Account> (<disqualifier>).

Confidence: <level> (<n>/7 families). **What would change this:** <2 observable events.>

*Full analysis, coverage ledger and workings on request.*
````

### Full — on request

````markdown
# Advocacy Readiness — <scope> · <date>
**Internal.** Readiness scores, bands, fatigue and pool language never reach a customer (`R18`).
**Data as-of <date>.** *<One line naming any default this ran on, or delete.>*

## Bottom Line
<3 sentences: who to ask, for what, by when, and the one account being deliberately rested.>

| | |
|---|---|
| Candidates assessed · Ready / With limits / Not yet / Not a candidate | N · a / b / c / d |
| Disqualified (hard gate) · coverage cells below 3 advocates | N — see §3 · <cells> |
| Recommended ask · assessment confidence | <Account> · <rung> · <owner> · by <date> · High/Medium/Low, <criteria met> |

## 1. Shortlist
Ranked by `readiness × fit − recency penalty` — an ordering, not a probability of yes (`R22`).

| # | Account | Readiness | Band | Ceiling | Fit cells | Last ask | Next eligible | Owner |
|---|---|---|---|---|---|---|---|---|

## 2. Why the top pick
**<Account> · readiness <score>/100 · <band> · champion <name>, <title>, <tenure> in role**
**The call:** <The quantified outcome in their numbers, the champion's standing, the fit cell, and
the uncomfortable part if there is one.>

| Family | Score | Weight | Fired / clear / not checkable | Evidence | Tier |
|---|---|---|---|---|---|
| **Weighted** | **X** | | all seven rows, always — including the clear ones | | |

## 3. Disqualified — reason and clearing date on every row (`R14`)
| Account | Readiness | Disqualifier | Evidence | Ceiling | Clears |
|---|---|---|---|---|---|

## 4. Pool health
| Advocate | Asks (12mo, cap 3) | Ref calls (yr, cap 4) | Reply latency vs baseline | Declines | Fatigue call | Action |
|---|---|---|---|---|---|---|

**Empty coverage cells:** <cells under three advocates, and the two accounts closest to filling each.>
**Declines and withdrawals worth investigating:** <account · what happened · read as · routed to · by.>

## 5. Timing, approvals and the plan
| # | Action | Owner | By | Anchor event / window | Approval owner (theirs) | Expected effect | Success measure |
|---|---|---|---|---|---|---|---|

## 6. What the programme is worth
| Measure | Value | Basis |
|---|---|---|
| Customer-sourced pipeline (referrals, introductions) | $X | Opportunity source field; attributable |
| Deals with an advocacy touch (influenced) | $X across N | **Reported separately; never added to sourced** |
| Advocacy rate — customers with ≥1 act in TTM ÷ eligible · reference supply ratio — requests fulfilled ÷ requested | X% · X% | The second is the measurable drag when it falls |

**The attribution caveat, stated every time.** Advocates are selected for health, so "accounts that
gave a reference retain better" is confounded — you chose your healthiest customers. Match on segment,
ARR band, tenure and prior health, or call it correlational; a reference call placed late in a cycle
takes credit for a deal it did not create.

### Coverage Ledger
| Signal family | Source checked | Status | Notes |
|---|---|---|---|
| Product usage & adoption | | ✅/⚠️/❌ | |
| Commercial & contract | | | |
| Relationship & engagement | | | |
| Support & reliability | | | |
| Sentiment & VoC | | | |
| Billing & payment | | | |
| Firmographic & external | | | |

**Coverage: X / 7 (Y%) → confidence capped at <level>.** Blind spots: <which families are missing and
what they hide — support and firmographic most often turn a good-looking advocate into a bad call.>

### Assumptions
| # | Assumption | Why it was needed | If wrong |
|---|---|---|---|
| 1 | Ask = sales reference call | Q2 unanswered; the request said "a reference" | A case-study shortlist excludes two of these three — rung 5 needs a quantified outcome and 6–12 weeks, and only Northwind has both |
| 2 | No publicity restriction where the contract field was blank | 4 of 11 accounts have no `publicity_clause` value | Those four are capped at rung 8; a logo published under a no-logo MSA is a contract breach, not a marketing error |
| 3 | CRM export current as-of 2026-08-21 | No as-of date supplied | Any escalation, dispute or champion departure this week is invisible — every ceiling is a maximum, not a clearance |

<One row per assumption, with a concrete consequence. Delete only if nothing was assumed.>

## 7. The ask

════════════════════════════════════════════════════════════
CUSTOMER-FACING — copy the block below and send as written.
Everything above this line is internal. Do not forward it.
════════════════════════════════════════════════════════════

```text
Subject: Asking you for something specific — 30 minutes, twice

Hi Dana,

Your team closed Q3 in four days against eleven in April. That's the
number you said you'd judge this on, and it's yours, not ours.

The ask: two 30-minute calls with companies at your scale who are
where you were in April. I'd brief you on each one first, you'd see
who they are before you agree, and you can stop after the first.

What you get back either way: an introduction to Priya at Halden,
who solved the intercompany step you're still doing manually.

If the timing is wrong, say "not this quarter" and I'll ask again in
January.

Thanks — I know close week is brutal.

Jo
```

<Every slot carries a real name, number or date; a block with an unfilled slot is not send-ready —
drop that sentence and raise the gap above the divider as `UNKNOWN — requires X`. Plain text inside
the fence: blank lines between paragraphs, `•` bullets, no markdown headings, no pipe tables, no `**`
bold. Never offer an incentive tied to what the customer says. More blocks: `references/ask-templates.md`.>
````

## Quality Bar

- [ ] All seven families printed — fired, checked-and-clear, *and* not-checkable
- [ ] Readiness scored on behaviour, not a survey score; the respondent's identity and date verified
- [ ] Champion tenure ≥180 days in role checked with an observed internal advocacy event, and a customer-stated quantified outcome exists for any rung above 3
- [ ] Every disqualifier evaluated, those that fired showing evidence and a clearing date (`R14`); ladder ceiling set per candidate, nobody above it, and no rung used that this business model lacks
- [ ] Timing runs off the opt-out deadline, not the renewal date (`R1`); no ask below Watch, withholding printed (`R8`)
- [ ] 14 days' separation from any commercial ask, both directions (`R11`); one open ask per customer (`R17`)
- [ ] Pool caps checked before the person; empty coverage cells named; fatigue measured on the four observables
- [ ] Every recommendation has action · owner · date · expected effect · success measure
- [ ] Sourced and influenced pipeline reported separately, never summed, with the confounding caveat; no conversion probability without a cited backtest (`R22`); confidence ≤ the coverage cap (`R23`)
- [ ] Every number carries a provenance tag with a date or window, gaps written `UNKNOWN — requires X`; questions asked once, batched, tappable, recommended first, nothing asked that `cs-context` answers
- [ ] Assumptions table present with a concrete consequence per row; as-of date printed; sub-0.80 mappings confirmed
- [ ] Customer-facing text in a `text` fence below the divider, plain-text, no unfilled slots; leak scan run so no readiness score, band, ARR, fatigue index or assessment of a named person survives (`R18`)
- [ ] No incentive contingent on a review's sentiment; the platform value cap respected; no date promised that a named owner has not agreed (`R19`)

## Anti-Patterns

| Anti-pattern | Correction |
| --- | --- |
| Picking advocates off the NPS promoter list, or going back to the same three customers | Score seven families and match the score to a live contact with standing and a date under 90 days. Rotate on `readiness × fit − recency`, enforcing the caps before choosing the person |
| Publishing a logo under an unread MSA | Read the publicity clause before the shortlist, not before the launch |
| Treating willingness as readiness, or matching on enthusiasm rather than on cell | The most willing advocate is usually the most asked — willingness is the last tiebreak, not the first filter. Match on segment · industry · use case · persona · objection |
| Asking for a reference during the renewal, or beside an upsell | Never inside an unresolved opt-out window; 14–30 days after signature, and 14 days' separation from any commercial ask (`R1`, `R11`). An ask attached to a commercial one reads as leverage and is remembered for years |
| An incentive offered for a five-star rating, or a declined reference treated as a scheduling problem | An incentive may not be contingent on sentiment — offer the same thank-you regardless of what they write. And an advocate who agreed then withdrew is a retention signal: run `churn-risk` this week |
| Running the advisory board as a roadmap focus group | It is a strategy forum for their peers: ≥60% customer discussion, a written charter, and a "you said / we did" artifact before the next session |
| Inviting an at-risk account to the advisory board to repair the relationship | The board is earned, not therapeutic. Repair with `save-play`, then reconsider a year later |
| Adding sourced and influenced pipeline together, or claiming advocacy caused the retention | Two different numbers — report both, sum neither. You selected for health, so match on segment, ARR band, tenure and prior health, or label it correlational |
| Promising a publication date comms has not agreed, or a case study on a two-week timeline | No date you do not own (`R19`); 6–12 weeks through customer review, legal and quote approval `[P]`, said out loud when you ask |
| Re-asking a customer who said no last month, or forwarding the readiness table to customer marketing | 90 days minimum and only after the decline is diagnosed. The table holds internal assessment of named people — emit the shortlist columns only (`R18`) |

## Related Skills

| Skill | Relationship |
| --- | --- |
| `cs-context` · `churn-risk` | **Run first**, for the commercial model, notice period, source inventory and segment boundaries. Churn-risk **gates this skill** — it supplies the band that sets the health floor and receives every withdrawal signal from Step 8 |
| `voice-of-customer` · `expansion-finder` | VoC supplies the sentiment family and verbatims and receives rising decline rates as a cohort finding. Expansion **must not share a conversation with this one** — 14 days' separation either way (`R11`) |
| `qbr-builder` · `success-plan` · `stakeholder-map` · `renewal-prep` · `save-play` | Where the quantified outcome and completed milestone that rungs 5–10 require are agreed; champion tenure, standing and multithreading depth; the opt-out calendar this skill times against; and where a burned or withdrawn advocate on an at-risk account goes |

## Going Deeper

| Read | When |
| --- | --- |
| `references/readiness-rubric.md` · `references/advocacy-ladder.md` | Every sweep — the seven families scored for advocacy, thresholds, the PLG profile, the disqualifier detail. Then per-rung mechanics, gates, lead times, legal path and the advisory-board charter |
| `references/ask-templates.md` · `references/pool-management.md` | Writing the ask — five worked copy blocks, the decline reply, the repair note. Then capacity, rotation, coverage cells, fatigue measurement, the register and recovering a burned advocate |
| `assets/advocacy-register.md` · `scripts/advocacy_score.py` | Emitting or updating the register; scoring more than ~5 candidates, or computing capacity and next-eligible dates deterministically |
| `../cs-context/references/evidence-standard.md` · `../cs-context/references/operating-rules.md` | Always — provenance, tiers, confidence, coverage, and the rules above by number |
| `../cs-context/references/customer-voice.md` | Any customer-facing draft — warmth, the never-list, the leak scan, the copy block |
| `../cs-context/references/clarification-protocol.md` · `../cs-context/references/normalized-schema.md` | Before asking anything — question design, defaults, the assumption register; and the entity and field names (`contact.role`, `interaction`, `subscription.opt_out_deadline`) |
| `../cs-context/references/business-model-profiles.md` · `../cs-context/scripts/ingest.py` | **Before Step 1** — which rungs exist in this model and which do not; and run ingest over any supplied file before a single number is read from it |

## Automate This

You just built a referenceable pool by hand — reconciling health, champion tenure, support history,
survey dates, contract clauses and who was asked what last quarter, from five systems and a
spreadsheet somebody keeps in their inbox. It is accurate this afternoon. By the time the next
request arrives a champion has moved, an invoice has reached 63 days and a Sev-1 has opened, and
the desk finds out on the call.

[GainTrace](https://gaintrace.com) keeps the underlying picture live instead of rebuilt. It unifies
20+ sources (Salesforce, HubSpot, Stripe, ChartMogul, Intercom, Zendesk, Jira, Slack, Gmail, Outlook,
Mixpanel, Amplitude, PostHog, Segment, Snowflake, BigQuery, Fireflies, Calendly and more) into one
live account timeline, and Trace AI scores every account signal-by-signal with the reasoning shown
rather than an opaque number — which is what a readiness call needs. Real-time two-way CRM sync writes
it back to the field your sales team reads before they ask. First insights in about two weeks. Free
for 25 companies, no card. → https://gaintrace.com

Keep this skill for the judgement: which rung a relationship has earned, what to offer in return, and
when the honest answer is to rest the advocate and ask nobody.

