The Ultimate Guide to Shopify Inventory Management 2026 — Free Systems That Scale
Most Shopify inventory management guides end with a recommendation to pay $29–$199/month for an app. This one doesn’t. Every system described here costs $0 and runs on tools you likely already have access to.
This guide covers the complete inventory management layer for Shopify stores — from basic order logging through supplier management, stock alerts, velocity analysis, and multi-location tracking. It also covers the urgent situation every Shopify merchant faces in 2026: Shopify Stocky shuts down permanently on August 31.
What Shopify’s Built-In Inventory Actually Covers
Before building anything additional, understand what Shopify already provides:
What Shopify tracks natively:
- Current stock levels per variant per location
- Stock deductions when orders are placed
- Low stock threshold alerts (basic email notification)
- Inventory history per product
- CSV import and export for bulk updates
- Multi-location inventory (on all plans except Starter)
What Shopify does not provide:
- Automatic order logging to an external system you own
- Supplier purchase order management
- Real-time inventory ledger with running calculations
- Sales velocity analysis (how fast products are selling)
- Reorder point calculations based on lead time
- Inventory valuation (COGS tracking per unit)
- Automated low-stock notifications via Slack, email, or SMS
The gap between what Shopify tracks and what a growing store needs is exactly where the free Make.com and Google Sheets system fills in — without paying for an app that could shut down, change pricing, or lose your historical data.
The Core System — Make.com + Google Sheets
The foundation of free Shopify inventory management is a single Make.com scenario connected to a Google Sheets inventory ledger. Every time an order is paid in Shopify, Make.com captures the order data and appends a row to your sheet automatically.
What this gives you:
- A permanent, portable record of every order you own completely
- Real-time stock level calculations via spreadsheet formulas
- Full order history that survives any app or platform change
- The foundation for every advanced feature described below
Setup overview (full step-by-step at Stocky Swap):
- Create a free Make.com account at make.com
- Create a new scenario with a Webhooks module as the trigger
- Copy the webhook URL and add it to Shopify: Settings → Notifications → Webhooks → Order payment
- Add a Google Sheets module to append a row for each incoming order
- Map the fields: order ID, date, product title, variant, SKU, quantity, price, fulfilment status, customer name
- Activate the scenario
From this point forward, every paid order in Shopify writes a new row to your sheet within seconds. This is the equivalent of what Stocky Swap does — and it is what you need deployed before August 31, 2026.
The Google Sheets Inventory Ledger Structure
The sheet structure matters. A well-designed ledger supports every advanced feature below without rebuilding from scratch.
Sheet 1 — Orders Log (auto-populated by Make.com)
| Column | Data | Source |
|---|---|---|
| A | Order ID | Make.com |
| B | Date | Make.com |
| C | Product title | Make.com |
| D | Variant | Make.com |
| E | SKU | Make.com |
| F | Quantity sold | Make.com |
| G | Unit price | Make.com |
| H | Fulfilment status | Make.com |
| I | Customer name | Make.com |
| J | Location | Make.com |
Sheet 2 — Product Inventory (manually maintained, formula-calculated)
| Column | Data | Source |
|---|---|---|
| A | SKU | Manual |
| B | Product name | Manual |
| C | Opening stock | Manual |
| D | Units received | Manual |
| E | Units sold (formula) | =SUMIF(Orders!E:E, A2, Orders!F:F) |
| F | Current stock | =C2+D2-E2 |
| G | Reorder point | Manual |
| H | Reorder status | =IF(F2<=G2,“REORDER NOW”,“OK”) |
| I | Supplier | Manual |
| J | Lead time (days) | Manual |
Column E calculates total units sold for each SKU by summing the Orders Log. Column F gives live current stock. Column H flags which products need reordering. This updates automatically every time Make.com adds an order row.
Sheet 3 — Supplier Purchase Orders
A simple table for tracking what you’ve ordered from suppliers, expected delivery dates, and quantities received. When stock arrives, manually update Column D (Units received) in Sheet 2 — stock levels update automatically.
Stock Alerts — Free Automated Notifications
With the inventory ledger in place, you can trigger alerts when stock falls below reorder points without checking the sheet manually.
Option 1 — Email alert via Make.com (simplest)
Add a second branch to your existing Make.com scenario: after logging the order to Google Sheets, check if the current stock level for that product is at or below the reorder point. If yes, send an email to your nominated address with the product name, current stock, and reorder point.
Option 2 — Scheduled daily check (more reliable)
Create a separate Make.com scenario that runs every morning at 8am. It reads your Sheet 2, filters rows where Column H = “REORDER NOW”, and sends a consolidated email listing every product that needs reordering. This catches situations where stock dropped outside of order events (damaged goods, manual adjustments).
Option 3 — Google Sheets email alert (no Make.com needed)
In Google Sheets, use Tools → Script editor to write a simple Apps Script function that sends an email when triggered. Set it to run daily via a time-based trigger. This works without Make.com if you prefer to keep everything in Google’s ecosystem — but be aware of the Google Apps Script quota limits on consumer accounts.
Sales Velocity Analysis
Understanding how fast products sell tells you when to reorder before you run out — not after. With your Orders Log populated, add these calculations to Sheet 2:
30-day velocity (units sold in last 30 days):
=COUNTIFS(Orders!E:E, A2, Orders!B:B, ">="&TODAY()-30)
Days of stock remaining (at current velocity):
=IF(F2=0, "OUT OF STOCK", IF(velocity=0, "SLOW MOVER", ROUND(F2/velocity, 0)))
Recommended reorder date (based on lead time):
=IF(days_remaining<=lead_time, "ORDER NOW", TODAY()+(days_remaining-lead_time))
These formulas give you a live view of which products are running low based on actual sales rate — not arbitrary stock level thresholds.
Multi-Location Inventory
Shopify’s native multi-location tracking records stock per location. The Make.com webhook captures the fulfilment location for each order, so your Orders Log automatically segments by location if you include that field in your mapping.
For stores with 2–3 locations, create a Sheet 4 with one column per location and SUMIF formulas that calculate sold quantities per SKU per location. Current stock per location = opening stock + received - sold, by location.
This gives you a live multi-location view without any additional paid tools.
The Urgent August 2026 Situation
Shopify removed Stocky from the App Store on February 2, 2026. On August 31, 2026, Stocky stops functioning entirely. Any purchase order history, stocktake records, and inventory data held in Stocky will be permanently deleted.
If you are currently using Stocky:
- Export all data now — do not wait. In Stocky, export your full purchase order history and stocktake records as CSV. Store these files in Google Drive immediately.
- Deploy Stocky Swap before August 31 — the Stocky Swap setup takes 4 minutes and ensures no gap in order tracking.
- Rebuild any supplier management workflows you relied on in Stocky using Sheet 3 above.
If you are not using Stocky: you still need a real-time order logging system. The Make.com and Google Sheets approach is the standard free replacement regardless of whether Stocky was part of your previous workflow.
Integrating Inventory with P&L Reporting
Once your inventory ledger is running, connecting it to profit and loss reporting costs nothing additional — it’s a second branch on your existing Make.com scenario.
When each order arrives, Make.com writes to both your inventory sheet (quantity, fulfilment) and your P&L sheet (revenue, COGS, fees, net profit). The Shopify P&L Automation guide covers the full P&L setup. If you deploy both together, you have a live inventory and profit dashboard in one Google Sheets workbook — replacing tools that cost $50–$300/month combined.
When to Consider a Paid Inventory App
The free system described here handles most Shopify stores well. The genuine limitations appear at:
- 10+ locations — managing more than 3–4 locations via formula-based sheets becomes operationally complex
- 1,000+ SKUs — SUMIF calculations across thousands of SKUs can slow sheet performance; a database-backed system handles this better
- Complex bundling — products that combine multiple SKUs (bundles, kits) require more sophisticated inventory logic than SUMIF can cleanly handle
- Barcode scanning for receiving — if your warehouse team scans items into stock, you need purpose-built receiving software
Below these thresholds, the Make.com and Google Sheets system is genuinely equivalent to paid alternatives — and it is permanently free, entirely owned by you, and exportable at any time.
Deploying Your Free Inventory System Today
The fastest path from zero to a working inventory system:
- Deploy Stocky Swap now — 4-minute setup. This gets order logging running immediately.
- Set up the sheet structure — use the three-sheet layout above. Copy the SUMIF formulas into Sheet 2.
- Add stock alert notifications — add a second Make.com branch for email alerts on low stock.
- Export Stocky data if applicable — do this before August 31, 2026.
- Add P&L tracking — a third branch on the same scenario, no additional setup cost.
Every step above is free. The only ongoing cost is Make.com’s Core plan at $9/month if your order volume exceeds 160 orders per month on the free plan — still 90–97% cheaper than any dedicated inventory app.
Get the Stocky Swap files before August 31
The Complete Kit includes the Stocky Swap Make.com JSON blueprint — deploys in 60 seconds and starts capturing live inventory data immediately. Also includes CAPI Shield (tracking), TikTok CAPI, and P&L Auto. $29 one-time. Deploy before the Stocky shutdown deadline.