---
name: stakeholder_mapping
description: "Map project stakeholders end to end: discovery sweeps that find hidden stakeholders, evidence-based power and interest scoring, salience and engagement-gap checks, influence-path planning, per-stakeholder comms cadence and framing, and written escalation routes. Use when starting a project, rescuing a blocked one, planning who needs what communication, or working out how to reach a decision maker through people they trust."
---

# Stakeholder Mapping

## Purpose

Turn a name list into a working map that tells you who can stop the project, who cares, who sways whom, what each person needs to hear and how often, and where a blocked decision goes next. A grid alone does none of that. This skill runs the full chain from discovery to comms plan and escalation route, in one pass.

## Workflow

1. **Discover by category, then sweep the onion.** Start with categories, not names: sponsor and approvers, delivery team, direct users, teams whose work changes, owners of dependent systems, support and operations who inherit the result, finance, legal, compliance, security, vendors, and affected people outside the organisation. Then sweep outward in layers, product first, direct operators next, the containing business and its beneficiaries after that, wider environment last (regulators, suppliers, public, opponents). The outer sweep is where hidden stakeholders live: the security reviewer with a launch veto, the assistant who controls a diary, the downstream team whose API you are changing. Assign roles before people, then attach names.

2. **Capture what each stakeholder actually wants.** For every row in the register record: role, organisation, their own success metric in their words where you can get it, their main concern, and the evidence for it (conversation, decision, document). A row built on guesses about a function ("finance will want cost control") is marked as unverified until a real conversation replaces it. See `assets/example-register.csv` for the register shape.

3. **Score power, interest, and attitude from evidence.** Power is high only when you can name the source: sign-off, veto, a resource you cannot route around, expert authority, or sway over others. Interest is high when the outcome changes their work, targets, budget, risk, or standing. Record attitude (supportive, neutral, resistant) as its own field. Scoring detail, plus the salience check (power, legitimacy, urgency, from Mitchell, Agle and Wood, 1997) that catches cases a flat grid misses, is in `references/scoring-and-models.md`.

4. **Place everyone on the power-interest grid.** Mendelow's matrix (1991) gives the four engagement postures:
   - High power, high interest: Manage Closely. Involve in decisions, frequent contact.
   - High power, low interest: Keep Satisfied. Brief proactively, in short form, no surprises.
   - Low power, high interest: Keep Informed. Regular updates, real chances to contribute.
   - Low power, low interest: Monitor. Milestone notes, watch for movement.
   Placement is a starting posture, not the plan. Steps 5 to 7 are the plan.

5. **Mark the engagement gap.** Using the five levels unaware, resistant, neutral, supportive, leading, record current (C) and desired (D) per stakeholder. Desired is set by what the next milestone needs, not by ambition for the map. Every gap gets one dated action, one owner, and one channel, or it stays flagged as open work.

6. **Plan influence paths.** For each stakeholder you need to move, record who influences them, the direction and strength of that influence, and the sequence you will work: who you win first, who you approach jointly, who you never approach cold. Example from the worked case below: the compliance officer resists, trusts the platform lead, and sits on the legal review board. Primary path is platform lead first, then a joint session, instead of a direct pitch that has already failed once. A map with no influence paths forces every hard conversation to start cold.

7. **Build the comms plan per stakeholder.** For each row set cadence, format, channel, owner, and content focus, and frame the first line of every update in that stakeholder's success metric. Defaults by quadrant:
   - Manage Closely: weekly 1:1 or short written brief, decisions and risks first.
   - Keep Satisfied: monthly one-page summary, plus a same-day note when their area is touched.
   - Keep Informed: update every two weeks with a demo, draft, or staging link and a specific ask.
   - Monitor: milestone notes only.
   Craft rules, message framing examples, and pre-wiring steps for decision meetings are in `references/comms-and-escalation.md`.

8. **Write the escalation routes.** Per decision type (scope, budget, date, technical design, go-live) record the ladder in named roles, the trigger that starts a climb, the threshold that skips a step, and the timebox per step. Add the sideways route where an influence path clears a block faster than the ladder. Rules and defaults are in `references/comms-and-escalation.md`.

9. **Generate and check the map.** Put the register in CSV form and run:
   `python3 bin/stakeholder_map.py register.csv --out map.md`
   It validates values, computes quadrant and salience class, flags engagement gaps, high-power resistant rows, and dangerous salience rows, and drafts the comms plan table. Read its flags and resolve or accept each one in writing. Then set a re-map date: at every phase change, and immediately when a stakeholder behaves in a way their row does not explain.

### Worked example: payments platform migration

Register excerpt (full version in `assets/example-register.csv`):

| Stakeholder | Power / Interest | Attitude | Gap | Move |
|---|---|---|---|---|
| Priya Nair, VP Payments, sponsor | High / High, Manage Closely | Supportive | Supportive to Leading | Weekly brief framed on zero failed cutovers. Ask her to open the steering session with the decision list. |
| Ruth Alvarez, Compliance Officer | High / Low, Keep Satisfied | Resistant | Resistant to Neutral | Influence path through Dev Osei, whom she trusts. Joint session on the audit trail design before any formal review. No cold pitch. |
| Sam Whitaker, Support Lead | Low / High, Keep Informed | Supportive | None | Demo invite every two weeks, screens five days before customers see them. His metric is flat ticket volume. |

Escalation route for a blocked go-live decision: trigger is a decision waiting more than five working days, ladder is platform lead, project owner, sponsor Priya Nair, steering group, timebox two working days per step, ask arrives as options plus cost of waiting plus a recommendation.

## Output Contract

Deliver all of these, in markdown unless the requester names another format:

- Stakeholder register: name, role, organisation, success metric, concern, evidence status per row.
- Power-interest grid with every stakeholder placed and the scoring reason for each high rating.
- Salience and engagement table: salience class, current and desired engagement, and the dated action closing each gap.
- Influence-path list: who sways whom, path sequence for each stakeholder who needs to move.
- Comms plan: per stakeholder cadence, format, channel, owner, content focus, and the success-metric framing line.
- Escalation routes: per decision type, ladder, trigger, threshold, timebox, and the sideways route where one exists.
- Re-map date and the triggers that force an early re-map.

## Operating Rules

- No row without evidence or an unverified mark. A tidy map built on guesses is worse than a rough map that shows its gaps.
- Power comes from a named source, never from seniority alone.
- Never let a key stakeholder first hear a proposal in the meeting that decides it. Pre-wire, always.
- One Accountable per decision in any RACI you attach. Two approvers on one row means no approver.
- Escalate with a decision, options, cost of waiting, and a recommendation. Never escalate a complaint.
- Keep the map current or delete it. A stale map gets people blindsided, and they will blame the map, then you.
- Handle register data with care. Attitude and influence notes about named people are sensitive. Store the map with the project, not in public channels.
