{
  "slug": "ingredient-price-increase-impact",
  "title": "Ingredient Price Increase Impact Calculator",
  "heading": "Ingredient Price Increase Impact Calculator",
  "category": "financial",
  "url": "https://www.revenuelab.fyi/toolbox/ingredient-price-increase-impact",
  "summary": "See how a supplier price hike hits food cost % and what to do about it.",
  "description": "When a key ingredient jumps in price, most operators know it hurts but don't calculate exactly how much until the monthly food cost report lands. This calculator quantifies it immediately: enter the old and new price for an ingredient, how much of it goes into one plate, your current menu price, and how many units you sell per month, and it shows the new food cost percentage, the dollar impact per plate, and the total monthly profit hit if you do nothing. It also calculates the price increase needed to fully offset the hit while holding food cost percentage constant, which is useful ammunition for deciding whether to eat the cost, reformulate the dish, or pass some or all of it to the menu price. A 15% jump in a core protein price that represents 60% of a dish's plate cost is a bigger deal than the same percentage jump in a garnish that's 5% of the plate — this calculator does that math for the specific dish in question.",
  "formula": "New plate cost = old plate cost + (portion qty × price increase). New food cost % = new plate cost ÷ price. Offset price = new plate cost ÷ old food cost %.",
  "dateModified": "2026-09-30",
  "run_url": "https://www.revenuelab.fyi/api/public/calc?tool=ingredient-price-increase-impact",
  "inputs": [
    {
      "id": "oldPrice",
      "label": "Old ingredient price",
      "kind": "number",
      "hint": null,
      "default": 4.5,
      "unit": "$/unit",
      "min": 0,
      "max": null
    },
    {
      "id": "newPrice",
      "label": "New ingredient price",
      "kind": "number",
      "hint": null,
      "default": 5.4,
      "unit": "$/unit",
      "min": 0,
      "max": null
    },
    {
      "id": "portionQty",
      "label": "Portion used per plate",
      "kind": "number",
      "hint": null,
      "default": 1,
      "unit": "units",
      "min": 0,
      "max": null
    },
    {
      "id": "otherPlateCost",
      "label": "Rest of plate cost (unaffected)",
      "kind": "number",
      "hint": null,
      "default": 3.2,
      "unit": "$",
      "min": 0,
      "max": null
    },
    {
      "id": "menuPrice",
      "label": "Menu price",
      "kind": "number",
      "hint": null,
      "default": 18,
      "unit": "$",
      "min": 0.01,
      "max": null
    },
    {
      "id": "unitsMonth",
      "label": "Units sold per month",
      "kind": "number",
      "hint": null,
      "default": 400,
      "unit": null,
      "min": 0,
      "max": null
    }
  ],
  "outputs": [
    {
      "id": "newPct",
      "label": "New food cost %",
      "format": "percent",
      "hint": null,
      "primary": true
    },
    {
      "id": "perPlateHit",
      "label": "Cost increase per plate",
      "format": "currency",
      "hint": null,
      "primary": false
    },
    {
      "id": "monthlyHit",
      "label": "Monthly profit impact if no change",
      "format": "currency",
      "hint": null,
      "primary": false
    },
    {
      "id": "offsetPrice",
      "label": "Price needed to hold food cost % flat",
      "format": "currency",
      "hint": null,
      "primary": false
    }
  ],
  "worked_example": {
    "inputs": [
      "Old ingredient price: 4.5 $/unit",
      "New ingredient price: 5.4 $/unit",
      "Portion used per plate: 1 units",
      "Rest of plate cost (unaffected): 3.2 $",
      "Menu price: 18 $",
      "Units sold per month: 400"
    ],
    "outputs": [
      "New food cost %: 47.8%",
      "Cost increase per plate: $0.90",
      "Monthly profit impact if no change: $360",
      "Price needed to hold food cost % flat: $20.10"
    ]
  },
  "how_to": {
    "title": "How to use this",
    "steps": [
      "Enter old ingredient price ($/unit).",
      "Enter new ingredient price ($/unit).",
      "Enter portion used per plate (units).",
      "Enter rest of plate cost (unaffected) ($).",
      "Enter menu price ($).",
      "Enter units sold per month.",
      "Read your new food 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": {
        "oldPrice": 2.6999999999999997,
        "newPrice": 3.24,
        "portionQty": 0.6,
        "otherPlateCost": 1.92,
        "menuPrice": 10.799999999999999,
        "unitsMonth": 240
      }
    },
    {
      "name": "Typical",
      "description": "Defaults — the most common real-world setup.",
      "values": {
        "oldPrice": 4.5,
        "newPrice": 5.4,
        "portionQty": 1,
        "otherPlateCost": 3.2,
        "menuPrice": 18,
        "unitsMonth": 400
      }
    },
    {
      "name": "Ambitious",
      "description": "Higher-end numbers — what if things really pop?",
      "values": {
        "oldPrice": 7.2,
        "newPrice": 8.64,
        "portionQty": 1.6,
        "otherPlateCost": 5.120000000000001,
        "menuPrice": 28.8,
        "unitsMonth": 640
      }
    }
  ],
  "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": "Should I always raise price to fully offset a cost increase?",
      "a": "Not always — for a high-visibility item like a burger, a full pass-through might hurt volume more than absorbing part of the increase. Many operators split the difference: raise price to offset half the hit and absorb the rest, or offset fully but only after confirming the price increase is durable, not a short-term spike."
    },
    {
      "q": "What if the ingredient is a small part of the dish?",
      "a": "Small-share ingredients rarely justify a menu price change on their own — a 20% jump in a garnish that's 5% of plate cost only moves total food cost by about 1 percentage point. Save price changes for ingredients that are a large share of plate cost, like the primary protein."
    },
    {
      "q": "How do I decide between reformulating and raising price?",
      "a": "Reformulate (smaller portion, cheaper substitute, or recipe redesign) when the price increase looks structural and long-term, like a persistent supply shortage. Raise price when demand for the dish is strong enough that customers won't push back, which you can often only find out by testing."
    },
    {
      "q": "Should I lock in pricing with suppliers to avoid this?",
      "a": "Where possible, yes — many distributors offer 30-90 day price locks or contract pricing on high-volume items. It doesn't eliminate volatility but gives you lead time to adjust the menu instead of absorbing an overnight cost spike."
    }
  ],
  "related": [
    "https://www.revenuelab.fyi/toolbox/food-cost-percentage",
    "https://www.revenuelab.fyi/toolbox/waste-percentage-calculator",
    "https://www.revenuelab.fyi/toolbox/menu-engineering-margin"
  ],
  "license": "CC-BY-4.0",
  "citation": "RevenueLab — Ingredient Price Increase Impact Calculator (https://www.revenuelab.fyi/toolbox/ingredient-price-increase-impact)"
}