# How to Calculate TAM, SAM, and SOM Using Top-Down and Bottom-Up Approaches

> Learn to calculate TAM, SAM, and SOM using top-down and bottom-up approaches. Master market sizing by triangulating results for realistic growth potential.

- Repository: [Pawel Huryn/pm-skills](https://github.com/phuryn/pm-skills)
- Tags: tutorial
- Published: 2026-06-26

---

**Calculate TAM, SAM, and SOM by applying both top-down (industry shrinkage) and bottom-up (unit economics) methodologies, then reconciling the results to produce a single, triangulated market size that accounts for realistic serviceable and obtainable boundaries.**

The **phuryn/pm-skills** repository provides a structured, reusable framework for product managers to calculate Total Addressable Market (TAM), Serviceable Addressable Market (SAM), and Serviceable Obtainable Market (SOM). By following the seven-step workflow defined in [`pm-market-research/skills/market-sizing/SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/pm-market-research/skills/market-sizing/SKILL.md), you can calculate TAM, SAM, and SOM using top-down and bottom-up approaches that yield defensible, data-driven estimates for investor pitches and strategic planning.

## The Seven-Step Market Sizing Pipeline

The core methodology resides in [`pm-market-research/skills/market-sizing/SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/pm-market-research/skills/market-sizing/SKILL.md), which prescribes a rigorous seven-step analysis pipeline. Each step builds upon the previous to ensure your market calculations are grounded in both macroeconomic data and microeconomic reality.

### Market Definition

Begin by scoping the problem space, target customer segments, and geographic boundaries. This foundational step prevents scope creep and ensures subsequent calculations address a specific, addressable market rather than an amorphous industry.

### Top-Down Estimation

Start with an industry-wide figure—such as total industry revenue or total global spending—and narrow it down using segmentation percentages. This **top-down approach** gives you a ceiling for your TAM by determining what portion of the broad market theoretically could use your solution.

### Bottom-Up Estimation

Build the market from unit economics: **customers × price × frequency**. This **bottom-up approach** produces an independent TAM estimate based on actual willingness to pay and usage patterns, often revealing constraints that top-down analysis misses.

### Reconciling Dual Estimates

According to the source code at lines 37-41 of the skill file, both top-down and bottom-up calculations are required. The skill reconciles these divergent estimates to produce a single, triangulated TAM figure that balances macro optimism with micro realism.

### SAM Scoping

Trim the reconciled TAM to the portion your product can realistically serve. Consider constraints like distribution channels, language support, pricing tiers, and regulatory boundaries. This yields your **Serviceable Addressable Market (SAM)**—the subset of TAM within your operational reach.

### SOM Estimation

Project the share you can actually capture in the next 1-3 years based on competitive positioning, brand strength, and go-to-market capacity. This **Serviceable Obtainable Market (SOM)** represents realistic revenue potential rather than theoretical possibility.

### Growth Projection and Assumption Mapping

Forecast how each metric evolves over a 2-3 year horizon. The skill mandates **assumption mapping**—listing key assumptions, confidence levels, and validation steps—to ensure your projections withstand scrutiny. The framework also instructs agents to search the web for up-to-date market data (see line 18), requiring citations for all sources and adherence to best-practice guidelines such as reporting currency, confidence intervals, and differentiating between revenue-based and unit-based sizing (lines 78-80).

## Implementation in pm-skills

Because the repository treats each skill as a self-contained specification, you can invoke the market-sizing skill via CLI, chatbot, or CI pipeline. The skill outputs a structured markdown report including a summary table, growth drivers, and risk analysis.

### CLI Invocation

Trigger the skill from the command line to generate immediate market sizing reports:

```bash

# Example 1 – Invoke market-sizing via the CLI with a custom product argument

pm-toolkit market-sizing \
  --product "AI-powered code review tool" \
  --region "United States" \
  --industry "Software Development Tools"

```

### Programmatic Integration

Embed the skill within Python applications or chatbot flows:

```python

# Example 2 – Embed the skill in a chatbot flow (pseudo-Python)

import pm_toolkit as pm

question = """
Estimate the TAM, SAM, and SOM for a cloud-based video-editing platform targeting indie creators in Europe.
"""
response = pm.run_skill("market-sizing", question)
print(response)

```

### Automated Pipeline Integration

Generate market sizing reports as part of your continuous integration workflow:

```bash

# Example 3 – Use the skill inside a CI pipeline to generate a market-size report

# (GitHub Actions step)

- name: Generate market sizing
  run: |
    pm-toolkit market-sizing \
      --product "Smart Home Energy Monitor" \
      --region "North America" \
      --industry "IoT Home Devices" \
      > market-sizing-report.md

```

## Summary

- The **phuryn/pm-skills** repository implements market sizing as a reusable skill in [`pm-market-research/skills/market-sizing/SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/pm-market-research/skills/market-sizing/SKILL.md).
- **Top-down** calculations start from industry totals and apply segmentation percentages, while **bottom-up** calculations build from unit economics (customers × price × frequency).
- Both approaches are mandatory and reconciled (lines 37-41) to produce a triangulated TAM.
- **SAM** narrows TAM by operational constraints; **SOM** further refines this to realistic 1-3 year capture potential based on competitive positioning.
- The skill requires web-sourced data (line 18) with proper citations and follows standardized output formats including assumption mapping and risk analysis.

## Frequently Asked Questions

### What is the difference between TAM, SAM, and SOM?

TAM represents the total market demand for a product or service, calculated as the entire revenue opportunity if you achieved 100% market share with unlimited resources. SAM narrows this to the portion you can realistically serve given your business model, geography, and capabilities. SOM represents the short-term subset of SAM that you can actually capture within 1-3 years considering competitive dynamics and go-to-market constraints.

### Why does the pm-skills framework require both top-down and bottom-up calculations?

Using both methodologies provides **triangulation** that validates assumptions against independent data sources. Top-down ensures your estimates align with macroeconomic industry data, while bottom-up verifies that unit economics reflect actual customer behavior and pricing realities. The framework reconciles these divergent estimates at lines 37-41 of [`SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/SKILL.md) to prevent overestimation from relying on a single methodology.

### How does the pm-skills market-sizing skill ensure data accuracy?

The skill explicitly instructs agents to search the web for current market data (line 18) and mandates citation of all sources. It also requires best-practice documentation including confidence intervals, currency specifications, and differentiation between revenue-based versus unit-based sizing (lines 78-80), ensuring transparency and auditability for investor presentations.

### Can I automate market sizing calculations in my CI/CD pipeline?

Yes. The skill is designed as a self-contained specification that accepts CLI arguments and outputs structured markdown. You can integrate `pm-toolkit market-sizing` commands into GitHub Actions or other CI pipelines to generate updated market reports automatically when product specifications change, ensuring your market size projections remain current with evolving business requirements.