Food Truck Food Cost: Use ChatGPT Before Paying for Software

Coding Liquids tutorial cover featuring Sagnik Bhattacharya for Food Truck Food Cost: Use ChatGPT Before Paying for Software.
Coding Liquids tutorial cover featuring Sagnik Bhattacharya for Food Truck Food Cost: Use ChatGPT Before Paying for Software.

List every ingredient with its pack price and pack size, convert each to a cost per usable gram or piece, multiply by what goes into one portion, add packaging, then divide by your target food cost percentage to get the menu price. ChatGPT can set up the sheet and the conversions; the spreadsheet should do every sum.

A truck with eight to twelve menu items rarely needs costing software on day one. A feature list can't show you your own numbers, and your own numbers are where costing goes wrong: an ingredient's true cost can run a third or more above its pack price once trim and drained weight are counted. Build the sheet first. It tells you what to ask a paid tool to do better, and it keeps working if you never buy one.

Follow me on Instagram@sagnikteaches

The ingredient sheet: one row for everything you buy

Open a spreadsheet and name the first tab Ingredients. Each row is something you buy, with columns for the pack, the pack price, the usable yield and the cost per usable unit. Only the pack price and the yield are typed. The last column is a formula: pack price divided by the usable quantity, which is the pack quantity times the yield. The 14 rows below are illustrative prices for a burger-and-wraps truck, and the burger in the next section is built from them.

Connect on LinkedInSagnik Bhattacharya
Ingredient Pack bought Pack price Usable yield Cost per usable unit
Brioche bun 24 buns $14.88 100% $0.62 each
Beef patty, 150 g case of 40 (6 kg) $66.00 100% $1.65 each
Cheese slice 120 slices $26.40 100% $0.22 each
Lettuce 5 kg case $18.00 75% $4.80 per kg
Tomato 6 kg case $19.20 90% $3.56 per kg
Pickle slices 3 kg tub $16.50 70% $7.86 per kg
Red onion 10 kg bag $13.00 88% $1.48 per kg
Burger sauce 1 kg batch, made in-house $4.10 100% $4.10 per kg
Butter 1 kg block $8.00 100% $8.00 per kg
Frozen fries 10 kg case $23.00 100% $2.30 per kg
Tortilla wrap pack of 12 $6.60 100% $0.55 each
Chicken thigh 10 kg case $95.00 90% $10.56 per kg
Slaw mix 5 kg bag $9.50 90% $2.11 per kg
Canned drink case of 24 $10.08 100% $0.42 each

Typing these from supplier invoices is the dull part, and it is where ChatGPT saves time. Paste the invoice lines (or upload a photo or PDF of the invoice) and ask for a table, with an instruction to flag anything unclear instead of guessing.

Subscribe on YouTube@sagnikteaches
Below are lines from a supplier invoice, copied as text. Return a table with one row per ingredient: ingredient, pack description, pack quantity in grams or pieces, pack price, and cost per kilogram or per piece to three decimal places.
If a pack size or a price is unclear, write "check" in that cell instead of guessing, and add a short note saying why.
Lines:
BUN BRIOCHE 24CT      1 x 14.88
PATTY BEEF 150G 40/CS 1 x 66.00
LETT ICEBERG 5KG      1 x 18.00
PICKLE SLC 3KG TUB    2 x 16.50
CHICKEN THIGH BL 10KG 1 x 95.00

A reply (illustrative) looks like this. The useful part is the row it refused to guess.

Ingredient Pack Pack price Cost per kg or piece Flag
Brioche bun 24 pieces $14.88 $0.620 each
Beef patty, 150 g 40 pieces (6 kg) $66.00 $1.650 each, $11.000 per kg
Iceberg lettuce 5 kg $18.00 $3.600 per kg Trim loss isn’t on the invoice
Pickle slices 3 kg tub check check The line says “2 x 16.50”: is $16.50 the price of each tub or of both?
Chicken thigh, boneless 10 kg $95.00 $9.500 per kg Trim loss isn’t on the invoice

The pickle line is the kind of trap a human typing quickly walks straight into: "2 x 16.50" could mean two tubs at $16.50 each or $16.50 for both. Look at the invoice total, settle it, and only then let the number into the sheet. The two yield flags matter too, because no invoice tells you how much of a case of lettuce ends up on a plate.

One burger, costed ingredient by ingredient

The Recipes tab has one block per menu item: the ingredient, how much goes in one portion, its cost per usable unit pulled from the Ingredients tab, and the cost. For a cheeseburger with a 150 g patty, one slice of cheese and a handful of salad, the block looks like this.

Ingredient In one burger Cost per usable unit Cost
Brioche bun 1 $0.62 each $0.620
Beef patty, 150 g 1 $1.65 each $1.650
Cheese slice 1 $0.22 each $0.220
Lettuce 20 g $4.80 per kg $0.096
Tomato 30 g $3.56 per kg $0.107
Pickle slices 15 g $7.86 per kg $0.118
Red onion 20 g $1.48 per kg $0.030
Burger sauce 25 g $4.10 per kg $0.102
Butter 5 g $8.00 per kg $0.040
Food cost $2.983
Burger box and napkin $0.18 + $0.02 $0.200
Cost of one burger $3.183
Menu price at a 30% target $3.183 ÷ 0.30 $10.61
Price you set Next price point up $10.75
Food cost at $10.75 $3.183 ÷ $10.75 29.6%

Three formulas do all the work, and none needs ChatGPT once they are in place.

Cost per usable unit:  =PackPrice/(PackQuantity*Yield)
Line cost:             =Amount*CostPerUnit      (divide grams by 1000 if the unit cost is per kg)
Menu price at target:  =CostOfPortion/TargetPercentage

The burger costs $3.18 to make, of which 20 cents is the box and napkin. Packaging is easy to forget, because it comes from a different supplier and never appears on the food invoices. At a 30% target the formula gives $10.61, and the next price point up is $10.75, which lands the real food cost at 29.6%. If you wonder where 30% came from: Dummies' food truck pricing guide says most food service businesses target between 20 and 40%, and gives the same divide-by-the-target formula. Treat 30% as a starting assumption you test, not a law.

For a fuller walk-through of building the sheet itself in a restaurant kitchen, a recipe costing spreadsheet built with ChatGPT covers the layout in more detail. The truck version differs in three ways: the menu is short, many ingredients are shared between items, and packaging is a real share of the cost. If the formulas themselves are the sticking point, how to use ChatGPT to write Excel formulas has worked examples.

Trim, drained weight and why the pack price misleads

The unit costs above divide by yield, which is the share of what you buy that reaches a plate. A case of lettuce loses its outer leaves and cores, a tub of pickles is part brine, and a case of chicken thighs loses fat and gristle. Pricing from the pack weight alone understates the real cost, as these three rows show.

Ingredient Usable yield Pack price per kg Per usable kg Portion Naive cost True cost True cost is higher by
Lettuce 75% $3.60 per kg $4.80 per kg 20 g $0.072 $0.096 +33%
Pickle slices 70% $5.50 per kg $7.86 per kg 15 g $0.082 $0.118 +43%
Chicken thigh 90% $9.50 per kg $10.56 per kg 140 g $1.330 $1.478 +11%

Lettuce and pickles are tiny amounts, so the effect on the burger is small: leaving yield out of its four fresh ingredients understates the burger by about 7 cents, or 2.3%. Chicken is the one that bites, because the portion is large and the yield loss is real: the wrap would be about 15 cents cheaper on paper than in the bin. Multiply that by every wrap sold in a month and it is the difference between a menu that looks healthy and one that is.

Measure yield instead of copying it from a chart. Weigh a case, prep it exactly as you would for service, then weigh what you would put on plates. Divide the second weight by the first. Do it once per ingredient and again when you change supplier or cut. Keep a short note on the row about when you measured it, because yield drifts with a new knife or a new cook.

From cost to menu price: the target is a ceiling, not the price

Run the same block for every item and the menu tab fills itself. The column that matters is the last one: what is left from each portion after the food and packaging are paid for.

Item Cost per portion Price at a 30% target Price you set Food cost at that price Left per portion
Cheeseburger $3.18 $10.61 $10.75 29.6% $7.57
Chicken wrap $2.56 $8.52 $9.50 26.9% $6.94
Fries $0.63 $2.11 $4.50 14.1% $3.87
Loaded fries $1.26 $4.21 $7.50 16.8% $6.24
Can of drink $0.42 $1.40 $2.50 16.8% $2.08

Read the price columns as a floor and a decision. The "price at a 30% target" column is the lowest price that keeps that item at or under your ceiling. The burger and the wrap sit close to it, so their prices are doing real work. Fries, loaded fries and drinks are priced far above their floor. Pricing a $0.63 portion of fries at $2.11 because a formula says so would be a mistake when customers will pay $4.50, and that extra margin helps to pay for the burger's thin one. So set each price by what the customer will pay, check it clears the floor, and then check the blended percentage across everything you sell, which is what the weekly figures below do.

The price also has to survive card fees, fuel and the cost of the pitch, none of which are in a food cost sheet. Those belong in pricing a food truck menu after fees, fuel and pitch costs. Once prices are set, menu engineering with AI shows which dishes to promote, reprice or drop using the margin per portion from this table.

Let ChatGPT hunt for what the sheet forgot

Having built the sheet, hand it to ChatGPT with a different job: find holes. Paste the Recipes tab as text and ask for omissions, not rewrites.

Here is my food cost sheet for a food truck selling cheeseburgers, chicken wraps, fries, loaded fries and canned drinks, as tab-separated text. List only problems, in this order: (1) costs a truck normally has that are missing, (2) places where one unit is used for two things (grams in one row, kilograms in another), (3) numbers that look implausible for the item, (4) any ingredient used in a recipe but absent from the Ingredients tab.
Do not change any figure and do not suggest prices.

A useful reply (illustrative) has four items. Frying oil, topped up between services, has no ingredient row, only 8 cents per portion typed in by hand, so note where that number came from. The burger sauce is priced at $4.10 a kilogram but has no recipe of its own, so a change in mayonnaise cost would never reach the burger. The drinks have no ice line for the days they are served from a cooler. And the loaded fries recipe uses 220 g of fries while the side uses 180 g, which is intended but deserves a note so nobody "corrects" it. Each takes a minute to fix. The sauce one is the most valuable: give it its own mini-recipe, so the burger and the wrap both inherit its price.

Beef up 12%: what one invoice does to the menu

The payoff of a sheet is how fast it answers "what if". Suppose the next invoice shows beef up 12%. Change one cell, the pack price of the patties, and everything downstream moves: a patty that cost $1.65 now costs $1.85, which is $0.20 more. The burger rises from $3.18 to $3.38. At the current $10.75 price its food cost climbs from 29.6% to 31.4%, above the 30% ceiling. Holding 30% would need $11.27, so the next price point up, $11.50, brings it back to 29.4%.

Two more numbers make the decision concrete. At 310 burgers a week the beef rise costs about $61 a week if you change nothing. And a 75 cent price rise only pays if the volume holds; the sheet can't tell you that, so watch the burger count for two weeks after the change. If it falls sharply, the better answer may be a smaller patty or a cheaper cut, and that is a conversation with your customers' appetite, not a spreadsheet.

A fifteen-minute Monday routine for keeping prices current

A costed menu that isn't refreshed goes stale within weeks, which is why the routine matters more than the template. On the day your main invoices arrive, paste the lines into ChatGPT with last week's Ingredients tab and ask only for changes.

Compare this week's invoice lines with last week's Ingredients table (both pasted below). List every ingredient whose cost per kilogram or per piece changed by more than 5%, with the old cost, the new cost and the percentage change. Then list which menu items use each flagged ingredient. Do not change any prices or recipes, and write "check" for any line you can't match.

A reply (illustrative) flags chicken thigh at $95.00 to $104.50 a case, up 10%, and names the wrap. You type the new price, and the wrap's cost moves by $0.15 to $2.70, so its food cost goes from 26.9% to 28.5%. Nothing else changed by more than 5%, so everything else stays. The whole exercise is ten to fifteen minutes: paste, read the flags, retype two or three numbers, glance at the menu tab. Reprice only if the blended food cost sits above your target for a couple of weeks; chasing every small move trains regulars to expect a changing menu board.

Theoretical against actual: the gap a recipe sheet can't see

The sheet tells you what food should cost. Your invoices and your stock counts tell you what it did cost, and the difference between the two is where money leaks. Theoretical food cost is each item's recipe cost multiplied by the number sold, added up. Actual food cost is opening stock plus purchases minus closing stock. MarketMan's own guide to the gap (August 2026) puts a variance under 2 to 3 points as healthy and 5 or more as worth investigating. The two figures will never match exactly, and a stock count is only trustworthy when it is taken with the truck closed, before prep starts or after the last service.

Here is an illustrative week for the menu above. The sales mix comes from your point-of-sale report, and the recipe costs come from the Recipes tab.

Item Sold Recipe cost each Theoretical cost Sales
Cheeseburger 310 $3.183 $986.73 $3,332.50
Chicken wrap 140 $2.556 $357.84 $1,330.00
Fries 380 $0.634 $240.92 $1,710.00
Loaded fries 120 $1.263 $151.56 $900.00
Can of drink 290 $0.420 $121.80 $725.00
Total $1,858.85 $7,997.50

Theoretical food cost is $1,858.85 on sales of $7,997.50, or 23.2%. It is lower than the 30% ceiling because fries and drinks carry so little cost. Now count stock: $1,240 at the start of the week, $2,205 of purchases, $1,190 left at the end. Actual food cost is $1,240 + $2,205 − $1,190 = $2,255, which is 28.2% of sales. The gap is $396, or 5.0 points, which is just under MarketMan's investigate line.

The recipe sheet can't tell you why. Weighing and logging for one week can, and it rarely closes the gap completely, as this illustrative breakdown shows.

Where the gap came from (illustrative) Evidence Amount
Fries scoops 25 g over the recipe 500 portions × 25 g × $2.30 a kg, after weighing 20 scoops $29
Chicken portions 18 g over 140 wraps × 18 g × $10.56 a kg, after weighing 20 portions $27
Waste nobody logged on a wet Thursday Buns, slaw and cooked chicken in the bin $120
Staff meals rung up as nothing About 15 meals at roughly $3.50 of food each $52
Still unexplained Counting error, theft or another leak; keep watching $168
Total gap $396

Two of those rows are portion control, fixed with a scoop that holds 180 g instead of "about a scoop". One is waste, fixed by writing it down at close. One is staff meals, fixed by ringing them up at cost. The $168 left over is the honest part: some of it will always be counting error, and the aim is to watch the trend, not to reach zero. If you want a quicker way to count, building tomorrow's prep list from yesterday's sales uses the same recipe sheet to turn sales into ingredient quantities.

What costing software adds, and the sum that decides

Everything above works in a spreadsheet. Costing software earns its fee by doing three jobs for you: reading invoices into ingredient prices, repricing every recipe when a price changes, and producing the actual-versus-theoretical report from your sales and counts. Two of the better-known vendors publish USD prices. At the time of writing, meez's pricing page lists Starter at $19 a month billed annually (unlimited recipes and basic costing on two devices), Pro at $89 (adds inventory management) and Premium at $179 (adds invoice processing and a costing feed), with a 14-day trial. MarketMan's pricing page lists Starter at $249 a month with real-time recipe costing, actual-versus-theoretical reporting, waste logging and 50 AI-read invoice scans a month. Prices change, so confirm both.

The sum that decides is what one percentage point of food cost is worth to you. A truck selling about $8,000 a week sells about $34,667 a month, so one point of food cost is about $347 a month. A tool has to move your food cost by at least its price divided by that figure, or save you that much time, to pay for itself.

Option Monthly price Food cost must fall by What it includes
A sheet plus ChatGPT $0 – Free to about $20 a month if you want a paid ChatGPT plan; about 15 minutes a week of your time
meez Starter $19 0.05 points Billed annually; unlimited recipes, basic costing, 2 devices
meez Pro $89 0.26 points Billed annually; adds inventory management
meez Premium $179 0.52 points Billed annually; adds invoice processing and a costing feed
MarketMan Starter $249 0.72 points Real-time costing, actual-versus-theoretical reporting, waste logging, 50 AI invoice scans a month

The cheap tools clear the bar easily on paper, which is why the real question is whether you will use the features. MarketMan Starter needs your food cost to fall by about 0.7 of a point, which is realistic if its actual-versus-theoretical report finds a leak like the one above, and unlikely if you never open the report. A tool also can't fix portioning for you.

Here is a rule I'd use. Stay on the sheet while you have a short menu, one supplier invoice a week and no more than about fifteen minutes of weekly upkeep. Start a free trial when prices move faster than you can retype them, when invoices arrive in volume, or when you want the weekly gap report without building it. During the trial, load the same burger and compare its cost with your sheet's $3.18; if the tool disagrees, find out why before you trust it. For a wider look at which point-of-sale features are worth paying for, see food truck POS features that pay off.

Food truck costing: what owners ask next

What food cost percentage should a food truck aim for?

Published guides commonly describe 20 to 40% as the range most food businesses target, with the middle of that band the usual starting point. Your own figure depends on labour, pitch fees and card fees, so set a target, cost every item, and check the blended percentage across what you actually sell rather than pricing each item to the same number.

Can ChatGPT read supplier invoices for me?

It can turn pasted invoice text, or a photo or PDF you upload, into a table of pack sizes and prices. Treat the result as a draft: abbreviations and lines such as 2 x 16.50 are easy to misread, and trim loss isn't on any invoice. Check each row against the paper before the numbers enter your sheet.

How often should I update ingredient prices?

Weekly is enough for most trucks, done on the day your main invoices arrive. Flag any ingredient that moved by more than about 5%, see which menu items it touches, and reprice only when the blended food cost drifts above your target for more than a couple of weeks.

Do I need costing software if I only have eight menu items?

Probably not at first. A short menu with a weekly sheet update takes minutes. Software starts to earn its fee when prices change faster than you can retype them, when invoices arrive in volume, or when you want actual-versus-theoretical reports without building them by hand.

Further reads

Sources: Dummies' 'Menu Pricing Methods for Your Food Truck Business' (target range and price formula); MarketMan's 'Actual vs. Theoretical Food Cost: How to Find the Variance' (26 August 2026); the meez and MarketMan pricing pages, read in October 2026. All ingredient prices, portions and weekly figures are invented for illustration.

Want your costed menu checked before you reprice?

On a 1:1 call we can go through your ingredient sheet, spot the lines that are missing or out of date, and decide whether a paid costing tool would save you real time.

Book a 1:1 call with me