Activation Playbook

Make data actionable

Specifications

Release Date: September 16, 2025 Version: 1.1.0

Purpose

Audience Playbooks translate Moonbrush’s psychographic models, persona probabilities, and intent feed into concrete actions and words: who to target, when to speak, what to say, how to say it, and on which channel—under guardrails that protect users and comply with policy. This section defines the playbook object model, governance, and ready‑to‑ship examples.

Scope & Safety: Playbooks may not target or tailor creative using sensitive/protected attributes or their close proxies. Sensitive fields are quarantined and never exposed to decisioning. Use only approved signals (see SAFE_PERSON_VIEW).


What is a Playbook?

A Playbook is an executable strategy that combines:

  1. Objective (e.g., trial start, first purchase, reorder, feature adoption)

  2. Eligibility & Triggers (persona codes, intent patterns, thresholds)

  3. Channel Plan (email, push, in‑app, SMS, on‑site, ads)

  4. Message Templates (microcopy with variables and tone rules)

  5. Frequency & Fatigue Controls

  6. Measurement (primary KPI, guardrail KPIs, holdouts)

  7. Fallbacks (low‑data and safety fallbacks)


Playbook Object (YAML)

id: PB-TRIAL-NUDGE
name: Trial Nudge
version: 1.0.0
objective: "Start a free trial within 7 days"
primary_kpi: trial_start_rate
secondary_kpis: [unsubscribe_rate, complaint_rate, downstream_retention_30d]
eligibility:
  persona_any: [PER-EXP-dealfirst-1.0, PER-QLT-craft-1.0, PER-SKP-proof-1.0, PER-LOY-habit-1.0]
  thresholds:
    convert_7d_min: 0.15
    fatigue_max: 0.8
  consent: [personalization]
  excluded_categories: [Sensitive]
triggers:
  - type: event
    when: add_to_cart OR pricing_page_view
    window: 3d
  - type: inactivity
    when: no_conversion
    window: 5d
channels:
  - email
  - push
  - in_app
frequency_caps:
  unit: day
  per_subject: 1
  global_max: 3
localization: [en-US]
creative:
  voice_rules:
    reading_grade_max: 8
    avoid: [fear, urgency_shaming]
    prefer: [clarity, benefit_first, social_proof_light]
  variables:
    - name: product_name
    - name: key_benefit
    - name: trial_length_days
    - name: comparison_hook
    - name: social_proof_snippet
  templates:
    email:
      subject: |
        {{persona switch}}
        PER-EXP-dealfirst-1.0: Try {{product_name}}—see what you get in {{trial_length_days}} days
        PER-QLT-craft-1.0: Experience {{product_name}} quality—free for {{trial_length_days}} days
        PER-SKP-proof-1.0: See how {{product_name}} compares—free {{trial_length_days}}‑day trial
        PER-LOY-habit-1.0: Your smooth start with {{product_name}}—on us for {{trial_length_days}} days
      preheader: "Start now. Cancel anytime."
      body: |
        {{benefit_block}}
        {{comparison_hook}}
        {{cta primary="Start your free trial"}}
        {{safety_note}}
    push:
      title: "Start your {{trial_length_days}}‑day trial"
      body: |
        {{persona switch}}
        PER-EXP-dealfirst-1.0: Quick setup, real value—try it now
        PER-QLT-craft-1.0: Explore the quality—free trial
        PER-SKP-proof-1.0: See the proof—start free
        PER-LOY-habit-1.0: Make it part of your flow—on us
      cta: "Start free"
    in_app:
      banner: "Try {{product_name}} free for {{trial_length_days}} days"
      subcopy: "No commitment. Cancel anytime."
      cta: "Start trial"
experiments:
  holdout: 10%
  strategy: Thompson
  variants: [copy_v1, copy_v2]
reason_codes: ["clear_benefit", "low_friction", "social_proof_light"]

The templating grammar supports persona‑aware branches (persona switch), variables, CTA components, and safety notes (unsubscribe/consent reminders where applicable).


Tone & Microcopy Matrix (by Persona)

Persona
Voice & Tone
Evidence Emphasis
CTA Style
Example Phrase

Deal‑First Explorer (PER-EXP-dealfirst-1.0)

energetic, concise, value‑forward

quick comparison, savings

"Start free", "See it now"

“Try it now—see what you unlock.”

Quality‑Focused Crafter (PER-QLT-craft-1.0)

confident, craft‑oriented

specs, guarantees, expert takes

“Explore”, “See quality”

“Experience the finish and feel.”

Skeptic Seeking Proof (PER-SKP-proof-1.0)

calm, precise, transparent

benchmarks, case studies, side‑by‑side

“See the proof”, “Compare”

“Here’s how we perform, in numbers.”

Habitual Loyalist (PER-LOY-habit-1.0)

warm, reliable, helpful

continuity, convenience

“Set it up”, “Keep it going”

“Fits right into your routine.”

Do: plain language, benefit first, respectful opt‑outs. Don’t: exploit fear, imply sensitive traits, or gate core info behind clicks.


Channel‑specific Guidance

Email

  • Subject: ≤ 50 chars; avoid spammy terms; one clear benefit.

  • Preheader: clarify value or safety (cancel anytime, privacy‑first).

  • Body:

    • First paragraph = benefit + outcome.

    • Middle = evidence (1–2 bullets).

    • End = single primary CTA.

Push

  • Title ≤ 45 chars, body ≤ 120 chars. Direct verb + benefit. Respect device quiet hours.

SMS

  • ≤ 160 chars. Always include brand, value, STOP to opt out.

In‑App/On‑site

  • Minimalist banner + one CTA. Show reasons on hover/expand.


Segmentation Recipes

  • Trial Nudge: persona in {EXP, QLT, SKP, LOY} ∧ convert_7d ≥ 0.15fatigue ≤ 0.8 ∧ consent includes personalization.

  • Compare Grid: persona_any:{SKP, QLT} ∧ recent pricing_page_view within 24h.

  • Loyalty Perk: persona_any:{LOY}order_frequency ≥ cohort_p75 ∧ not exposed in last 30 days.

Implement via POST /v1/segments/query or decision policy with persona mixture routing.


Microcopy Blocks (Reusable)

benefit_block:
  PER-EXP-dealfirst-1.0: "Unlock {{key_benefit}} in minutes—no credit card required."
  PER-QLT-craft-1.0: "Experience premium {{product_name}} performance—built for longevity."
  PER-SKP-proof-1.0: "Independent benchmarks show {{comparison_hook}}—see details."
  PER-LOY-habit-1.0: "Set it up once—enjoy {{key_benefit}} every day."

safety_note: "You're receiving this because you opted into personalization. Unsubscribe anytime."

Ready‑to‑Use Playbooks

PB-TRIAL-NUDGE (Conversion)

  • Trigger: pricing page → add to cart abandoned within 72h.

  • Primary KPI: trial starts (7d).

  • Sample SMS: “{{product_name}} free for {{trial_length_days}} days. Explore {{key_benefit}}—no commitment. Reply STOP to opt out.”

PB-COMPARE-GRID (Consideration → Conversion)

  • Trigger: competitor page visits or frequent spec lookups.

  • Creative: side‑by‑side grid; neutral tone; link to independent review.

  • Example CTA: “See the proof.”

PB-LOYALTY-PERK (Retention)

  • Trigger: high loyalty score + nearing reorder window.

  • Offer: early access/bundle convenience; avoid deep discounts.

  • Example Push: “Early access unlocked—your favorites, one tap.”

PB-REORDER (Replenishment)

  • Trigger: expected depletion window ±3d.

  • Tone: helpful reminder.

  • Example In‑App: “Running low? Reorder in 2 taps.”


Guardrails & Ethics

  • Blocklists: Sensitive categories and attributes; ideology/religion/ethnicity not available to templates or routing.

  • Caps: per‑channel and cross‑channel fatigue; quiet hours; novelty limits.

  • Safety language: include consent/unsubscribe where required; no dark patterns.

  • Research-Driven: In-depth research papers available upon request, justifying all standard playbooks available within the Moonbrush platform.


Measurement & Feedback Loops

  • Holdouts per playbook (min 5–10%).

  • Attribution: time‑decay plus uplift estimates.

  • Diagnostics: failure reasons (fatigue, policy block, low confidence).

  • Auto‑tuning: contextual bandits swap copy variants within caps.


API Quickstart

  • Decide: POST /v1/decide with persona probs, session context → ranked playbooks + templates.

  • Render: client fills variables (product_name, key_benefit, etc.) and respects caps.

  • Log: exposure → outcome with trace_id for learning.

Request (abridged)

{
  "subject_id": "SUB-7f91b1c6",
  "persona_probs": {"PER-EXP-dealfirst-1.0": 0.72, "PER-QLT-craft-1.0": 0.18},
  "context": {"recent_events": ["pricing_page_view"], "fatigue": 0.2, "consent": ["personalization"]}
}

Response (abridged)

{
  "recommendations": [
    {"playbook_id": "PB-TRIAL-NUDGE", "score": 0.86, "variables": {"trial_length_days": 14, "product_name": "Moonbrush", "key_benefit": "hyper‑personal previews", "comparison_hook": "2× faster setup"}},
    {"playbook_id": "PB-COMPARE-GRID", "score": 0.64}
  ],
  "reason_codes": ["clear_benefit","low_friction"]
}

Compliance Checklist (per playbook)


Limitations & Assumptions

  • Cold‑start fallback uses contextual and content‑based templates.

  • Persona probabilities are estimates; prefer mixture routing when confidence is moderate.

  • Results depend on event fidelity and consented coverage.

Last updated