Microgreens Business Plan: Tray Costs, Restaurant Orders and Waste With AI

Coding Liquids tutorial cover featuring Sagnik Bhattacharya for Microgreens Business Plan: Tray Costs, Restaurant Orders and Waste With AI.
Coding Liquids tutorial cover featuring Sagnik Bhattacharya for Microgreens Business Plan: Tray Costs, Restaurant Orders and Waste With AI.

A microgreens business plan needs five numbers: cost per tray, yield per tray, price per 100g, the trays a month you must sell to cover fixed costs, and waste. With illustrative figures of $7.32 a tray, 350g yield and $4.50 per 100g, a grower breaks even at roughly 16 trays a week after waste.

Those figures are placeholders, not benchmarks, and the plan only means something once you replace each with a quote, a weighed harvest or a buyer's answer. AI helps in three places: building the sheet, catching the numbers that look wrong, and turning a week of restaurant messages into a standing order schedule. It does not know your seed price.

Follow me on Instagram@sagnikteaches

Cost per tray, line by line

Start with one tray of one crop, say pea shoots in a standard 1020 tray, and cost everything it consumes. Variable costs scale with every tray you sow, so they decide your margin. The table uses invented round figures for illustration, so swap in your own.

Connect on LinkedInSagnik Bhattacharya
Cost linePer trayHow to find your real figure
Seed$1.80Seed price per kilo divided by grams sown per tray
Growing medium or mat$0.70Bag price divided by trays filled from it
Tray wear$0.05Tray price divided by the uses you expect
Electricity (lights, fans, heat)$0.35Kilowatt-hours used per week times your tariff, divided by trays
Water$0.05Metered use, or a small flat allowance
Packaging for the yield$0.77Cost of a punnet or bag times the packs a tray fills
Labour: 12 minutes at $18 an hour$3.60Time yourself across sow, water, harvest, pack
Total variable cost$7.32

With a 350g yield that is $2.09 a 100g. A common mistake is to leave out labour because you are the labour. A plan that treats your time as free looks profitable until you hire help or want a wage. Keep the row in, at a rate you would accept, and you can always set it to zero for a "cash" view.

Subscribe on YouTube@sagnikteaches

Yield and price per 100g

Yield is grams harvested per tray, and it varies by crop, season, tray density and your skill. Weigh the first ten trays of each crop and record them in a sheet: sowing date, harvest date, weight. Your plan figure is the average of those, not the best tray. Hold off from buying more shelving until you have two or three weeks of weights.

Price per 100g follows from cost plus margin and the buyer's patience. At $2.09 cost, a $4.50 price gives $2.41 of gross profit per 100g, a margin of 53.5% before waste and fixed costs. Ask three or four likely buyers what they pay now for similar produce, in what pack size and how often. A chef buying 100g clamshells weekly has a different price in mind than a market stall customer.

One tray at $4.50 per 100g and a 350g yield earns $15.75 if it all sells. It will not all sell, which is where waste comes in.

The Complete Excel Course with AI Integration thumbnail

The Complete Excel Course with AI Integration

From formulas and pivot tables to Power Query, DAX, VBA and AI with Copilot, ChatGPT and Claude — hands-on from the first lesson.

By Sagnik Bhattacharya and Virginia Thorn, Primetime Emmy Award winner

Buy now

Waste changes the sum more than seed does

Waste has several forms: trays that fail to germinate, trays lost to mould, trays that over-grow before the buyer wants them, and harvested produce that is not sold before it wilts. Each is recorded differently, and each has a different cure, so log them separately.

Waste log - one row per tray or batch lost
Date | Crop | Tray ID | Stage lost (sow/germ/grow/harvest/unsold) |
Grams lost | Cause (mould, dry, over-grown, no order) | Cost sunk ($) | Fix tried

Suppose the log shows 12% of harvestable weight goes unsold. Then 88% of the 350g, 308g, earns revenue: $13.86 a tray. You still pay the seed, the medium and the labour, but you save a little packaging on the unsold part, so the cost falls to about $7.23. Profit per tray is $13.86 minus $7.23, which is $6.63, against $8.43 with no waste. That 21% fall in profit from a 12% loss is the pattern to expect, because the cost of a wasted tray is already sunk.

Fixed monthly costs, illustrative: space $300, shelving and light depreciation $40, insurance $30, phone $40, software $20, delivery vehicle share $20, total $450. Break-even trays are $450 divided by $6.63, about 68 trays a month, or 16 a week. At 350g that is 5,600g harvested a week, 4,928g sold. In 100g packs that is about 49 packs a week. That number should be in your plan in bold, because it tells you what you must sign up before you scale.

Restaurant standing orders: the model that makes planning possible

A standing order is a fixed weekly quantity that a restaurant agrees to take, which lets you sow to order rather than to hope. Build the model as a table of customers, products, packs a week and the sowing day that results.

BuyerCrop and packPacks a weekGramsDelivery day
Restaurant APea shoots, 100g101,000Tuesday and Friday
Restaurant BMixed, 50g16800Tuesday
Cafe CSunflower, 100g6600Friday
Bistro DRadish, 50g12600Friday
Hotel kitchen EPea shoots, 100g121,200Tuesday and Friday
Shop FMixed, 50g10500Friday

That is 4,700g a week from six buyers. Divide by the yield per crop, and add a buffer for waste: pea shoots 2,200g at 350g is 6.3 trays, plus 15% is 7.2, so sow 8. Do the same for each crop, and you have the weekly sowing plan. Compare the total with the break-even in the previous section: 4,700g sold is a little under the 4,928g break-even, so this book of business loses a little and needs one or two more buyers. It is far better to learn that on paper.

Check the sowing lead time for each crop from your own trials, and sow on the day that makes the harvest land on the delivery morning. Varieties differ, and many are ready in one to two weeks, but yours may not be, so use your recorded times and not a chart.

Using AI to build and check the sheet

Ask an AI assistant to build the structure, then do the maths yourself on a second pass. This prompt works with ChatGPT, Claude or Gemini and can feed a spreadsheet. Fill in the brackets with real figures.

I run a small microgreens business. Build me a costing sheet for one
crop in a 1020 tray with these inputs: seed [grams per tray] at [price per kg],
medium [cost per tray], electricity [kWh per tray] at [price per kWh],
packaging [cost per pack], labour [minutes per tray] at [hourly rate],
yield [grams per tray], price [per 100g], waste [percentage].
Show every formula as a spreadsheet formula I can paste into Excel.
Then list any input that looks unusually low or high compared with typical
small-scale growers, and say what to check. Do not invent any input.

An illustrative reply would give a row-per-line layout with formulas such as seed cost equals seed grams divided by 1,000, times price per kilo, and a short list of flags: "Labour of 4 minutes a tray is low for sow, water, harvest and pack; check by timing a full cycle", and "electricity per tray is hard to attribute if lights are shared; consider dividing the weekly meter reading by trays". The flags are the valuable part. The formulas you can check by entering your own sample row and comparing with the table above.

A second use is the standing-order schedule. Paste a week of restaurant text messages and ask for a table of buyer, crop, quantity, delivery day, with unclear lines marked. A third message might read "can I swap half my sunflower for radish this week?" and the AI should list it as a change request on that buyer's row and not apply it silently. For more on turning farm messages into records, the tutorial on AI pre-orders for market vendors covers the same habit. If you want to see how a similar indoor crop handles batch records, read the mushroom farm batch records tutorial.

Three crops side by side

A single blended figure hides the crops that earn and the crops that do not. Cost each one on its own. These illustrative figures show how far apart three common crops can sit; your seed prices, yields and buyer prices will differ.

Crop (illustrative)Variable cost a trayYield (g)Price per 100gProfit a tray, no waste
Pea shoots$7.32350$4.50$8.43
Sunflower$6.40300$4.00$5.60
Radish$8.10250$6.50$8.15

Radish has the highest price and the lowest yield, so its profit looks fine but it uses a tray slot for a smaller harvest. If shelf space is your limit rather than money, rank crops by profit per tray per week of shelf time, not by margin. A crop that takes ten days and earns $8 beats one that takes fourteen days and earns $9 once you divide by shelf time. Add a column for days on the shelf and let the sheet compute profit per tray-day.

What if the price, the waste or the yield is wrong?

A plan is a guess with arithmetic. Test how fragile it is by changing one input at a time and seeing what happens to the break-even trays. Using the base case above (68 trays a month):

ChangeProfit per sold trayBreak-even trays a month
Base case$6.6368
Price falls to $4.00 per 100g$5.0988
Price rises to $5.00 per 100g$8.1755
Waste rises to 20%$5.4383
Yield is 300g, not 350g$4.6597
Labour drops to 9 minutes a tray$7.5360

Yield is the most dangerous input here: a 14% shortfall in grams per tray pushes break-even from 68 to 97 trays, because it hits revenue without reducing most costs. Price is next. Labour speed matters least in cash terms but most in how many trays one person can run. When you test your own plan, the input that moves the answer most is where your first month of effort should go, whether that is weighing yields, negotiating price or fixing mould.

Ask an AI assistant to produce a table like this from your sheet, then check one row by hand. A prompt as simple as "Take this costing sheet and show break-even trays if each of price, waste, yield and labour minutes moves 10% either way, one at a time" works, and the answer is only trustworthy once you confirm a single row against your own calculation.

Pricing ladder for different pack sizes

Different buyers want different quantities, and small packs cost more per gram to pack and deliver. A pricing ladder keeps the margin steady across sizes. Illustrative, with the $4.50 per 100g base:

  • 50g punnet for a restaurant garnish: $2.60, which is $5.20 per 100g, to cover the extra packaging per gram.
  • 100g clamshell: $4.50, the base price.
  • 250g bag for a kitchen that uses it by the handful: $10.00, $4.00 per 100g.
  • 1kg bulk for a high-volume buyer: $36, $3.60 per 100g, which still clears your $2.09 cost but only if the waste on that buyer is low.

Check the bottom rung against your cost with waste included: $7.23 spread over the 308g you actually sell is about $2.35 per 100g at 12% waste. A price below that is a loss on that order whatever the volume. State the ladder in one short message to each buyer, with a minimum weekly order and a notice period for changes. A restaurant that can add or drop 30% each week without notice makes a standing order meaningless, so put the notice period in writing, say 48 hours before the sowing day.

A message to a restaurant that sets out the terms

Many standing orders fail for lack of a clear message at the start. Here is an illustrative text you could adapt, and a way to ask AI to tighten it without inflating it.

Hi [first name], thanks for tasting the samples. Here's what I can offer:
pea shoots, 100g packs, $4.50 each, delivered Tuesday and Friday before
10:00. Standing order of 10 packs a week. Changes by 12:00 two days before
delivery, please; after that I'll have sown to the original order and
may have to charge for packs already grown. I invoice weekly. Does that
work for you?

Ask the assistant to shorten it, keep the cut-off time and the charge for late changes, and make it friendly. Read what comes back for any softened terms: AI tools like to turn "I may have to charge" into "no worries if plans change", which removes the thing the message was for.

A weekly routine for the log and the plan

Ten minutes on the same day each week keeps the plan alive. Weigh and record the week's yields, enter the waste log, compare packs sold with the standing orders, and update the sowing plan for the next two weeks. Then ask your AI assistant one question: "Based on this week's log, which input in my costing sheet is now out of date?" It will point at the yield or waste line most of the time, and you will confirm it against the records. A sheet kept this way costs little to maintain, and it will be accurate when you need it for a buyer, a lender or a decision to add shelves.

What to do with trays that will not sell

Unsold produce is the cost the plan most often forgets to manage. When a buyer cancels on a Thursday, the trays are already grown and the clock is running. Decide the routes in advance: a second buyer who takes surplus at a lower price, a market stall or farm-shop slot, a box offer to a few households, or a quick harvest to use as a free sample for a prospect. Record each route's price in the waste log as a salvage value, so that a tray sold at $2.00 per 100g shows as a recovery and not a loss. After a month the log tells you which route works, and whether the real fix is a smaller buffer in the sowing plan. A buffer of one tray in eight usually costs less than a stream of cancelled orders and wilted stock, and the log will show you whether that holds for your buyers.

Three ways a microgreens plan goes wrong

Averaging crops that do not behave alike. A plan built on one blended yield hides the fact that sunflower and radish have different costs, yields and prices. One crop earning $9 a tray and another $2 will average to a figure true of neither. Cost each crop separately and add them up.

Forgetting packaging and delivery time. Clamshells and labels are cheap per pack but add up, and a weekly round to six buyers takes hours. If the van, fuel and an hour or two each delivery day are not in the costs, the margin is overstated. Allocate them per tray or per delivery stop.

Trusting one buyer. A plan where one hotel takes a quarter of the output is a plan with a single point of failure. If that buyer pauses for a refit, your waste log fills. Cap any one buyer at about 25% of weekly volume as a working rule, and build your standing orders to keep to it.

A first-month schedule for the plan

  1. Week 1. Cost each crop with real quotes. Run ten test trays of your main crop and weigh the yields. Start the waste log.
  2. Week 2. Visit or call five prospective buyers with a sample and a price. Record their quantities and delivery days.
  3. Week 3. Draft the standing-order table and the weekly sowing plan. Use AI to check the arithmetic and flag low inputs.
  4. Week 4. Compare the book of business with the break-even number. Decide whether to add buyers, raise the price or cut the cost line that is largest.

Revisit the sheet monthly, with the waste log, and update the yield and waste lines first, since those drift. For the monthly review habit, the monthly margin review for a farm business gives a structure, and the tutorial on drafting a plan for a lender from real records shows how to present your figures if you need funding. Keep the version history of the sheet: a plan that shows how your costs changed after four months is more convincing to a lender or a buyer than one that never moved.

Microgreens plan questions

How many trays does a microgreens business need to break even?

Divide monthly fixed costs by the profit per tray after waste. With $450 of fixed costs and about $6.60 profit per sold tray, that is roughly 68 trays a month, around 16 a week. Your numbers will differ, which is why the sum should use your own costs.

What should I charge per 100g?

Price from your cost per 100g plus the margin you need, then compare with what local restaurants and shops already pay for similar produce. A cost near $2 per 100g in the example below supports a price of about $4.50, but only if buyers will pay it. Ask three buyers before you fix it.

Can I use ChatGPT or Claude to build the costing sheet?

Yes, for structure and checking, not for your numbers. Give it your real costs and ask it to build the sheet, show every formula and flag items that look low. Then check each total yourself, because AI tools make arithmetic slips and may invent a plausible cost you never gave.

How much waste should I plan for?

Plan from your own log, not a rule of thumb. Start by assuming a tenth to a fifth of trays are lost to failed germination, mould, over-growth or unsold stock, then replace the guess with your recorded figure after four weeks.

Further reads

Sources: no vendor pricing is quoted; all costs, yields and prices are illustrative inputs to replace with your own quotes and records.

Want your growing numbers turned into a plan?

On a 1:1 call we'll work through your tray costs, your likely buyers and your waste, and decide where AI can keep the plan updated without you rebuilding it each month.

Book a 1:1 call with me