{
  "slug": "markup",
  "title": "Markup Calculator",
  "heading": "Markup Calculator",
  "category": "financial",
  "url": "https://www.revenuelab.fyi/toolbox/markup",
  "summary": "Set a price from cost and target markup or margin.",
  "description": "Markup is measured against cost; margin is measured against price. A 50% markup is only a 33% margin — price from the margin you need, not the markup that sounds right.",
  "formula": "Price = Cost × (1 + Markup). Price from margin = Cost ÷ (1 − Margin).",
  "dateModified": "2026-09-30",
  "run_url": "https://www.revenuelab.fyi/api/public/calc?tool=markup",
  "inputs": [
    {
      "id": "cost",
      "label": "Unit cost",
      "kind": "number",
      "hint": null,
      "default": 40,
      "unit": "$",
      "min": 0,
      "max": null
    },
    {
      "id": "markup",
      "label": "Target markup",
      "kind": "number",
      "hint": null,
      "default": 60,
      "unit": "%",
      "min": 0,
      "max": null
    },
    {
      "id": "targetMargin",
      "label": "Or target margin",
      "kind": "number",
      "hint": null,
      "default": 45,
      "unit": "%",
      "min": 0,
      "max": 99
    }
  ],
  "outputs": [
    {
      "id": "priceFromMarkup",
      "label": "Price at your markup",
      "format": "currency",
      "hint": null,
      "primary": true
    },
    {
      "id": "marginAchieved",
      "label": "Margin that produces",
      "format": "percent",
      "hint": null,
      "primary": false
    },
    {
      "id": "priceFromMargin",
      "label": "Price needed for your target margin",
      "format": "currency",
      "hint": null,
      "primary": false
    },
    {
      "id": "markupNeeded",
      "label": "Markup that requires",
      "format": "percent",
      "hint": null,
      "primary": false
    },
    {
      "id": "profit",
      "label": "Profit per unit",
      "format": "currency",
      "hint": null,
      "primary": false
    }
  ],
  "worked_example": {
    "inputs": [
      "Unit cost: 40 $",
      "Target markup: 60 %",
      "Or target margin: 45 %"
    ],
    "outputs": [
      "Price at your markup: $64.00",
      "Margin that produces: 37.50%",
      "Price needed for your target margin: $72.73",
      "Markup that requires: 81.8%",
      "Profit per unit: $24.00"
    ]
  },
  "how_to": {
    "title": "How to use this",
    "steps": [
      "Enter unit cost ($).",
      "Enter target markup (%).",
      "Enter or target margin (%).",
      "Read your price at your markup 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": {
        "cost": 24,
        "markup": 36,
        "targetMargin": 27
      }
    },
    {
      "name": "Typical",
      "description": "Defaults — the most common real-world setup.",
      "values": {
        "cost": 40,
        "markup": 60,
        "targetMargin": 45
      }
    },
    {
      "name": "Ambitious",
      "description": "Higher-end numbers — what if things really pop?",
      "values": {
        "cost": 64,
        "markup": 96,
        "targetMargin": 72
      }
    }
  ],
  "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": "How does the markup calculator work?",
      "a": "Markup is measured against cost; margin is measured against price. A 50% markup is only a 33% margin — price from the margin you need, not the markup that sounds right. The underlying maths is: Price = Cost × (1 + Markup). Price from margin = Cost ÷ (1 − Margin)."
    },
    {
      "q": "What do I need to enter?",
      "a": "3 values: unit cost, target markup, and or target margin. Each field starts with a sensible default, so you can change one number at a time and watch the result move."
    },
    {
      "q": "What does the price at your markup result mean?",
      "a": "It is returned as a money amount in US dollars and updates live as you edit the inputs, so you can compare two or three versions of a scenario in a few seconds."
    },
    {
      "q": "Is this calculator free, and do I need an account?",
      "a": "Yes, it's free, and no account is required. Nothing you type is stored on our servers — the maths runs entirely in your browser."
    },
    {
      "q": "How accurate is the result?",
      "a": "It applies the standard formula exactly, so the arithmetic is precise. Results are estimates before tax, fees, and inflation unless an input explicitly covers them."
    },
    {
      "q": "Who is this tool for?",
      "a": "It's built for anyone comparing money scenarios before committing — budgeting a payment, sanity-checking a quote, or seeing what a change in rate or term actually costs."
    }
  ],
  "related": [
    "https://www.revenuelab.fyi/toolbox/margin",
    "https://www.revenuelab.fyi/toolbox/break-even",
    "https://www.revenuelab.fyi/toolbox/discount"
  ],
  "license": "CC-BY-4.0",
  "citation": "RevenueLab — Markup Calculator (https://www.revenuelab.fyi/toolbox/markup)"
}