Skip to content
ArumSoft Learning
KO
    Excel templateBusiness finance

    Restaurant Prime Cost Calculator for Excel

    Prime cost is food plus labor as a share of sales, and it is the one number that decides whether a restaurant makes money. This workbook takes a weekly inventory count, purchases, sales and payroll, works out COGS and prime cost for every week, flags the weeks that miss your target, and keeps a waste log so you can see which part of the food cost is going in the bin.

    Sheets:
    5
    Works with:
    Excel for Microsoft 365, Excel 2016 or later, Excel for Mac and Excel for the web
    Updated:

    Restaurant Prime Cost Calculator.xlsx

    Excel workbook (.xlsx) · 28 KB · 5 sheets

    Download template

    Free to download. No sign-up needed.

    What you can do with it

    • Weekly food cost %, labor % and prime cost % against the targets you set
    • COGS from beginning inventory + purchases − ending inventory, with the count carried forward automatically
    • A waste log with cost by reason and waste as a share of COGS
    • A 13-week prime cost chart and six data checks
    Start Here sheet of the restaurant prime cost Excel template showing targets, 13-week sales, food cost %, labor %, prime cost %, weeks over target, waste totals and a prime cost by week chart
    The Start Here sheet with the 13 sample weeks that come in the file.

    What's inside

    The workbook has 5 sheets. You only type on a few of them; the rest calculate.

    SheetWhat it's forYou enterCalculated for you
    Start HereTargets and the 13-week summaryTarget food cost % and labor %Prime cost target, period sales, food cost %, labor %, prime cost %, weeks over target, worst week, waste total and share, top waste reason
    WeeklyOne row per week (13)Food and beverage sales, beginning inventory (first week only), purchases, ending inventory, wages, taxes and benefitsTotal sales, COGS, food cost %, labor cost, labor %, prime cost %, gap to target, status
    WasteEvery item thrown away (room for 100)Date, item, category, quantity, unit, unit cost, reasonCost, week starting, cost by reason with share
    ListsDropdownsCategories, reasons, unitsNothing
    ChecksSix data checksNothingOK or Review

    Before you start

    • Decide your targets. Full-service restaurants usually aim for food cost around 28–35% and labor around 25–35%, for a prime cost at or under 60%.
    • Pick one day a week for the inventory count and stick to it; the workbook assumes weeks start on Monday.
    • Have weekly sales from the POS and weekly payroll (gross wages plus employer taxes and benefits) to hand.

    Step-by-step guide

    1. Set the targets

      Start Here B6 and B7. B8 adds them to give the prime cost target that every week is compared against.

    2. Enter the first week's beginning inventory

      Weekly E5 is the only beginning inventory you type. Every later week links to the previous week's ending count, so one count per week is enough.

    3. Fill in each week

      Food sales, beverage sales, purchases, ending inventory, wages, and taxes and benefits. COGS, the percentages and the status calculate. "Close" means within 3 points over target; "Over" means more than that.

    4. Log waste as it happens

      Waste tab: date, item, category, quantity, unit, unit cost and a reason from the dropdown. Cost and the week it belongs to calculate, and the summary on the right totals by reason.

    5. Read Start Here

      Period food cost %, labor % and prime cost %; how many weeks missed the target and which was worst; waste as a share of COGS (under 4% is good) and the reason that costs most.

    6. Check the Checks tab

      It catches weeks that are not consecutive Mondays, an ending inventory larger than beginning plus purchases, negative counts, waste dated outside the period, waste rows without a reason, and a prime cost target above 70%.

    Formula map

    Every formula in the workbook, grouped by the sheet and column it lives in. A column of copied formulas counts once; the range it covers is shown.

    SheetCellsFunctionsWhat it computesReadsFeeds
    WeeklyE6 copied down to row 17arithmeticBeginning inventory carried forwardG5Feeds COGS in column H.
    WeeklyH5 copied down to row 17arithmeticCost of goods soldE5, F5, G5Food cost % divides this by total sales; Start Here B11 sums the column for the period.
    WeeklyI5 copied down to row 18IFFood cost %H5, D5Added to labor % to give prime cost %.
    WeeklyN5 copied down to row 18IFPrime cost %I5, M5Compared with the target in column O and P; charted on Start Here.
    WeeklyP5 copied down to row 17IFStatusN5Conditional formatting colors the three states.
    Start HereB14COUNTIFWeeks over targetB8A quick read on how consistent the period was.
    Start HereB15IFERROR, INDEX, MATCH, MAXWorst week—Tells you where to start looking.
    WasteI5 copied down to row 104IF, WEEKDAYWeek startingA5Lets you compare waste with the Weekly tab week by week (a pivot or SUMIF on this column).
    WasteL5 copied down to row 11IF, SUMIFCost by reason—M5 divides by the total for the share; Start Here B18 names the biggest reason.
    Start HereB17IF, SUMWaste as % of COGSB16Under 4% is good; above 8% needs action.
    ChecksB5IF, AND, WEEKDAY, SUMPRODUCTWeeks are consecutive Mondays—A missed or duplicated week would distort the carried-forward inventory.

    Every formula, explained

    Each formula below is copied straight from the file, so what you read here is exactly what the cell contains. Click any cell in Excel to see it in the formula bar.

    Beginning inventory carried forwardWeekly!E6 · copied down to row 17
    =G5

    Each week starts with what the previous week ended with. Only the first week (E5) is typed.

    Piece by piece

    G5
    Previous week's ending inventory.

    With the sample data: G5 = 10,192 → E6 result 10,192

    How it is used: Feeds COGS in column H.

    How to change it: If you re-count at the start of a week and the number differs, type over the link for that week only.

    Learn this: How to Write Basic Formulas in Excel →
    Cost of goods soldWeekly!H5 · copied down to row 17
    =E5+F5-G5

    What you used this week: what you had, plus what you bought, minus what is left.

    Piece by piece

    E5
    Beginning inventory.
    +F5
    Purchases received this week.
    -G5
    Ending inventory count.

    With the sample data: E5 = 9,800, F5 = 12,534, G5 = 10,192 → H5 result 12,142

    How it is used: Food cost % divides this by total sales; Start Here B11 sums the column for the period.

    How to change it: Nothing to change.

    Learn this: How to Write Basic Formulas in Excel →
    Food cost %Weekly!I5 · copied down to row 18
    =IF(D5=0, "", H5/D5)

    COGS divided by total sales, blank when there are no sales yet so an empty week does not show a divide-by-zero error.

    Piece by piece

    D5=0
    No sales: show nothing.
    H5/D5
    COGS ÷ total sales.

    With the sample data: H5 = 12,142, D5 = 40,600 → I5 result 29.9%

    How it is used: Added to labor % to give prime cost %.

    How to change it: To measure food cost against food sales only (excluding beverages), divide by B5 instead of D5.

    Learn this: How to Use the IF Function in Excel →
    Prime cost %Weekly!N5 · copied down to row 18
    =IF(D5=0, "", I5+M5)

    Food cost % plus labor %. The key number.

    Piece by piece

    D5=0
    No sales: show nothing.
    I5+M5
    Food cost % + labor %.

    With the sample data: I5 = 29.9%, M5 = 31.1% → N5 result 61.0%

    How it is used: Compared with the target in column O and P; charted on Start Here.

    How to change it: Nothing to change.

    Learn this: How to Write Basic Formulas in Excel →
    StatusWeekly!P5 · copied down to row 17
    =IF(N5="", "", IF(N5<='Start Here'!$B$8,
        "On target", IF(N5<='Start Here'!$B$8+0.03, "Close", "Over")))

    On target when prime cost is at or under the target; Close when it is within three points over; Over beyond that.

    Piece by piece

    N5=""
    No data: show nothing.
    N5<='Start Here'!$B$8
    At or under target.
    N5<='Start Here'!$B$8+0.03
    Within 3 points over.

    With the sample data: N5 = 61.0% → P5 result Close

    How it is used: Conditional formatting colors the three states.

    How to change it: Change 0.03 to widen or narrow the Close band.

    Learn this: How to Use the IF Function in Excel →
    Weeks over targetStart Here!B14
    =COUNTIF(Weekly!$N$5:$N$17, ">"&B8)

    Counts weeks whose prime cost % is above the target. The comparison is built as text: ">" joined to the target value.

    Piece by piece

    Weekly!$N$5:$N$17
    Prime cost % for every week.
    ">"&B8
    The criterion: greater than the target.

    With the sample data: B8 = 60.0% → B14 result 6

    How it is used: A quick read on how consistent the period was.

    How to change it: Nothing to change.

    Learn this: How to Use COUNTIF and COUNTIFS in Excel →
    Worst weekStart Here!B15
    =IFERROR(INDEX(Weekly!$A$5:$A$17,
             MATCH(MAX(Weekly!$N$5:$N$17), Weekly!$N$5:$N$17, 0)),
             "")

    Finds the highest prime cost % and returns the week-starting date on that row.

    Piece by piece

    MAX(Weekly!$N$5:$N$17)
    The highest prime cost %.
    MATCH(…, Weekly!$N$5:$N$17, 0)
    Which row it is on.
    INDEX(Weekly!$A$5:$A$17, …)
    The date on that row.
    IFERROR(…, "")
    Blank until there is data.

    With the sample data: B15 result Oct 19, 2026

    How it is used: Tells you where to start looking.

    How to change it: Nothing to change.

    Learn this: How to Use INDEX and MATCH in Excel →
    Week startingWaste!I5 · copied down to row 104
    =IF(A5="", "", A5-WEEKDAY(A5, 2)+1)

    Converts any date to the Monday of its week. WEEKDAY with return type 2 gives Monday = 1 … Sunday = 7, so subtracting it and adding 1 lands on Monday.

    Piece by piece

    A5
    The waste date.
    WEEKDAY(A5, 2)
    1 for Monday through 7 for Sunday.
    A5-…+1
    Back to Monday.

    With the sample data: A5 = Aug 3, 2026 → I5 result Aug 3, 2026

    How it is used: Lets you compare waste with the Weekly tab week by week (a pivot or SUMIF on this column).

    How to change it: For weeks starting Sunday, use A5-WEEKDAY(A5,1)+1.

    Learn this: Text and Date Functions in Excel →
    Cost by reasonWaste!L5 · copied down to row 11
    =IF(K5="", "", SUMIF($G$5:$G$104, K5, $H$5:$H$104))

    Adds the cost of every waste row whose reason matches the label in column K, which is pulled from the Lists tab.

    Piece by piece

    $G$5:$G$104
    Reason column.
    K5
    The reason to match.
    $H$5:$H$104
    Costs to add.

    With the sample data: L5 result 1,506.2

    How it is used: M5 divides by the total for the share; Start Here B18 names the biggest reason.

    How to change it: Nothing to change; add reasons on the Lists tab.

    Learn this: How to Use SUMIF and SUMIFS in Excel →
    Waste as % of COGSStart Here!B17
    =IF(SUM(Weekly!$H$5:$H$17)=0, 0, B16/SUM(Weekly!$H$5:$H$17))

    Total logged waste divided by total COGS for the period.

    Piece by piece

    SUM(Weekly!$H$5:$H$17)=0
    No COGS yet: show 0.
    B16/SUM(Weekly!$H$5:$H$17)
    Waste ÷ COGS.

    With the sample data: B16 = 3,302.5 → B17 result 1.8%

    How it is used: Under 4% is good; above 8% needs action.

    How to change it: Nothing to change.

    Learn this: How to Use the IF Function in Excel →
    Weeks are consecutive MondaysChecks!B5
    =IF(AND(WEEKDAY(Weekly!$A$5, 2)=1,
        SUMPRODUCT(--(Weekly!$A$6:$A$17-Weekly!$A$5:$A$16<>7))=0),
        "OK", "Review")

    Checks that the first date is a Monday and that every later date is exactly 7 days after the one before.

    Piece by piece

    WEEKDAY(Weekly!$A$5, 2)=1
    First week starts on a Monday.
    Weekly!$A$6:$A$17-Weekly!$A$5:$A$16<>7
    TRUE for any gap that is not 7 days.
    SUMPRODUCT(--(…))=0
    No such gaps.

    With the sample data: B5 result OK

    How it is used: A missed or duplicated week would distort the carried-forward inventory.

    How to change it: Nothing to change.

    Learn this: How to Use SUMIF and SUMIFS in Excel →

    Tips and limits

    • Capacity: 13 weeks on the Weekly tab, 100 waste rows. For a new quarter, save a copy, type the new first-week beginning inventory in E5 (last quarter's final count), and clear the rest.
    • Count inventory at the same time every week, before deliveries. A count taken after a delivery inflates ending inventory and understates COGS.
    • Include employer payroll taxes and benefits in labor, not just wages; leaving them out understates prime cost by several points.
    • The chart on Start Here plots prime cost % by week. Add a second series pointing at Start Here B8 if you want the target drawn as a line.
    • Waste as a share of COGS is only as good as the log. Make it a closing task for the kitchen lead, not an afterthought.

    Learn the skills behind this template

    Was this guide helpful? Spot a mistake? Send feedback · admin@arumsoft.com