How to choose a POS for your bakery.
Last reviewed 2026-05-26 · by the RetailPOS team
A bakery's margins are decided in the back room, not at the till. Flour at $0.85/kg versus $0.95/kg, butter at $7 versus $9, egg yields at 50 per case versus 48 — those deltas compound across thousands of croissants and dozens of cake slices a week. If your POS just sells “Croissant $3.50” without depleting the underlying ingredients, you find out about a 3¢ flour-cost bump from your accountant in March, not from your till in October when it started.
This guide is for independent bakery owners — neighbourhood patisseries, family-owned artisan bakeries, small cake-only shops, baker-baristas running a café + a back oven. It walks through what a bakery POS needs to do well (recipe depletion, spoilage, sliced cakes, bulk receiving) and the workflows that quietly cost you margin if the system gets them wrong.
What this industry actually needs from a POS
Recipe BOM is the headline win
Every croissant is 80g flour + 45g butter + 8g sugar + 2g yeast. Selling one decrements all four ingredients. Without this, your “flour usage” report is your weekly supplier invoice minus what's on the shelf, and the gap between them is shrinkage you can't explain.
Sliced cakes are their own recipe
An 8-slice chocolate cake is one product to make, eight products to sell. Each slice has its own recipe (1/8 of the cake's ingredient sheet) so a refund restocks the right amount. Some POS systems treat the whole cake as one SKU and the slices as “manual adjustments” — accounting nightmare.
Spoilage at end-of-day matters
Unsold croissants, day-old loaves. The POS should have a two-tap spoilage flow — write off the count with a reason (“waste”), which leaves a ledger line for your accountant + flags the books cleanly. Without this, end-of-day shrinkage gets recorded as “loss” or worse, “theft.”
Bulk receiving is your morning workflow
Flour mills deliver weekly, dairy daily, eggs daily. Receiving against a PO has to be a 30-second cashier-side workflow, not a desktop multi-step. The cost lands against your margin reports automatically.
Wholesale + retail share one catalog
Most bakeries sell to local cafés on the side. The wholesale order is the same croissant at a different price; the POS should handle per-customer price tiers without forcing two separate catalogs.
Modifier groups are lighter than coffee
Where a coffee shop has milk × size × syrup × shot count, a bakery has gluten-free yes/no and maybe icing colour. The cashier UI should be fast but doesn't need the coffee depth.
Special orders / pre-orders happen daily
A wedding cake, a corporate-event pastry tray. Pre-order taken Monday, paid Friday on collection. The POS should track the order through the production calendar, not just at the moment of payment.
Closing time + pastry case = constant decisions
At 4pm you sell out of croissants but you have 5 baguettes left at 6pm closing. The reports should tell you whether to bake more or fewer next week, based on actual sell-through curves not your guesses.
Must-have features
- ✓Recipe BOM at item level
Every baked item links to its ingredient recipe. Selling decrements the ingredients. Refunds restock proportionally. Ingredients are themselves stockable items.
- ✓Per-slice recipes for cakes
Bake one cake, sell eight slices, each slice carries 1/8 of the cake's recipe. Refund a slice → restock 1/8 of the ingredients. The math works without the cashier doing manual adjustments.
- ✓Spoilage / waste write-off flow
Two-tap end-of-day mark-off. Stock decrements with a “waste” reason code. The line shows in your accountant's shrinkage report, not as unexplained loss.
- ✓Supplier + PO receiving
Suppliers as first-class records. Receive against a PO; stock and cost-of-goods adjust atomically. Cost feeds into your margin reports automatically.
- ✓Per-customer wholesale pricing
A different price for the café down the road than for walk-in retail. Tied to the customer record; the cashier doesn't need to remember.
- ✓Quick item add + bulk catalogue import
Seasonal items (pumpkin spice, Easter pastries) come and go. Add a new item in 30 seconds; bulk-import a seasonal menu from a spreadsheet in one pass.
- ✓Multi-register support
One iPad on the pastry case, another at the bread counter, both running parallel. Each ring lands in one inventory ledger.
- ✓End-of-shift drawer count
Opening float, cash drops, pay-ins, pay-outs all tracked. Variance flagged; the report tells you which shift to investigate when something's off.
- ✓CSV export of everything
Your data is yours. One-click export of items, recipes, sales, customers, spoilage logs. Your accountant takes the CSV, your books match what the till says.
Nice-to-haves
- +Production planning report
Based on last week's sell-through by day-of-week, suggest tomorrow's bake quantities. Useful for the production manager; experienced bakers may not need it.
- +Pre-order calendar
A view of pre-ordered items grouped by collection date. Useful for sites with regular wedding-cake or corporate-tray traffic.
- +Allergen tagging at item level
Per-item flags for gluten / dairy / nuts / soy. Surfaces on the customer-facing display + the receipt. Increasingly required by local regulation.
- +Customer-facing display next to the till
A small screen showing the order as it's rung, plus the loyalty + tip prompts. Lifts loyalty signup; some staff find it pushy.
- +Subscription / weekly bread orders
Recurring billing for “a sourdough every Saturday.” Niche but high-margin. Most POS systems don't do this; a Stripe Billing handoff fills the gap.
Buying traps to avoid
- ⚠“Recipes” that are just nested SKUs
Many POS systems offer something they call recipes, but it's actually nested items (an “assembly”) rather than true ingredient depletion. Selling one croissant decrements one croissant from a stock count; it doesn't deplete the underlying flour, butter, sugar. Ask for a screenshot of the ingredient ledger before signing.
- ⚠Sliced cakes as “modifiers”
Some POS systems will model an 8-slice cake as “one item with quantity 8” or “a modifier you tick.” That breaks refund restocking — refunding a slice tries to restock 1 cake. Real per-slice recipes are per-slice.
- ⚠Spoilage logged as “manual adjustment”
If your POS treats waste write-offs as the same flow as “count mismatch correction,” your accountant cannot tell shrinkage from theft. Look for a dedicated reason code (“waste”) that hits a separate report line.
- ⚠Wholesale pricing as a discount, not a tier
Some POS systems make you apply a wholesale discount per ring. That breaks when the staff changes; the discount becomes inconsistent. Real wholesale is a per-customer price tier — same SKU, different price, no cashier discretion.
- ⚠Locked-in card processor with high rates
Bakery margins are 60-70% gross, 8-12% net. A 0.3% extra on card fees can be 5% of your net. Avoid POS systems that force you onto their card processor at a fixed rate. Bring your own Stripe so the rate is yours to negotiate.
How to choose your bakery POS
- 1List your real ingredient inventory
Walk your back room. Write down every ingredient by name, current cost per unit, and typical stock-on-hand. Bakeries that try to set up recipes without this list end up half-finished and frustrated. Two hours of stock-take saves twenty hours of POS friction.
- 2Decide on your recipe depth
Will you set up every baked item with its real recipe? It is roughly 5 minutes per recipe, so 50 items = 4-5 hours of work. Most bakeries that try recipe-driven inventory and quit do so because they tried to do all 200 items on day one. Set up the top 20 sellers; let the rest come incrementally.
- 3Test the cashier flow on a slice cake
On a demo POS, set up a chocolate cake with its recipe + an 8-slice variant. Sell one slice. Check the stock ledger: did 1/8 of the cake recipe deplete? Refund the slice; did 1/8 restock? If both work, the system passes the bakery test.
- 4Walk through a waste write-off
Demo: at end-of-day, write off 5 unsold croissants. Confirm the stock decrements with a “waste” reason code, that the line shows in a spoilage report (distinct from sales-driven decrements), and that your accountant can see it.
- 5Validate the wholesale workflow
Set up a customer (the café down the road) with a wholesale price tier. Ring 50 croissants for them; confirm the line price is the wholesale tier, not retail. Confirm the invoice goes to their statement, not to a card terminal at the moment of sale.
- 6Run the PO receive flow
Demo: create a PO to your flour mill for 25kg flour. Receive it. Confirm stock-on-hand goes up by 25kg and your cost-of-goods records the $X. Margin reports should reflect this within the day.
- 7Check the data export
Click whatever the POS calls “download all data.” You should get one file (or one ZIP) with items, recipes, sales, customers, spoilage. If the export requires a support email or a 30-day SLA, you are locked in.
- 8Run a real Wednesday
Bakery traffic peaks at opening (commuters) and 4-5pm (school pickup). Get a 14-day trial; run a full Wednesday on the system. Note every friction. The system that fits the rhythm is the one to buy.
Glossary
- BOM (bill of materials)
- The recipe at the item level: 1 croissant = 80g flour + 45g butter + 8g sugar + 2g yeast. The basis for ingredient depletion.
- Spoilage / waste
- Unsold product written off at end-of-day. Tracked with a “waste” reason code so it's distinct from theft or count errors in the books.
- Per-slice recipe
- An 8-slice cake's recipe divided into 1/8 portions, attached to each slice as its own SKU. Lets refunds restock proportionally.
- Wholesale tier
- A per-customer price on the same SKU. Café A pays $1.80 for a croissant; walk-in retail pays $3.50. Tracked on the customer record; cashier doesn't override.
- Purchase order (PO)
- A document sent to a supplier requesting goods at agreed prices. The POS receives against the PO when the shipment arrives, updating stock + cost-of-goods.
- Cost-of-goods (COGS)
- The cumulative cost of the ingredients that went into your sold product. Drives your margin reports. Computed from supplier invoices via the PO-receive flow.
- Production planning
- The process of deciding tomorrow's bake quantities based on yesterday's sell-through. The POS surfaces the data; the head baker makes the call.
- Pre-order
- A future-dated order taken now (wedding cake, corporate tray). Stays in “pending” status until collection; payment can be at order or at pickup.
- Allergen tag
- A flag on an item declaring its allergen content (gluten / dairy / nuts / soy / egg). Increasingly required by regulation; surfaces on receipts + customer-facing displays.
- Modifier group
- A set of choices attached to an item (gluten-free yes/no, icing colour). Each option can have a price delta + override the recipe (e.g. gluten-free swaps wheat flour for almond flour).
Frequently asked
- We change the menu seasonally — how hard is it to add a new item?
- Two minutes. Add the item, pick its category, type the recipe (flour 100g, butter 30g, etc.). If the ingredients already exist as stocked items, you reference them; otherwise you add them inline.
- What about items we bake daily that aren't in a recipe — donuts, cookies?
- You can stock them as direct-stocked items (no recipe) — same as the convenience-store flow. The system tracks the count on the case; selling decrements; the next morning's bake replenishes via a stock-adjust.
- Can it handle our wholesale orders to local cafés?
- Yes. Use the ‘online’ channel on the order — separate from in-store. Send the invoice as a PDF receipt from the system. Future iterations land scheduled deliveries (already in our furniture pack); your wholesale orders inherit them for free.
- Multiple shops?
- One owner dashboard, separate registers per store, transfers between locations in one tap. Recipes live at the tenant level, so all shops share the same ingredient list and recipe edits propagate.
- What hardware do we need?
- Cheapest workable setup: iPad ($329), Star TSP143IIIBI printer ($230), Honeywell Voyager 1450G scanner ($120), Stripe Reader M2 ($59), any 24V cash drawer ($150). Under $900 total. You can use what you already own — almost any USB scanner and a Bluetooth printer.
Ready to look at the product side of this? See the bakery pack →
Open your bakery in 30 seconds.
No card. Free until your first 100 sales. Bring your own Stripe; keep your hardware.