{
  "slug": "coffee-shop-cup-economics",
  "title": "Coffee Shop Cup Economics Calculator",
  "heading": "Coffee Shop Cup Economics Calculator",
  "category": "financial",
  "url": "https://www.revenuelab.fyi/toolbox/coffee-shop-cup-economics",
  "summary": "Cost and margin breakdown per cup, from beans to cup lid.",
  "description": "A latte's cost isn't just the shot of espresso — it's beans, milk, cup, lid, sleeve, and a slice of labor time. This calculator breaks a drink down to its component costs: coffee/espresso cost per cup based on dose and bean price per pound, milk cost based on ounces used and price per gallon, and packaging cost for cup, lid, and sleeve. Add them up against your menu price and you get true cup cost and margin. Specialty coffee shops typically run 15-20% beverage cost (much lower than food), which is why coffee carries the profitability of many cafe operations even when the food program breaks even. A 20oz latte selling for $5.50 with roughly $0.90 in true cup cost runs about 16% cost — healthy — but oversized milk pours or premium syrup add-ins that aren't priced separately can push that to 25%+ without anyone noticing on a per-cup basis.",
  "formula": "Cup cost = espresso cost + milk cost + packaging cost. Cup cost % = cup cost ÷ price × 100.",
  "dateModified": "2026-09-30",
  "run_url": "https://www.revenuelab.fyi/api/public/calc?tool=coffee-shop-cup-economics",
  "inputs": [
    {
      "id": "beanPricePerLb",
      "label": "Bean price per pound",
      "kind": "number",
      "hint": null,
      "default": 9,
      "unit": "$",
      "min": 0,
      "max": null
    },
    {
      "id": "doseGrams",
      "label": "Espresso dose",
      "kind": "number",
      "hint": null,
      "default": 18,
      "unit": "g",
      "min": 5,
      "max": null
    },
    {
      "id": "milkPriceGallon",
      "label": "Milk price per gallon",
      "kind": "number",
      "hint": null,
      "default": 4.2,
      "unit": "$",
      "min": 0,
      "max": null
    },
    {
      "id": "milkOz",
      "label": "Milk used",
      "kind": "number",
      "hint": null,
      "default": 10,
      "unit": "oz",
      "min": 0,
      "max": null
    },
    {
      "id": "packagingCost",
      "label": "Cup + lid + sleeve cost",
      "kind": "number",
      "hint": null,
      "default": 0.35,
      "unit": "$",
      "min": 0,
      "max": null
    },
    {
      "id": "price",
      "label": "Menu price",
      "kind": "number",
      "hint": null,
      "default": 5.5,
      "unit": "$",
      "min": 0,
      "max": null
    }
  ],
  "outputs": [
    {
      "id": "cupCost",
      "label": "True cup cost",
      "format": "currency",
      "hint": null,
      "primary": true
    },
    {
      "id": "cupCostPct",
      "label": "Cup cost %",
      "format": "percent",
      "hint": null,
      "primary": false
    },
    {
      "id": "margin",
      "label": "Gross margin per cup",
      "format": "currency",
      "hint": null,
      "primary": false
    },
    {
      "id": "espressoCost",
      "label": "Espresso cost only",
      "format": "currency",
      "hint": null,
      "primary": false
    }
  ],
  "worked_example": {
    "inputs": [
      "Bean price per pound: 9 $",
      "Espresso dose: 18 g",
      "Milk price per gallon: 4.2 $",
      "Milk used: 10 oz",
      "Cup + lid + sleeve cost: 0.35 $",
      "Menu price: 5.5 $"
    ],
    "outputs": [
      "True cup cost: $1.04",
      "Cup cost %: 18.8%",
      "Gross margin per cup: $4.46",
      "Espresso cost only: $0.36"
    ]
  },
  "how_to": {
    "title": "How to use this",
    "steps": [
      "Enter bean price per pound ($).",
      "Enter espresso dose (g).",
      "Enter milk price per gallon ($).",
      "Enter milk used (oz).",
      "Enter cup + lid + sleeve cost ($).",
      "Enter menu price ($).",
      "Read your true cup cost on the right — it updates as you type.",
      "Hit Share to keep the scenario or send it to someone."
    ]
  },
  "scenarios": [
    {
      "name": "Conservative",
      "description": "Lower-end numbers — what if things land soft?",
      "values": {
        "beanPricePerLb": 5.3999999999999995,
        "doseGrams": 11,
        "milkPriceGallon": 2.52,
        "milkOz": 6,
        "packagingCost": 0.21,
        "price": 3.3
      }
    },
    {
      "name": "Typical",
      "description": "Defaults — the most common real-world setup.",
      "values": {
        "beanPricePerLb": 9,
        "doseGrams": 18,
        "milkPriceGallon": 4.2,
        "milkOz": 10,
        "packagingCost": 0.35,
        "price": 5.5
      }
    },
    {
      "name": "Ambitious",
      "description": "Higher-end numbers — what if things really pop?",
      "values": {
        "beanPricePerLb": 14.4,
        "doseGrams": 29,
        "milkPriceGallon": 6.720000000000001,
        "milkOz": 16,
        "packagingCost": 0.5599999999999999,
        "price": 8.8
      }
    }
  ],
  "limitations": [
    "Results are estimates before tax, fees, and inflation unless an input explicitly covers them.",
    "Rates are treated as fixed for the whole period — variable-rate products will drift from this projection.",
    "This is educational maths, not financial advice. Check anything contractual with the lender or your accountant."
  ],
  "faq": [
    {
      "q": "What's a good beverage cost % for coffee?",
      "a": "15-20% is typical for specialty coffee drinks, well below food cost targets. This is why coffee shops often price food items (pastries, sandwiches) to break even or carry only modest margin, using coffee to fund overall profitability."
    },
    {
      "q": "How much does milk actually cost per drink?",
      "a": "At $4.20/gallon and 10oz used, milk costs about $0.33 per drink, often more than the espresso shot itself. Oat and alternative milks typically run 2-3x dairy cost per ounce, which is why most shops charge an upcharge for them."
    },
    {
      "q": "Should I price syrups and add-ins separately?",
      "a": "Yes — a pump of flavored syrup costs roughly $0.10-0.15 but is commonly priced at $0.50-0.75 as an add-on, and skipping that charge on 'just one pump' requests quietly erodes margin across hundreds of daily transactions."
    },
    {
      "q": "Does cup size change the cost percentage much?",
      "a": "Yes, non-linearly, because packaging cost doesn't scale with drink size but ingredient cost does. A 12oz drink often runs a slightly higher cost % than a 20oz version of the same recipe because the fixed cup/lid cost is a bigger share of a smaller price."
    }
  ],
  "related": [
    "https://www.revenuelab.fyi/toolbox/food-cost-percentage",
    "https://www.revenuelab.fyi/toolbox/pour-cost-calculator",
    "https://www.revenuelab.fyi/toolbox/keg-yield-calculator"
  ],
  "license": "CC-BY-4.0",
  "citation": "RevenueLab — Coffee Shop Cup Economics Calculator (https://www.revenuelab.fyi/toolbox/coffee-shop-cup-economics)"
}