Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Structured frameworks for market sizing, competitive analysis, and strategic ...
.claude/skills/brycewang-stanford-market-analysis-guide/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-06 | ✗→✓ | ▲ Improved | 28% | 0% |
| case-18 | ✗→✓ | ▲ Improved | -35% | 0% |
| case-10 | ✓→✓ | = Same ✓ | 33% | 0% |
| case-08 | ✓→✓ | = Same ✓ | 34% | 0% |
| case-03 | ✓→✓ | = Same ✓ | 23% | 0% |
A comprehensive skill for conducting rigorous market analysis in academic and applied research contexts. This guide covers quantitative market sizing, competitive landscape mapping, and strategic positioning frameworks grounded in peer-reviewed methodologies.
Market sizing is the foundation of any credible market analysis. There are two primary approaches, and robust research typically employs both for triangulation.
Top-Down Approach (TAM/SAM/SOM)
Start with the total addressable market and narrow systematically:
TAM (Total Addressable Market)
-> SAM (Serviceable Available Market)
-> SOM (Serviceable Obtainable Market)
Example calculation:
TAM = Global higher-education EdTech spend = $340B (2025, HolonIQ)
SAM = AI-powered research tools segment = $12B
SOM = Realistic capture in Year 3 = $120M (1% of SAM)Bottom-Up Approach
Build estimates from unit economics:
python# Bottom-up market sizing users_in_target_segment = 8_000_000 # global PhD + postdoc researchers adoption_rate = 0.05 # 5% in first 3 years avg_revenue_per_user = 180 # USD/year bottom_up_estimate = users_in_target_segment * adoption_rate * avg_revenue_per_user # Result: $72,000,000
Always cite the data sources for each assumption. Use government statistics (e.g., NSF, Eurostat), industry reports (Gartner, McKinsey), and published academic datasets.
Apply Porter's framework systematically to map industry structure:
| Force | Key Questions | Data Sources | |-------|--------------|--------------| | Rivalry | How many direct competitors? Market concentration (HHI)? | Crunchbase, SEC filings | | New Entrants | Capital requirements? Regulatory barriers? | Patent databases, regulatory filings | | Substitutes | What alternatives exist? Switching costs? | User surveys, app store data | | Buyer Power | Customer concentration? Price sensitivity? | Industry reports, interviews | | Supplier Power | Input scarcity? Vendor lock-in? | Supply chain databases |
Go beyond basic SWOT by constructing a TOWS matrix that generates actionable strategies:
Strengths (S) Weaknesses (W)
Opportunities SO strategies WO strategies
(O) (use S to exploit O) (overcome W via O)
Threats ST strategies WT strategies
(T) (use S to counter T) (minimize W, avoid T)Primary data collection methods for market analysis research:
Secondary data sources to cross-validate:
Present findings using clear, reproducible visualizations:
pythonimport matplotlib.pyplot as plt import numpy as np segments = ['Segment A', 'Segment B', 'Segment C', 'Segment D'] sizes = [45, 28, 18, 9] colors = ['#3B82F6', '#EF4444', '#10B981', '#F59E0B'] fig, ax = plt.subplots(figsize=(8, 6)) ax.barh(segments, sizes, color=colors) ax.set_xlabel('Market Share (%)') ax.set_title('Competitive Landscape by Segment') plt.tight_layout() plt.savefig('market_share.png', dpi=300)
Always include confidence intervals or sensitivity ranges for quantitative estimates. A well-structured market analysis report should contain an executive summary, methodology section, findings with visualizations, and a limitations discussion.
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-10 | pass→pass | 17,438 | 14,380 | -18% | 1 | 1 | 0% | 2,419 | 3,213 | +33% | 0 | 0 | — |
case-07 | fail→fail | 21,720 | 25,121 | +16% | 1 | 1 | 0% | 3,268 | 4,851 | +48% | 0 | 0 | — |
case-08 | pass→pass | 16,983 | 16,191 | -5% | 1 | 1 | 0% | 2,668 | 3,574 | +34% | 0 | 0 | — |
case-03 | pass→pass | 20,941 | 19,123 | -9% | 1 | 1 | 0% | 3,275 | 4,039 | +23% | 0 | 0 | — |
case-04 | pass→pass | 16,351 | 18,051 | +10% | 1 | 1 | 0% | 3,199 | 4,437 | +39% | 0 | 0 | — |
case-05 | pass→pass | 19,717 | 17,303 | -12% | 1 | 1 | 0% | 3,157 | 3,806 | +21% | 0 | 0 | — |
case-06 | fail→pass | 18,525 | 17,526 | -5% | 1 | 1 | 0% | 2,742 | 3,508 | +28% | 0 | 0 | — |
case-09 | fail→fail | 19,173 | 21,328 | +11% | 1 | 1 | 0% | 3,277 | 4,161 | +27% | 0 | 0 | — |
case-01 | fail→fail | 50,775 | 42,579 | -16% | 1 | 1 | 0% | 8,257 | 7,368 | -11% | 0 | 0 | — |
case-02 | fail→fail | 48,884 | 32,748 | -33% | 1 | 1 | 0% | 8,261 | 6,768 | -18% | 0 | 0 | — |
case-11 | pass→pass | 14,087 | 9,212 | -35% | 1 | 1 | 0% | 2,200 | 2,589 | +18% | 0 | 0 | — |
case-12 | pass→pass | 11,258 | 14,476 | +29% | 1 | 1 | 0% | 1,763 | 3,365 | +91% | 0 | 0 | — |
case-13 | pass→pass | 19,637 | 25,882 | +32% | 1 | 1 | 0% | 2,859 | 4,992 | +75% | 0 | 0 | — |
case-14 | pass→pass | 17,689 | 22,063 | +25% | 1 | 1 | 0% | 2,746 | 4,292 | +56% | 0 | 0 | — |
case-15 | pass→pass | 19,707 | 19,295 | -2% | 1 | 1 | 0% | 2,947 | 3,890 | +32% | 0 | 0 | — |
case-16 | fail→fail | 17,485 | 15,554 | -11% | 1 | 1 | 0% | 2,702 | 3,513 | +30% | 0 | 0 | — |
case-17 | pass→pass | 19,216 | 18,700 | -3% | 1 | 1 | 0% | 2,870 | 3,875 | +35% | 0 | 0 | — |
case-18 | fail→pass | 23,095 | 9,630 | -58% | 1 | 1 | 0% | 4,423 | 2,875 | -35% | 0 | 0 | — |
case-19 | pass→pass | 21,938 | 20,583 | -6% | 1 | 1 | 0% | 3,362 | 4,419 | +31% | 0 | 0 | — |
case-20 | pass→pass | 23,947 | 20,655 | -14% | 1 | 1 | 0% | 3,163 | 4,274 | +35% | 0 | 0 | — |
case-21 | pass→pass | 18,662 | 17,173 | -8% | 1 | 1 | 0% | 2,536 | 3,528 | +39% | 0 | 0 | — |
case-22 | pass→pass | 35,927 | 45,570 | +27% | 1 | 1 | 0% | 5,146 | 9,186 | +79% | 0 | 0 | — |
case-23 | pass→pass | 27,915 | 39,933 | +43% | 1 | 1 | 0% | 5,620 | 9,207 | +64% | 0 | 0 | — |
case-24 | pass→pass | 37,253 | 29,842 | -20% | 1 | 1 | 0% | 5,421 | 6,251 | +15% | 0 | 0 | — |
case-25 | pass→pass | 36,170 | 24,388 | -33% | 1 | 1 | 0% | 5,794 | 5,065 | -13% | 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. 25 cases were attempted. The headline lift of +8 percentage points is the difference between those two pass rates over the 25 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.