Meters & Usage-Based Automations
Track hours, miles, gallons, and cycles on any asset — and let Equipt open the work order for you the moment a threshold is crossed.
On this page
What are meters
A meter tracks a usage value that accrues over time on a specific asset or vehicle — engine hours on a mower, odometer miles on a truck, gallons through a sprayer, cycles on a piece of equipment. Unlike a PM schedule, which fires on a calendar date, a meter fires based on how much the asset has actually been used.
Meters exist to feed one thing: usage-based automations. Once a meter is recording readings, you can wire up an automation in CMMS > Automations that watches it and reacts the moment it crosses a threshold you set.
Adding a meter and recording readings
- Open any asset or vehicle detail and go to the Meters tab. Click + New Meter.
- Choose the unit — miles, hours, gallons, cycles, or whatever fits the asset — and give the meter a name (e.g. "Odometer" or "Engine Hours").
- To log usage, click the meter and use + Add Reading. Enter the value and the date.
- The meter's current value always reflects the latest reading — there's no separate "current value" field to keep in sync manually.
Building a meter-threshold automation
- Go to CMMS > Automations and click + New Automation.
- Set Trigger Type to Meter Threshold, then select the specific meter to watch.
- Choose the operator — ≥ is the one you'll use almost always for cumulative meters like mileage or hours, since those values only go up. Enter the threshold value to compare against.
- Pick an action type. If it's Create Work Order or Create WO Request, you can also set a Service Interval — see the worked example below for what that does.
Worked example: Truck #4 oil changes
This is the canonical use of meter automations — a recurring, mileage-based service that keeps re-scheduling itself without anyone touching the threshold by hand.
- Truck #4 has an Odometer meter, currently at 31,200 miles from past readings.
- An automation is configured: Trigger = Meter Threshold, Meter = Truck #4 — Odometer, Operator = ≥, Threshold = 36,000. Action = Create Work Order ("Oil Change"), Service Interval = 5,000 miles.
- A crew member logs a new odometer reading of 36,150 miles. The automations engine runs instantly, sees 36,150 ≥ 36,000, and creates the "Oil Change" work order right then.
- The automation's Pending Reset flag flips to true — see the next section for why. No second work order gets created no matter how many more readings come in while it's pending.
- A tech performs the oil change and marks the work order Done. That closes the loop: Pending Reset clears, and the threshold automatically advances by the 5,000-mile interval — from 36,000 to 41,000 miles.
- Later, another reading pushes the odometer past 41,000. The automation fires again, a new Oil Change work order is created, and the cycle repeats — 46,000 next, then 51,000, and so on — with no one ever editing the threshold by hand.
Pending Reset, explained
Pending Reset is the state that keeps a meter-threshold automation from firing over and over. Without it, every single reading that still satisfies the operator (e.g. every reading ≥ 36,000 miles, which is all of them once you've crossed that line) would create another work order.
Think of it as a simple two-state machine:
| State | Meaning | What clears it |
|---|---|---|
| Pending Reset = false | Armed. The automation is watching and will fire the next time a reading crosses the threshold. | — |
| Pending Reset = true | Already fired once for this threshold. Further readings that still cross it are ignored — no duplicate work orders. | The linked work order (or request) is marked Done. That's also the moment the Service Interval, if set, advances the threshold. |
Trigger & action reference
Every trigger type an automation can use, and every action it can take.
| Trigger type | Fires when… |
|---|---|
| Meter Threshold | A meter's current value crosses a number you choose (see below for the full walkthrough). |
| Part Low Stock | A part's quantity on hand drops to or below its minimum stock level — any part, or one you specify. |
| PM Schedule Due | A preventive-maintenance schedule's next-due date is within N days. |
| Work Order Overdue | A work order's due date has passed by N or more days. |
| New Maintenance Request | A new maintenance request is submitted. |
| Work Order Status Changed | A work order's status changes to a specific value you pick. |
| Purchase Order Status Changed | A purchase order's status changes to a specific value you pick. |
| Action type | What it does |
|---|---|
| Create Work Order | Opens a work order directly. Supports a Service Interval (see below). |
| Create Maintenance Request | Adds a review step before it becomes a work order. Also supports a Service Interval. |
| Create Purchase Requisition | Starts a requisition — useful for parts or consumables tied to the trigger. |
| Send Notification | Notifies a role in-app. |
| Send Email | Emails a role or address. Requires email configured in Settings first. |
Pre-built templates
The Automations page also offers ready-made templates — click any template card to add it to your org instantly, no manual configuration required.
- Low Stock Alert — Fires on Part Low Stock; creates a requisition automatically.
- PM Due Reminder — Fires on PM Schedule Due; creates a work order ahead of the due date.
- WO Completed — Notify Team — Fires on Work Order Status Changed (Done); sends a notification.
- PO Approved — Fires on Purchase Order Status Changed (Approved); sends a notification.