A food maker's wholesale price list needs seven things: product and pack description, case size, unit and case trade price, a recommended retail price, minimum order, shelf life with lead time, and delivery and payment terms. Set each trade price from your full cost per unit plus a margin target, then check what the retailer earns at your RRP.
The common failure is a list that quotes a price per jar but never says how many jars come in a case, how fresh they will be on arrival or what a small order costs to deliver. AI is useful for the layout, the checking and the cover email. It is not useful for choosing your margin, so the sums stay in a spreadsheet.
The columns a trade buyer expects to see
A buyer at a deli, a farm shop, a café group or a regional grocer compares your sheet with ten others. The ones that get ordered from are the ones that answer every question without a follow-up email. Work through this list, left to right, as the columns of your sheet.
- Product name and variant. The name exactly as it appears on the label, plus flavour or size. If a buyer has to guess whether "Hot Chilli Jam" is the 220 g or the 340 g jar, you will get an email.
- Pack size and unit. Net weight or volume per unit (for example 400 g pouch, 250 ml bottle). Use the same unit style on every row.
- Units per case and case type. "Case of 6" or "outer of 12". If cases are mixed, say so. Buyers order in cases, so the case is the line they will actually type into their system.
- Unit trade price and case trade price. Show both. The case price is the unit price multiplied by the case size, so make the sheet calculate it rather than typing it twice.
- RRP. The price you suggest on the shelf. It lets the buyer see their margin without asking.
- Barcode. The unit barcode number and, if you have one, the case barcode. A shop that scans at the till will ask for it before it can list the product.
- Shelf life. The best-before or use-by period when the product leaves you, and the minimum life remaining at dispatch you will honour.
- Storage. Ambient, chilled or frozen, since it decides which carrier and which delivery slot are possible.
- Allergens. A short column of the major allergens present, with a pointer to the full specification.
- Lead time. Days from order to dispatch, which for a made-to-order product is often the batch cycle rather than a number you can invent.
Terms go below or beside the table, not inside each row. They are the second half of the document, and they are covered in a later section. First the numbers.
Setting a trade price from a cost of $2.40 a unit
Take a small granola maker, an illustrative business with one 400 g pouch. The first job is the full cost of one pouch, not only the ingredients. Using made-up but realistic figures:
| Cost line | Per pouch | Where the number comes from |
|---|---|---|
| Ingredients (oats, nuts, seeds, syrup) | $1.15 | Last supplier invoices divided by pouches yielded per batch |
| Pouch, label and outer-case share | $0.38 | Packaging invoice divided by units |
| Labour | $0.55 | Hours per batch times hourly cost, divided by pouches |
| Energy, rent and kitchen overhead share | $0.32 | Monthly overhead divided by monthly output |
| Total cost per pouch | $2.40 | Sum of the four lines |
Now choose the margin. Gross margin means the share of the selling price left after cost. To get a 40% margin, divide cost by (1 minus 0.40): $2.40 ÷ 0.60 = $4.00. That is the unit trade price. Do not multiply by 1.4. A 40% mark-up on cost gives $3.36, which is a margin of only 28.6%, and that mix-up quietly eats a food maker's profit.
Then check the retailer's side. If the shelf price is $7.50 before any sales tax, the retailer pays $4.00 and keeps $3.50, which is 46.7% of the shelf price. Margin targets vary by shop and by category, so ask each buyer what they work to; if a buyer wants about half the shelf price, a $4.00 trade price sits at the edge of workable. If your RRP would need to be $9 to give the retailer the margin they expect, the product is priced for direct sales, not wholesale, and the cost line is where to look.
The case of six comes out at $4.00 × 6 = $24.00. A case of twelve might carry a small break, say 2.5% off, which makes it $46.80, or $3.90 a unit. At that price your margin is ($3.90 − $2.40) ÷ $3.90 = 38.5%. Decide the break in advance and check the margin at every tier, because the cheapest tier is the one that goes wrong.
Using AI on the numbers without trusting it with them
Language models do arithmetic unevenly, so keep calculation in the spreadsheet and use the assistant as a reviewer. Paste in the table and ask it to find rows that break your own rules. That is the job it does well.
Below is my wholesale price list as a table. Rules: trade price = cost / (1 - target margin); target margin is 40% for the core range and 35% for the seasonal range; case price = unit price x units per case; case of 12 has a 2.5% discount on the unit price.
For every row, recompute the trade price and case price from the cost column and tell me where my figure differs by more than 2 cents. Also flag any row where the RRP gives the retailer less than 45% of the RRP. Show only the rows with a problem, in a table. Do not change my numbers.
[paste table]
An illustrative reply might flag two rows: the "Almond and Maple" pouch priced at $4.00 though its cost of $2.75 needs $4.58 for 40%, and the 12-case of "Plain Oat" where the case price had been typed as $45.00 against a calculated $46.80. The first is a real margin leak. The second is a typing slip that gives away $1.80 on every case. Neither is the AI deciding anything. It is applying your rule across a hundred cells faster than you would by eye.

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 nowTerms block: the lines that prevent arguments
These lines go under the table in plain text. Keep each one a single sentence so a buyer can find it.
- Minimum order. State it in cases or in a currency amount, not both. Say 6 cases in any mix, which is $144 at the case price above. A minimum exists because a $60 order with a $15 courier charge loses money, so base yours on that arithmetic.
- Delivery. For example, free on orders of 15 cases or more ($360 at these prices) and a flat $15 below that. Name the carrier type and the days you ship. For chilled goods, say what packaging is used.
- Tax handling. Say whether the prices shown include or exclude any sales or value-added tax. Trade buyers usually expect prices without tax, but write it down, and ask your accountant how it applies to your sales.
- Payment terms. A common pattern is payment up front on a first order and 30 days from invoice afterwards. Say what happens on a late payment, and whether you charge interest.
- Shelf-life promise. "Dispatched with at least 6 months of a 9-month shelf life remaining." A buyer then knows what they are accepting.
- Substitutions and shortages. If you cannot fill a line, do you ship the rest, or call first? Say which.
- Damage and returns. Report damage within a set number of days with a photograph. Food that has left your control is rarely taken back, so say what you do accept.
- Price validity. "Prices valid until [date] or until a revised list is issued." Without this, an old email is a standing offer.
Of these, the shelf-life promise and the price validity line are the two small makers most often leave out, and both prevent disputes. A buyer who receives goods with ten weeks of life left from a nine-month product will remember it.
A filled-in row, and a filled-in terms block
Here is what complete rows look like once the columns above are filled in: two products, one of them sold in two case sizes. The business and figures are illustrative.
| Product | Unit | Case | Unit trade | Case trade | RRP | Shelf life | Allergens |
|---|---|---|---|---|---|---|---|
| Honey Oat Granola | 400 g pouch | 6 | $4.00 | $24.00 | $7.50 | 9 months, 6 left at dispatch | Oats (gluten), almonds |
| Honey Oat Granola | 400 g pouch | 12 | $3.90 | $46.80 | $7.50 | 9 months, 6 left at dispatch | Oats (gluten), almonds |
| Seed and Berry Mix | 250 g pouch | 8 | $3.15 | $25.20 | $5.95 | 12 months, 8 left at dispatch | Sesame, sunflower seed |
The terms block under it, in the voice of a small producer, might read: "Minimum order 6 cases, any mix. Free delivery from 15 cases; otherwise $15 per delivery. First orders are paid before dispatch; after that, invoices are due 30 days from the invoice date. Prices exclude sales tax. Dispatch within 5 working days of order. Report any damage within 48 hours with a photo. Prices valid until the date at the top of this list."
The same sheet for four other kinds of food maker
The columns stay the same but the dangerous cells move depending on what you make.
- A cheesemaker. Cheese is often sold by weight, not by the piece. Add a "price per kg" column and a "typical weight" range so the case price is an estimate. Say plainly that the invoice reflects the actual weight shipped, and mark chilled storage.
- A hot sauce company. Cases of 12 bottles are heavy for their size, so delivery cost per unit is higher than it looks. Include case weight and say whether a pallet price exists for large buyers.
- A bakery supplying cafés. Shelf life is days, not months, and the order is repeated weekly. Replace "shelf life at dispatch" with "order cut-off time" and "delivery days", and consider a standing-order column. The related tutorial on bakery wholesale and standing orders deals with that.
- A frozen dumpling maker. Frozen goods need cold-chain terms: minimum drop size, delivery to a freezer-equipped receiving point, and a clear rule on what happens if a delivery is refused at the door.
Drafting the cover email with AI
The price list should travel with a short email, not alone. A cold attachment is easy to ignore. The email has one job: say who you are, what is attached, what the buyer should do next, and make the first order low-risk.
Write a cover email of 120 to 150 words to accompany my trade price list. I am a small granola maker supplying delis and farm shops. Facts you may use, and no others: minimum order 6 cases any mix; free delivery from 15 cases, otherwise $15; first order paid before dispatch, then 30 days; samples available on request; dispatch within 5 working days.
Tone: plain and friendly, no hype. Start with the reason I am writing. End with one clear next step. Use [first name] and [your name] as placeholders. Do not invent product claims, awards or customer names.
A typical illustrative output reads well but includes two lines you should cut. The first is "our award-winning granola", since you gave it no award. The second is "we're confident you'll see strong sell-through", a promise nobody can make. After editing, you have a note of about 130 words that mentions the minimum order and the sample offer. The instruction "facts you may use, and no others" is what keeps the invention to two lines rather than ten.
Keep the email in a saved prompt so each new buyer gets the same facts. When you later answer buyer questions about the list, the approach in wholesale RFQ response emails uses the same sheet as its source of truth.
Testing the tiers with three buyers
Before the list leaves the building, run three imaginary orders through it. This takes ten minutes and catches most tier problems.
- The smallest allowed order. Six cases of six at $24.00 is $144.00. Cost is 36 pouches × $2.40 = $86.40, so the gross profit is $57.60. A $15 delivery charge on top, paid by the buyer, keeps you whole, but if you ever waive it you lose more than a quarter of that profit.
- A mid-sized order. Fifteen cases of twelve at $46.80 is $702.00 and qualifies for free delivery. If the courier charges you $38, your profit is $702.00 − (180 × $2.40 = $432.00) − $38 = $232.00, a margin of 33% after freight. That is lower than the 38.5% on the sheet, and it is the number to use when you decide how generous the break should be.
- A buyer who asks for a special price. Work out your floor first. At a 30% margin floor, the lowest unit price is $2.40 ÷ 0.70 = $3.43. Anything below that, you say no, politely, and offer a bigger case size instead.
Write the floor price into the master sheet as its own column, hidden from the exported copy. When a buyer pushes back, you will know the answer in seconds rather than guessing on the phone.
Seasonal and limited lines on their own tab
Gift boxes, a Christmas pudding or a summer sauce do not belong on the core list. Their prices may sit on a lower margin because of extra packaging, and their availability has dates. Give them a second tab with two extra columns, "order by" and "available from", and a sentence at the top: "Seasonal lines are made to order and cannot be reordered after the cut-off." A buyer then knows to order once and plan well ahead, and you avoid half-made batches that nobody has paid for.
Checks before you send the list to anyone
- Recompute ten rows by hand. Pick ten at random, from the top, middle and bottom, and redo the unit-to-case multiplication. One transposed digit in a case price is how a loss-making price gets out.
- Check the margin at each tier. Add a hidden column that shows margin per row and conditional-format anything under your floor in red.
- Read it as the buyer. Can they place a first order from this page alone, without writing to you? If not, which question would they ask?
- Verify the allergen column against your specification. Never copy it from an earlier list. Recipes change.
- Save as PDF for sending, keep the sheet as the master. The PDF makes it harder for anyone to edit a price, and the version date on the filename lets you reconstruct who had which list.
- Look at the properties. Spreadsheets can carry the name of the previous author, cost columns hidden but not deleted, or comments. Export a clean copy so your cost column does not travel with the price list.
A cost column left in the file
An illustrative mistake: a small chutney maker built a price list in a spreadsheet with a cost column and a margin column, hid both and emailed the file itself. The buyer unhid the columns, saw a 55% margin and asked for 15% off across the board. Nothing in the sheet was wrong, but the sheet was never meant for a buyer. Since then, the maker keeps one master with costs and exports a values-only copy to PDF. If you take only one habit from this tutorial, that is the one.
Updating the list when costs move
A trade price list is a snapshot. When a supplier raises the price of nuts or a bottle manufacturer adds a surcharge, your costs change before your prices do. Keep the cost table as the single source of truth and let the trade price column calculate from it, so a change in one cell flows through. The tutorial on updating a wholesale price list after supplier price increases covers how to decide which products absorb the increase and which pass it on.
For a big enough increase, tell buyers in advance. Written notice of a new list, 30 days ahead for example, gives a shop time to change its own shelf price. Check whether any buyer's agreement sets its own notice period, and keep the email short: what changed and from which date. That goes down better than a surprise invoice. AI can draft that notice from a list of changes, but check it against the sheet before it goes.
Where the list sits among your other selling channels
A wholesale list that undercuts your own web shop makes retailers angry, and one that is far above it makes buyers wonder what is wrong. Before you finalise, compare the trade price with your direct price. The trade price should leave the retailer the margin they told you they need at your RRP, and your web shop should not routinely sell below that RRP. If a marketplace takes a commission, work that cost into the comparison. The tutorial on Faire and Ankorstore for small brands sets out how marketplaces change the arithmetic.
Put the structure in a template once, with the formulas in place and the terms block ready, and each new price list becomes a matter of updating the cost table. For a team wanting help mapping this against their current ordering process, that is the sort of thing an AI implementation consultation covers; you can reach me through the contact page. Otherwise, the order of work is simple: cost sheet first, trade prices from the formula, the terms block, the cover email, then the checks above.
Questions food makers ask about trade price lists
Should the trade price list show the recommended retail price?
Yes, as a separate column marked RRP. Buyers use it to judge their own margin, and a price list without it invites an email asking for it. Keep the RRP advisory only. Say that retailers set their own shelf prices, and that your price list is a trade document not meant for consumers.
How often should a wholesale price list be reissued?
Reissue it whenever ingredient or packaging costs move enough to change a trade price by more than a few per cent, and at least once a year. Put a 'prices valid until' line on it so old copies expire, and keep the last version so you can answer a dispute about what a buyer was quoted.
Can AI set my wholesale prices?
It can lay out the sheet, check your arithmetic against a formula you describe and draft the email, but it should not choose your margin. Give it your costs and your target margin, let a spreadsheet do the sums, and use the AI to spot rows that look odd, such as a case price below cost.
Do I list every product or only the core range?
List the products you can supply reliably within your stated lead time. Seasonal or limited lines belong on a second tab or a short addendum with their own availability dates. A buyer who orders something you cannot ship that month is a worse outcome than a shorter list.
Where do allergen details go on a trade price list?
Put a short allergen column on the sheet and link to your full specification for each product. The price list is a selling document, so it should not be the only place allergens are recorded. Your product specification sheet and labels remain the authoritative record, and a local food-safety adviser can confirm what must appear.
Further reads
- Best AI Tool for Pricing Wholesale Goods: Chat Assistant or App? — Compare a chat assistant with a dedicated pricing app.
- Can AI Read Emailed Orders Into a Wholesaler's System? — Handle the orders that arrive by email once the list is out.
- How to Price Catering: A Cost-per-Person Sheet With AI — A parallel costing method for food sold by the portion.
- AI for Coffee Roasters: Batch Logs, Wholesale Orders, Labels — Batch logs and wholesale orders for another small producer.
- How to Automate Purchase Orders and Supplier Emails With AI — Tidy the purchase orders you send to your own suppliers.
- Line Sheet Template: Turn a Product Export Into a Wholesale PDF With AI — Export your products, let AI add wholesale prices, MOQs and case packs in a sheet, then check the maths and produce a PDF buyers trust.
- AI Tools and AI Development: The Complete 2026 Guide — the AI hub, including every tutorial in the AI-for-business series.
Sources: the product's own costing records you supply; general trade-pricing practice. No vendor pricing is quoted in this tutorial.