{
  "id": "tam-sam-som",
  "version": "1b0e5ee3a81a",
  "status": "published",
  "name": "TAM SAM SOM Calculator",
  "question": "What are my TAM, SAM and SOM?",
  "summary": "Computes the total addressable market (TAM), the serviceable available market (SAM) and the serviceable obtainable market (SOM) in dollars a year, from customer counts, yearly revenue per customer and the share you can win.",
  "category": "finance",
  "subcategory": "business",
  "url": "https://www.acalculator.org/finance/tam-sam-som-calculator",
  "markdown": "https://www.acalculator.org/finance/tam-sam-som-calculator.md",
  "kind": "function",
  "method": "TAM = customers in the market × revenue per customer per year; SAM = customers you can serve × revenue per customer per year; SOM = SAM × share you can win ÷ 100.",
  "assumptions": [
    "Every customer spends the same average amount a year, in the whole market and in the part you can serve.",
    "The share you can win is your own estimate, for example your revenue last year ÷ your SAM last year.",
    "Arithmetic is exact on the typed decimals; money shows to the cent, halves up."
  ],
  "inputs": {
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "type": "object",
    "properties": {
      "customers": {
        "title": "Customers in the market",
        "description": "Every potential buyer of this kind of product: the whole market.",
        "type": "integer",
        "minimum": 1,
        "maximum": 1000000000000
      },
      "serviceable": {
        "title": "Customers you can serve",
        "description": "The part of the market your product, price and reach can serve.",
        "type": "integer",
        "minimum": 0,
        "maximum": 1000000000000
      },
      "revenue": {
        "title": "Revenue per customer per year",
        "description": "What one customer spends on this kind of product in a year, on average.",
        "type": "number",
        "x-unit": "USD",
        "minimum": 0,
        "maximum": 1000000000
      },
      "share": {
        "title": "Share you can win",
        "description": "The share of the serviceable market you expect to win: your obtainable market share.",
        "type": "number",
        "x-unit": "percent",
        "minimum": 0,
        "maximum": 100
      }
    }
  },
  "outputs": {
    "tam": {
      "label": "TAM (total addressable market)",
      "description": "Customers in the market × revenue per customer per year.",
      "format": "money"
    },
    "sam": {
      "label": "SAM (serviceable available market)",
      "description": "Customers you can serve × revenue per customer per year.",
      "format": "money"
    },
    "som": {
      "label": "SOM (serviceable obtainable market)",
      "description": "SAM × the share you can win ÷ 100.",
      "format": "money"
    },
    "samShare": {
      "label": "SAM as a share of TAM",
      "description": "Customers you can serve ÷ customers in the market × 100.",
      "format": "percent"
    },
    "somCustomers": {
      "label": "Customers in the SOM",
      "description": "Customers you can serve × the share you can win ÷ 100, to the nearest whole customer.",
      "format": "number"
    }
  },
  "defaultAnswer": {
    "inputs": {
      "customers": 1000000,
      "serviceable": 200000,
      "revenue": 120,
      "share": 5
    },
    "outputs": {
      "tam": 120000000,
      "sam": 24000000,
      "som": 1200000,
      "samShare": 20,
      "somCustomers": 10000
    },
    "text": "At $120.00 a year per customer, the TAM is $120,000,000.00, the SAM is $24,000,000.00 and the SOM is $1,200,000.00."
  },
  "examples": [
    {
      "given": {
        "customers": 27790000,
        "serviceable": 20000000,
        "revenue": 2500,
        "share": 1.25
      },
      "expect": {
        "tam": 69475000000,
        "sam": 50000000000,
        "som": 625000000,
        "somCustomers": 250000
      },
      "source": "HubSpot, \"TAM, SAM & SOM: What Do They Mean & How Do You Calculate Them?\" (TAM = total customers in the market × average yearly revenue per customer; SAM = the customers you can serve × that revenue; SOM = market share × SAM). https://blog.hubspot.com/marketing/tam-sam-som: 27.79 million × $2,500 = $69.475 billion (HubSpot writes $69.47 billion); 20 million × $2,500 = $50 billion; 1.25% × $50 billion = $625 million"
    },
    {
      "given": {
        "customers": 1000000,
        "serviceable": 200000,
        "revenue": 120,
        "share": 5
      },
      "expect": {
        "tam": 120000000,
        "sam": 24000000,
        "som": 1200000,
        "samShare": 20,
        "somCustomers": 10000
      },
      "source": "HubSpot, \"TAM, SAM & SOM: What Do They Mean & How Do You Calculate Them?\" (TAM = total customers in the market × average yearly revenue per customer; SAM = the customers you can serve × that revenue; SOM = market share × SAM). https://blog.hubspot.com/marketing/tam-sam-som; hand calculation in content.mdx: 1,000,000 × 120 = 120,000,000; 200,000 × 120 = 24,000,000; 5% of that = 1,200,000"
    },
    {
      "given": {
        "customers": 3,
        "serviceable": 1,
        "revenue": 99.99,
        "share": 0
      },
      "expect": {
        "tam": 299.97,
        "sam": 99.99,
        "som": 0,
        "samShare": 33.333333333333336
      },
      "source": "HubSpot, \"TAM, SAM & SOM: What Do They Mean & How Do You Calculate Them?\" (TAM = total customers in the market × average yearly revenue per customer; SAM = the customers you can serve × that revenue; SOM = market share × SAM). https://blog.hubspot.com/marketing/tam-sam-som; hand calculation in content.mdx: 3 × 99.99 = 299.97; 1 ÷ 3 × 100 = 33.33"
    }
  ],
  "sources": [
    "HubSpot, \"TAM, SAM & SOM: What Do They Mean & How Do You Calculate Them?\": TAM = total customers in the market × average revenue per customer; SAM from the customers you can serve; SOM = last year's market share × this year's SAM, with the luxury apparel examples. https://blog.hubspot.com/marketing/tam-sam-som (retrieved 2026-10-18)"
  ],
  "related": [
    "market-share",
    "revenue",
    "break-even"
  ],
  "changelog": []
}
