All workflows
Google Sheets logoGmail logo

Daily inventory monitor for low stock and expiry

Checks your inventory sheet every morning and emails what is out of stock, running low, expired or expiring soon, marking each row.

Every day at 09:002 apps3 steps

Apps it connects

Authenticate each one once and the workflow is ready to run.

What it does

Each integration step this workflow runs, in order, what it is for, and the conditions and loops that decide when it runs.

  1. 1Google SheetsRead rowsReads every item on the inventory tab, with its quantity, reorder level, expiry date, supplier and current alert status.
  2. If analysis.has_alerts

    1. 2GmailSendSends you one email: what to reorder grouped by supplier, with how many when your tab says, what has expired, what expires soon, and rows that could not be read.
  3. For each update

    1. 3Google SheetsUpdate rowWrites the alert and the date it was first raised into the row's Alert Status cell, or clears it once the item is fine again; no other cell is touched.

How it works

What happens on each run, in plain English.

Every morning at 09:00, the inventory tab of your spreadsheet is read and each item is checked two ways: its quantity against its reorder level, and its expiry date against today. Anything out of stock or at or below its reorder level goes into a reorder list, grouped by supplier when the tab names one and with how many to order when the tab gives a reorder quantity or target stock level; anything past its expiry date or expiring within your warning window follows in its own section. The result is one email, sent only on a morning when something needs attention.

Each alert is then written into the row's Alert Status cell with the date it was first raised, so the next email separates what is new from what is still outstanding, and the cell is cleared once the item is restocked or replaced. Nothing else in the row is touched, and a status typed in by hand is left alone. A row whose quantity or date cannot be read is listed under 'check these rows' instead of being skipped, and an empty tab or a status that cannot be written fails the run instead of passing for a quiet day.

You need Google Sheets and Gmail connected, a link to your spreadsheet, the inventory tab's name, and the address the alerts go to. The tab needs Item and Quantity columns and an empty Alert Status column; Reorder Level, Expiry Date, Reorder Qty, Target Stock, SKU and Supplier columns are optional and used when present, and the default threshold and warning window are set in two steps of the workflow.

google sheetsgmailinventorystockexpiryreorderalertsdaily

Start from a workflow that already works.

Add "Daily inventory monitor for low stock and expiry" to your workspace, connect its apps, and make it yours.

Free plan, no credit card