← All skills

positioning-canvas

core strategy

Build a positioning statement for a product, feature, or company using April Dunford's "Obviously Awesome" 5-step framework. Use when launching, repositioning, or when messaging feels generic.


Positioning Canvas

Apply April Dunford's positioning framework from Obviously Awesome. Positioning is upstream of copy, pricing, and GTM -- get it wrong and everything downstream is rework.

When to use

When NOT to use

Use this instead

The 5-step Dunford framework

Run these in order. Skipping a step or doing them in parallel produces incoherent positioning.

1. Competitive alternatives -- What would customers use if your product didn't exist? Includes spreadsheets, manual processes, the in-house build, doing nothing -- not just direct competitors. Force at least 3 alternatives, ideally including one non-software one.

2. Unique attributes -- What does your product have that the alternatives don't? Capabilities, not benefits. Be specific and falsifiable: "real-time" or "supports SAML" beats "fast" or "secure". List 5-10. If you can't find any, you don't have a position -- you have a feature.

3. Value (so what?) -- For each unique attribute, ask "so what does that let the customer do?" twice. Stop when you hit a business outcome (revenue, cost, risk, time). Cluster the values into 2-4 themes. The themes are your value pillars.

4. Customers who care most -- Which segment cares disproportionately about those value themes? Define them by characteristics that predict caring, not demographics. "Companies running outbound campaigns at >50/week with no SDR team" beats "SMB SaaS founders". The narrower the better -- you can broaden later.

5. Market category -- In the customer's mind, what frame of reference makes the value obvious? Pick a category where (a) the customer is already shopping, (b) your unique attributes are differentiators not table stakes, and (c) the budget exists. You can pick an existing category, sub-category an existing one, or rarely create a new one (expensive -- only with category-creation budget).

Output format

Always produce this 1-page artifact. If it's longer than a page, you haven't finished thinking.

POSITIONING: [Product name]
Date: [YYYY-MM-DD]
Audience version: [if multi-audience: "for X buyers" / "for Y buyers"]

1. CATEGORY
   We are a [category] for [who].

2. ICP
   Best fit: [specific characteristics, not demographics]
   Disqualifiers: [who this is NOT for -- important]

3. VALUE PILLARS (2-4)
   - [Pillar]: [outcome it delivers]
   - [Pillar]: [outcome it delivers]

4. UNIQUE ATTRIBUTES (proof)
   - [Attribute] -> enables [pillar]
   - [Attribute] -> enables [pillar]

5. COMPETITIVE ALTERNATIVES
   - vs [alt]: we win on [pillar], they win on [thing]
   - vs [alt]: we win on [pillar], they win on [thing]

6. ONE-LINER
   [Single sentence that lands category + ICP + #1 value]

Quality checks before finalizing

Common failure modes

Research sources

When the user hasn't supplied research, gather it before running the framework:

If research is thin, name it in the artifact ("based on landing-page review only -- interview data would sharpen step 4") rather than papering over the gap.

Deliverable

Write the positioning artifact directly into the conversation as markdown. If the user asks for a doc/deck, hand off to document-skills:doc-coauthoring or deck-builder -- but the positioning itself must be locked first.

Install

Claude Code

/plugin marketplace add ReachRobin/skills
/plugin install skills

Prompt-pack (ChatGPT / Cursor / Claude.ai)

Copy the skill file and paste it into any LLM tool as a system prompt or custom instruction.

Download positioning-canvas.md

MCP config (other clients)

{
  "mcpServers": {
    "rr": {
      "transport": "http",
      "url": "https://mcp.reachrobin.com/api/mcp",
      "headers": { "Authorization": "Bearer YOUR_TOKEN" }
    }
  }
}

Get your token at app.reachrobin.com/dashboard/settings/mcp-tokens.

Maintained by @jarektkaczyk · v1.0.0