Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Porter's Five Forces — analyze the competitive intensity and attractiveness of an industry. Use when evaluating a new market entry, diagnosing margin pressure, designing a defensive strategy, or auditing industry-level positioning.
.claude/skills/borghei-porters-five-forces/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-02 | ✗→✓ | ▲ Improved | -10% | 0% |
| case-04 | ✗→✓ | ▲ Improved | 86% | 0% |
| case-05 | ✗→✓ | ▲ Improved | 25% | 0% |
| case-09 | ✗→✓ | ▲ Improved | 86% | 0% |
| case-11 | ✗→✓ | ▲ Improved | 63% | 0% |
Michael Porter's framework for analyzing the structural attractiveness of an industry. Reveals where profit pools form, why some markets are chronically unprofitable, and where strategic positioning has leverage.
Plus (Porter's later addition):
Each force is rated low / medium / high based on specific factors:
Before scoring the forces, confirm these inputs. If any is unknown or vague, ASK — do not assume:
Stop rule: ask only the 2-3 that most change the output. If the user says "just draft it," proceed and list your assumptions at the top of the artifact.
Industry definition is the most-frequent source of error.
Use the rubric. Each force gets low / medium / high + evidence.
Usually 1-2 forces dominate. They drive the industry's profit pool.
Each force suggests strategic moves:
| Force | High = unfavorable | Strategy implications | |-------|---------------------|------------------------| | New entrants | Easy entry | Build barriers (brand, scale, network, switching cost) | | Supplier power | Concentrated | Diversify, integrate backward, build alternative supply | | Buyer power | Concentrated | Diversify customer base, differentiate, integrate forward | | Substitutes | Strong substitutes | Differentiate, raise switching cost, defend value prop | | Rivalry | Intense | Differentiate, niche down, exit, consolidate |
five_forces_scorer.pyAudit for: missing evidence, generic factors, missed sub-factors, no strategy implications drawn.
bashpython3 project-management/strategy-frameworks/porters-five-forces/scripts/five_forces_scorer.py \ --input forces.json --format markdown
references/five-forces-deep.md — each force, factors, examplesreferences/five-forces-and-strategy.md — translating to strategic movesproject-management/strategy-frameworks/swot-analysis — firm-level positioningproject-management/strategy-frameworks/ansoff-matrix — growth optionsproject-management/strategy-frameworks/business-model-canvas — operational viewmarketing/competitive-teardown — competitor-specific analysisc-level-advisor/ceo-advisor — strategic context| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→fail | 26,790 | 29,584 | +10% | 1 | 1 | 0% | 3,892 | 5,722 | +47% | 0 | 0 | — |
case-02 | fail→pass | 23,715 | 9,396 | -60% | 1 | 1 | 0% | 3,266 | 2,941 | -10% | 0 | 0 | — |
case-03 | fail→fail | 28,306 | 32,287 | +14% | 1 | 1 | 0% | 4,234 | 6,158 | +45% | 0 | 0 | — |
case-04 | fail→pass | 17,321 | 23,445 | +35% | 1 | 1 | 0% | 2,532 | 4,712 | +86% | 0 | 0 | — |
case-05 | fail→pass | 22,498 | 18,373 | -18% | 1 | 1 | 0% | 3,237 | 4,053 | +25% | 0 | 0 | — |
case-06 | pass→pass | 11,991 | 20,368 | +70% | 1 | 1 | 0% | 1,759 | 4,258 | +142% | 0 | 0 | — |
case-07 | pass→pass | 17,750 | 22,811 | +29% | 1 | 1 | 0% | 2,537 | 4,730 | +86% | 0 | 0 | — |
case-08 | pass→pass | 20,851 | 24,899 | +19% | 1 | 1 | 0% | 3,036 | 5,215 | +72% | 0 | 0 | — |
case-09 | fail→pass | 19,979 | 27,610 | +38% | 1 | 1 | 0% | 2,876 | 5,354 | +86% | 0 | 0 | — |
case-10 | pass→pass | 17,354 | 13,156 | -24% | 1 | 1 | 0% | 2,601 | 3,417 | +31% | 0 | 0 | — |
case-11 | fail→pass | 16,450 | 17,695 | +8% | 1 | 1 | 0% | 2,378 | 3,879 | +63% | 0 | 0 | — |
case-12 | pass→pass | 17,495 | 27,836 | +59% | 1 | 1 | 0% | 2,345 | 5,502 | +135% | 0 | 0 | — |
case-13 | pass→pass | 17,398 | 17,663 | +2% | 1 | 1 | 0% | 2,567 | 3,968 | +55% | 0 | 0 | — |
case-14 | pass→pass | 15,156 | 18,660 | +23% | 1 | 1 | 0% | 2,189 | 4,313 | +97% | 0 | 0 | — |
case-15 | pass→pass | 12,343 | 17,974 | +46% | 1 | 1 | 0% | 1,788 | 4,005 | +124% | 0 | 0 | — |
case-16 | fail→pass | 11,168 | 3,049 | -73% | 1 | 1 | 0% | 2,185 | 2,001 | -8% | 0 | 0 | — |
case-17 | fail→pass | 9,344 | 20,153 | +116% | 1 | 1 | 0% | 1,441 | 4,396 | +205% | 0 | 0 | — |
case-18 | fail→fail | 17,189 | 23,365 | +36% | 1 | 1 | 0% | 2,648 | 5,091 | +92% | 0 | 0 | — |
case-19 | pass→pass | 12,613 | 14,653 | +16% | 1 | 1 | 0% | 2,068 | 3,537 | +71% | 0 | 0 | — |
case-20 | pass→fail | 19,177 | 10,246 | -47% | 1 | 1 | 0% | 3,056 | 3,131 | +2% | 0 | 0 | — |
case-21 | pass→pass | 19,987 | 28,469 | +42% | 1 | 1 | 0% | 2,999 | 5,910 | +97% | 0 | 0 | — |
case-22 | fail→fail | 12,925 | 8,265 | -36% | 1 | 1 | 0% | 1,919 | 2,722 | +42% | 0 | 0 | — |
case-23 | pass→pass | 13,413 | 16,672 | +24% | 1 | 1 | 0% | 2,866 | 4,749 | +66% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 23 cases were attempted. The headline lift of +26 percentage points is the difference between those two pass rates over the 23 comparable cases. 1 case got worse with the skill loaded, and it is included in that figure.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.