Equipt (CMMS)

Meters & Usage-Based Automations

Track hours, miles, cycles, and fuel levels on any asset — and let Equipt open the work order for you the moment a threshold is crossed.

What are meters

A meter tracks a value on a specific asset or vehicle — engine hours on a mower, odometer miles on a truck, cycles on a piece of equipment, or the fuel left in a tank. 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.

Cumulative vs. level meters

Every meter is one of two kinds, chosen when you create it:

 CumulativeLevel
Use it forOdometer miles, engine hours, cycles — usage that only accrues.Fuel, propane, or fluid in a tank — an amount that is used up and refilled.
ReadingsOnly go up.Can go up or down. The current value is simply the latest reading.
CapacityNot used.Optional. When set, readings must stay between 0 and the capacity, and the meter shows the value in raw units plus a percent of capacity. With no capacity it shows raw units only.
AutomationsFire when the value reaches a threshold (≥), and can use a Service Interval to repeat. These count as preventive maintenance.Fire when the value drops below a threshold (<). These are low-level alerts, not preventive maintenance.

A level automation fires once when a reading drops below the threshold, then stays quiet — further low readings don't create duplicates, and finishing its work order doesn't re-arm it, because the tank may still be low. It re-arms automatically once a reading brings the level back to the threshold or above (after a refill), ready to alert on the next drop.

Service Intervals, PM triggers, and “reaches” (≥) rules are for cumulative meters only. Use drops below for level meters. Work orders raised by a drops-below alert are normal work orders: they aren't typed Preventive, get no 7-day due date, and don't count toward PM compliance.

Adding a meter and recording readings

  1. Open any asset or vehicle detail and go to the Meters tab. Click + New Meter.
  2. Choose the unit — miles, hours, gallons, cycles, or whatever fits the asset — give the meter a name (e.g. "Odometer" or "Fuel Tank"), and pick Cumulative or Level. For a level meter you can also enter its capacity.
  3. To log usage, click the meter and use + Add Reading. Enter the value and the date. A reading dated today must be at least the current value. For a cumulative meter you can also add a past-dated reading you forgot to log; it only has to fit between the readings before and after that date ("Must fit between the readings before and after this date") and can be lower than today's value. Several readings on the same day are ordered by when you entered them, so the latest one is always the current value.
  4. The meter's current value always reflects the latest reading — there's no separate "current value" field to keep in sync manually.
Every reading you add — manual or synced — runs the automations engine instantly in the background. If the new value crosses a threshold on an enabled automation, the resulting work order or request is created right away, not on the next poll or batch job.

Building a meter-threshold automation

  1. Go to CMMS > Automations and click + New Automation.
  2. Set Trigger Type to Meter Threshold, then select the specific meter to watch.
  3. Choose the operator — ≥ is the one you'll use almost always for cumulative meters like mileage or hours. For a level meter such as a fuel tank, choose < (drops below) instead. Enter the threshold value to compare against.
  4. 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.
  5. The Automations list and the edit dialog always show the meter's and asset's current names, so renaming either one updates how the automation reads.
  6. For those two actions, Assigned To is a picker of your employees (leave it on Unassigned to skip it). The person you pick is put on every work order the automation creates; on a WO Request they're carried onto the work order when the request is converted. An older automation whose Assigned To was typed as free text shows “Previously typed… no matching employee” — pick the employee once so its work orders actually get assigned. An employee who has since left stays selectable on the automations already using them.

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.

  1. Truck #4 has an Odometer meter, currently at 31,200 miles from past readings.
  2. 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.
  3. 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.
  4. 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.
  5. 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.
  6. 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:

StateMeaningWhat clears it
Pending Reset = falseArmed. The automation is watching and will fire the next time a reading crosses the threshold.—
Pending Reset = trueAlready 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.
Automation didn't fire when you expected? Check, in order: 1) the automation is enabled. 2) Pending Reset is false — if it's stuck true, the linked work order likely hasn't been marked Done yet. 3) the meter's current value actually crosses the threshold. 4) the correct meter is selected in the trigger config.

Trigger & action reference

Every trigger type an automation can use, and every action it can take.

Trigger typeFires when…
Meter ThresholdA cumulative meter reaches a number you choose, or a level meter drops below one (see below for the full walkthrough).
Part Low StockA part's quantity on hand drops to or below its minimum stock level — any part, or one you specify.
PM Schedule DueA preventive-maintenance schedule's next-due date is within N days.
Work Order OverdueA work order's due date has passed by N or more days.
New Maintenance RequestA new maintenance request is submitted.
Work Order Status ChangedA work order's status changes to a specific value you pick.
Purchase Order Status ChangedA purchase order's status changes to a specific value you pick.
Action typeWhat it does
Create Work OrderOpens a work order directly. Supports a Service Interval (see below).
Create Maintenance RequestAdds a review step before it becomes a work order. Also supports a Service Interval.
Create Purchase RequisitionStarts a requisition — useful for parts or consumables tied to the trigger.
Send NotificationNotifies a role in-app.
Send EmailEmails 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.
© 2026 Landscapt. All rights reserved.