WPSlash

How to Manage Restaurant Inventory and Track Stock Levels with WooCommerce: A Complete Guide to Reducing Food Waste and Avoiding Sold-Out Menu Items

Monday March 30, 2026

Why Inventory Management Matters for Restaurants Using WooCommerce

A restaurant running out of its most popular dish during a Friday dinner rush isn’t just an inconvenience — it’s a direct hit to revenue and customer trust. Unlike a clothing store where unsold stock sits on shelves for months, restaurants deal with ingredients that spoil in days or even hours. This fundamental difference makes inventory management for food businesses uniquely challenging and critically important.

The numbers paint a stark picture. According to the USDA, the restaurant and foodservice industry in the United States generates an estimated 22 to 33 billion pounds of food waste annually. ReFED, a nonprofit focused on food waste solutions, estimates that restaurants lose roughly 2-6% of their food purchases to waste before it ever reaches a customer. For a restaurant doing $500,000 in annual food purchases, that’s $10,000 to $30,000 literally thrown away.

On the flip side, overselling menu items that are actually out of stock creates a different kind of damage. When a customer places an online order only to receive a phone call saying their selection isn’t available, you’ve eroded trust and likely lost a repeat customer. A digital inventory system that connects directly to your online ordering platform eliminates both problems — reducing waste by giving you clear visibility into what you have, and preventing oversells by automatically updating menu availability.

If you’re running your restaurant’s online ordering through WooCommerce, you already have a surprisingly capable inventory foundation. The key is knowing how to configure it properly and extend it with the right tools for food-specific needs.

How WooCommerce Stock Management Works for Food and Menu Items

WooCommerce ships with a built-in inventory management system that many restaurant owners overlook or underutilize. Before reaching for third-party solutions, it’s worth understanding exactly what’s available out of the box.

Enabling and Configuring Stock Management

To activate inventory tracking, navigate to WooCommerce → Settings → Products → Inventory. Check the box for “Enable stock management” to unlock global inventory features. From here, you can set a global low-stock threshold (the point at which you receive a notification) and an out-of-stock threshold (when the item becomes unavailable for purchase).

At the individual product level — which represents each menu item — open the product editor and go to the Inventory tab. Here you can:

  • Enter a Stock Quantity (e.g., 30 servings of today’s lasagna special)
  • Set a Low Stock Threshold specific to that item (e.g., alert me when only 5 servings remain)
  • Choose whether to Allow Backorders (generally not recommended for restaurants — you can’t serve food you don’t have)
  • Toggle Sold Individually if a dish is limited to one per customer

Where Native WooCommerce Falls Short for Restaurants

WooCommerce’s stock system tracks at the product level, meaning each menu item has its own independent stock count. This works well for items with dedicated ingredients — a bottled beverage, for instance. But restaurants rarely operate this way. A single block of mozzarella cheese might be shared across pizza, caprese salad, and stuffed mushrooms. Selling one pizza doesn’t automatically reduce the available quantity of caprese salads.

Similarly, WooCommerce has no native concept of expiration dates, batch tracking, or daily prep quantities — all essential for food operations. These gaps are where plugins and custom configurations become necessary.

[IMAGE: Screenshot of WooCommerce product inventory settings panel showing stock quantity, low stock threshold, and backorder options configured for a restaurant menu item]

Setting Up Ingredient-Level Inventory Tracking with WooCommerce Plugins

Ingredient-level tracking is the single most impactful upgrade you can make to your restaurant’s WooCommerce inventory system. Instead of manually adjusting stock counts across a dozen menu items when you run low on chicken breast, the system handles it automatically.

Using ATUM Inventory Management

ATUM Inventory Management is one of the most comprehensive free inventory plugins for WooCommerce. Its Stock Central dashboard gives you a spreadsheet-like view of all products with inline editing — you can update stock quantities across your entire menu from a single screen without opening each product individually.

The premium version of ATUM adds Product Levels, which lets you define raw materials (ingredients) and link them to finished products (menu items). Here’s how to set it up:

  1. Install ATUM and navigate to ATUM → Settings to enable product-level tracking
  2. Create your raw materials as a separate product type — for example, “Mozzarella Cheese (kg)” with a stock quantity of 20
  3. Open each menu item that uses mozzarella and define the Bill of Materials (BOM), specifying that one Margherita pizza requires 0.15 kg of mozzarella
  4. When an order comes in for a Margherita pizza, ATUM deducts 0.15 kg from the mozzarella stock and recalculates availability for all linked items

A Practical Example: The Shared Ingredient Problem

Imagine you run a pizzeria with 20 kg of mozzarella in stock. Your menu includes Margherita (uses 0.15 kg), Four Cheese (uses 0.25 kg), and Caprese Salad (uses 0.12 kg). With ingredient-level tracking, the system knows that selling 50 Margherita pizzas consumes 7.5 kg of mozzarella, leaving 12.5 kg — enough for 50 more Four Cheese pizzas or 104 Caprese Salads. Without this, you’d be guessing.

Alternative Approaches

If ATUM’s premium features are beyond your budget, you can build a simpler version using WooCommerce Composite Products or Product Bundles with stock sync enabled. These plugins let you tie a parent product’s availability to the stock levels of its component parts. The setup is more manual, but it works for restaurants with smaller menus.

For developers comfortable with custom code, Advanced Custom Fields (ACF) combined with WooCommerce hooks can create lightweight ingredient tracking. You’d store ingredient quantities as custom fields on each product and use the woocommerce_reduce_order_stock hook to deduct from shared ingredient pools when orders are placed.

Automating Low-Stock Alerts, Daily Inventory Reports, and Supplier Reorder Notifications

Knowing your stock levels is only useful if you act on that information before it’s too late. Automation turns passive data into proactive management.

Configuring Email and SMS Alerts

WooCommerce sends low-stock and out-of-stock email notifications by default to the admin email address. You can customize the recipient under WooCommerce → Settings → Products → Inventory — consider adding your kitchen manager’s email so they’re alerted directly.

For SMS alerts, plugins like Jetvox or Twilio-based notification plugins can trigger text messages when stock hits your defined thresholds. For a busy kitchen, an SMS saying “Salmon stock below 5 portions” is far more actionable than an email buried in an inbox.

Daily and Weekly Inventory Reports

WooCommerce’s built-in analytics under Analytics → Stock show current stock status across all products, filterable by in-stock, low-stock, and out-of-stock. For more detailed reporting, plugins like WP Sheet Editor let you export your entire inventory to a spreadsheet for analysis.

A particularly effective approach for restaurants is integrating WooCommerce with Google Sheets via Zapier or WP Webhooks. You can set up an automation where every order updates a shared Google Sheet that tracks daily ingredient consumption. Your purchasing manager can review this sheet each morning to make informed ordering decisions.

Automating Supplier Reorders

Here’s a practical workflow for a pizza restaurant tracking dough and toppings:

  1. Set your mozzarella low-stock threshold to 5 kg (roughly one day’s supply)
  2. Configure a Zapier automation: when WooCommerce stock for mozzarella drops below 5 kg, automatically send a pre-formatted email to your cheese supplier with your standard reorder quantity
  3. Include the current stock level and estimated depletion date in the email template
  4. CC your kitchen manager so they know the order has been placed

This kind of automation doesn’t require expensive enterprise software. A Zapier account and 30 minutes of setup can save hours of manual ordering each week and prevent those emergency supplier runs that always cost more.

[IMAGE: Flowchart diagram showing the automated inventory workflow from customer placing an online order through stock deduction, low-stock alert trigger, and automatic supplier reorder notification]

Hiding or Disabling Sold-Out Menu Items in Real Time

Nothing frustrates an online customer more than completing an order only to learn their selection is unavailable. Handling sold-out items gracefully on your ordering page is essential for a professional customer experience.

WooCommerce’s Built-In Out-of-Stock Visibility

Under WooCommerce → Settings → Products → Inventory, you’ll find the “Out of stock visibility” checkbox: “Hide out of stock items from the catalog.” When enabled, any menu item that hits zero stock simply disappears from your ordering page. This is the quickest solution, but it has a downside — regular customers may wonder why their favorite dish is missing, with no explanation.

How FoodMaster Handles Menu Availability

If you’re using FoodMaster (formerly WooFood) as your restaurant ordering plugin, you get tighter control over how menu items display. FoodMaster is built specifically for restaurant workflows on WooCommerce, so it understands concepts like daily specials, limited-quantity items, and time-based menu availability. When stock runs out, items can be managed directly within the restaurant ordering interface, keeping your menu looking clean and professional while preventing orders for unavailable dishes.

Showing “Sold Out” Badges Instead of Hiding Items

A better user experience is to keep sold-out items visible but clearly marked as unavailable. This tells customers the item exists and will likely return. You can achieve this with a small CSS and PHP customization:

First, uncheck the “Hide out of stock items” option in WooCommerce settings. Then add a “Sold Out” badge overlay using CSS targeting WooCommerce’s .outofstock class on product loops. Style the item with reduced opacity (around 0.6) and add a pseudo-element overlay with “Sold Out” text. WooCommerce automatically adds the outofstock class to products with zero stock, so no additional plugin is needed for this approach.

When you restock an item — whether by manually updating the stock quantity or through an automated inventory sync — WooCommerce removes the outofstock class, and the item becomes orderable again instantly. No page rebuilds or cache clears required (assuming you’re not using aggressive full-page caching).

Best Practices for Restaurant Inventory Management

Technology is only as good as the processes behind it. These operational best practices will maximize the value of your WooCommerce inventory setup.

FIFO: First In, First Out

The FIFO method ensures older stock gets used before newer deliveries. While WooCommerce doesn’t enforce FIFO digitally, you can support it by adding batch notes to inventory entries. When you receive a delivery, update your stock quantity and add a note with the delivery date. Train kitchen staff to always pull from the oldest batch first. Some ATUM premium features support lot tracking that can formalize this process.

Syncing POS Inventory with Online Orders

If you accept both dine-in and <a href="https://www.wpslash.com/restaurant-delivery-management/" title="Restaurant Delivery Management: The <a href="https://www.wpslash.com/restaurant-website-ordering-system/" title="Restaurant Website Ordering System: The Ultimate Guide to Effortless Online Orders”>Ultimate Guide to Effortlessly Handling Online Orders”>online orders, inventory must stay synchronized across channels. A customer ordering online shouldn’t be able to claim the last portion of a dish that was just sold to a dine-in guest. FoodMaster’s POS functionality helps bridge this gap by managing in-store and online orders within the same WooCommerce system, so stock deductions happen from a single source of truth regardless of how the order arrives.

Weekly Inventory Audit Checklist

Even with automated tracking, a weekly physical count keeps your digital numbers honest. Here’s a practical checklist:

  • Monday morning: Count all perishable ingredients and compare against WooCommerce stock levels
  • Identify discrepancies: Adjust digital stock to match physical counts, noting the variance
  • Review waste log: Document what was thrown away and why (spoilage, overprep, returns)
  • Analyze sales velocity: Check WooCommerce Analytics → Revenue to identify which items sold fastest and adjust next week’s prep quantities
  • Update thresholds: If a dish is trending upward in popularity, raise its low-stock alert threshold accordingly

Recommended Plugin Stacks by Restaurant Size

Not every restaurant needs the same toolset. Here’s a practical breakdown:

Small restaurants (under 30 menu items): WooCommerce native inventory + FoodMaster for online ordering + manual Google Sheets tracking. Total cost is minimal, and the simplicity keeps things manageable for a small team.

Medium restaurants (30-80 menu items, moderate order volume): WooCommerce + FoodMaster + ATUM Inventory Management (free tier) + Zapier for low-stock email automation. This gives you centralized stock management with basic automation without a steep learning curve.

High-volume restaurants or multi-location operations: WooCommerce + FoodMaster + ATUM Premium (with Product Levels for ingredient tracking) + automated supplier reorder workflows + POS integration for in-store sync. The investment pays for itself quickly when you’re processing hundreds of orders daily across multiple channels.

Tracking Waste to Improve Margins

One often-overlooked strategy is using your WooCommerce inventory data to identify waste patterns. If you’re consistently throwing away a specific ingredient, the data will show it — your stock adjustments during weekly audits will reveal which items have the largest gaps between expected and actual quantities. Use this data to adjust portion sizes, reduce prep quantities, or rethink menu items that consistently lead to waste.

Effective restaurant inventory management isn’t about achieving perfection — it’s about building systems that catch problems early and improve over time. Start with WooCommerce’s native tools, layer on ingredient-level tracking when you’re ready, and automate the repetitive tasks that drain your team’s time. Your margins, your customers, and your kitchen staff will all benefit from the clarity that a well-managed inventory system provides.

Leave a Comment

Your email address will not be published. Required fields are marked *

Related Articles

Tutorials

How to Configure Allergen Disclosures, Tax Rules, and ADA Accessibility Compliance for Your WooCommerce Restaurant Ordering Website (Complete Legal Compliance Guide)

Why Legal Compliance Matters for Online Restaurant Ordering Sites Running a restaurant website isn’t just about beautiful food photos and a smooth checkout. The moment you accept orders online, you step into a regulatory landscape that spans food safety law, tax code, disability rights, and data privacy — often simultaneously. And the consequences of getting […]
March 30, 2026
Tutorials

How to Build a Progressive Web App (PWA) for Your Restaurant Ordering Website: Turn Your WooCommerce Site into a Mobile App Experience (Complete Step-by-Step Guide)

Your customers are already ordering food on their phones. The question is whether your restaurant’s website feels like a clunky webpage or a smooth, app-like experience. Progressive Web Apps (PWAs) bridge that gap — giving your WooCommerce restaurant site the speed, reliability, and engagement of a native mobile app without the hefty development costs or […]
March 29, 2026
Tutorials

How to Integrate Third-Party Delivery Services (DoorDash Drive, Uber Direct, and Stuart) with Your WooCommerce Restaurant Website (Complete Setup Guide)

Running a <a href="https://www.wpslash.com/restaurant-website-ordering-system/" title="Restaurant Website Ordering System: The Ultimate Guide to Effortless Online Orders“>restaurant website on WooCommerce gives you full control over your brand, your menu, and your customer relationships. But there’s always been one nagging challenge: getting the food from your kitchen to the customer’s door without relying on marketplace apps that take […]
March 29, 2026