# Ops Nps Collector In Chat

> Use when collecting Net Promoter Score (NPS) feedback within a legal AI chat session. Defines the trigger conditions (10th successful turn, major milestone, quarterly heartbeat), the in-chat survey flow (0–10 scale + open-ended follow-up), the output schema, and the downstream routing — detractors to the churn risk detector, promoters to the case-study asker.

- Skill: `sboghossian-mini-claude-for-legal/ops-nps-collector-in-chat` (Agent Skill)
- Install (CLI): `npx skillmds@latest add sboghossian-mini-claude-for-legal/ops-nps-collector-in-chat`
- Raw SKILL.md: https://api.skillmd.com/api/skills/sboghossian-mini-claude-for-legal/ops-nps-collector-in-chat/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- License: MIT
- Author: sboghossian (https://skillmd.com/u/sboghossian-mini-claude-for-legal)
- Updated: 2026-09-10
- Page: https://skillmd.com/skills/sboghossian-mini-claude-for-legal/ops-nps-collector-in-chat

---


# Ops — NPS Collector In-Chat

## Purpose

NPS collected passively (email surveys, post-session popups) has low response rates from legal professionals who are busy and suspicious of unsolicited outreach. Collecting NPS in-context — immediately after a successful interaction — yields higher response rates and more actionable follow-up because the user's experience is fresh.

## Trigger conditions

The NPS prompt fires on **one** of the following triggers (whichever comes first, with appropriate cool-down):

| Trigger | Condition | Cool-down |
|---------|-----------|-----------|
| Engagement milestone | User completes their 10th successful turn (substantive output delivered) | 90 days before asking again |
| Product milestone | User completes their first full contract draft, saves their first matter, or closes a matter | 90 days |
| Quarterly heartbeat | Last NPS collection was >90 days ago and user is still active | 90 days |

**Never trigger during**:
- An active legal task (mid-drafting, mid-research)
- A conversation that signals distress or urgency
- Within 7 days of a failed turn, error, or support ticket

## In-chat prompt

Surface the prompt as a non-blocking in-line message at the next natural break:

> Quick question — on a scale of 0 to 10, how likely are you to recommend Louis to a colleague?
>
> [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10]  
> [Skip]

The scale must be displayed as tappable/clickable elements (not a text field where the user has to type a number). One tap should submit the score.

## Follow-up questions

Based on the score, surface a single open-ended follow-up:

| Score | Classification | Follow-up prompt |
|-------|---------------|-----------------|
| 9–10 | Promoter | "Glad to hear it! What's been most useful to you?" |
| 7–8 | Passive | "What would make Louis even better for you?" |
| 0–6 | Detractor | "We're sorry to hear that. What's not working well? (We read every response.)" |

The follow-up is optional — make it clearly skippable. One-sentence or keyword answers are fine; do not ask for paragraphs.

## Output schema

```json
{
  "userId": "<anonymized>",
  "tenantId": "<UUID>",
  "score": <0-10>,
  "classification": "promoter | passive | detractor",
  "comment": "<string or null>",
  "context": {
    "trigger": "milestone | heartbeat | engagement",
    "sessionId": "<UUID>",
    "lastActionBefore": "<event name>"
  },
  "collectedAt": "<ISO timestamp>"
}
```

## Downstream routing

| Classification | Action |
|---------------|--------|
| Promoter (9–10) | After 30 days, trigger [[ops-case-study-asker-after-n-messages]] if tenure + turn thresholds are also met. |
| Passive (7–8) | Log for product team review. Surface the comment in the weekly NPS digest. |
| Detractor (0–6) | Immediately recompute the churn risk score via [[ops-churn-risk-detector]]. If the detractor score pushes risk >70, trigger CSM outreach. |

For all scores, the comment (if provided) is logged in the feature request system if it describes a missing capability, or in the bug tracker if it describes a malfunction.

## Aggregate analysis

Weekly NPS digest (posted to `#product-ops` Slack):
- Rolling 7-day NPS score (calculated as % promoters − % detractors)
- Trend vs prior 7 days and prior 30 days
- Top themes from comments (keyword clustering)
- Detractor comments reviewed individually by the product lead

## Privacy

- NPS scores and comments are stored at the user/tenant level.
- Comments may contain sensitive context ("I was handling a client's divorce matter and it got the law wrong"). Treat these as confidential product feedback, not shareable marketing data.
- Users who opt out of feedback collection are excluded from all NPS triggers.

## Related skills

- [[ops-churn-risk-detector]] — receives the detractor signal and computes churn risk
- [[ops-case-study-asker-after-n-messages]] — receives the promoter signal for testimonial collection
- [[ops-feature-request-collector]] — comments from passives and detractors often describe missing features

