What Is Runtime & Downtime Tracking?
You cannot improve what you do not measure, and few things reveal more about an operation than how much of the time its equipment is actually running. Runtime and downtime tracking turns that into hard numbers - and, when downtime is categorized, into a map of where production is being lost.
Runtime/Downtime Tracking in one line: Runtime and downtime tracking is the automatic recording of how long equipment spends running versus stopped, used to calculate availability, quantify lost production, and - when downtime is tagged with reason codes - pinpoint the causes of losses.
How Runtime and Downtime Are Measured
At its simplest, a SCADA system watches a run status - a motor contactor, a pump discharge pressure, a flow above a threshold - and accumulates the time in each state. Runtime is the total time running; downtime is the total time stopped. From these, availability is calculated as runtime divided by the total scheduled time, usually expressed as a percentage. The same run counters also feed maintenance, since many service intervals are based on operating hours rather than calendar time.
The real value appears when downtime is categorized. Attaching reason codes - waiting on power, mechanical failure, planned maintenance, no feed, operator hold - converts raw downtime into an analysis of why production is lost. That is what lets a team rank causes and attack the biggest one, rather than knowing only that a site was down.
Why It Matters in Oil & Gas Operations
Across a large field, small differences in well or compressor availability compound into significant production and revenue. Tracking runtime per well surfaces the units that cycle or shut in most often; tracking downtime by reason surfaces whether the losses are electrical, mechanical, or operational. This directly informs where to send crews and where to invest in reliability.
Because SCADA already reads run status and flow from every site, runtime and downtime tracking is largely a matter of accumulating and reporting data the system is collecting anyway. A cloud SCADA platform that historizes this state can report availability and downtime by site and by reason across an entire operation, viewable in a browser, so a supervisor can compare uptime across dozens of remote wells without pulling logs from each one.
Choosing a Trustworthy Run Signal
Everything downstream - availability figures, reason-code analysis, maintenance triggers - inherits the quality of the run signal, so choose it deliberately. An auxiliary contact on the motor starter proves the starter closed, not that the pump moved fluid. Motor current proves the shaft is loaded. Discharge pressure or flow above a threshold proves useful work. Each step up that ladder is a more honest runtime signal, and the honest ones are the ones worth accumulating.
Wherever possible, validate one signal against another: run status that says running while flow says zero is either a broken belt, a gas-locked pump, or a lying input, and every one of those is worth an alarm of its own. Debounce is the other essential - a threshold-based run signal will flutter at the boundary, and without a short qualification time the system records dozens of phantom starts and stops that poison both the counts and the cycle statistics.
On beam pump wells the run signal has one more subtlety: pump-off controllers stop and start the unit all day by design, so raw start counts mean something different than they do on a compressor. Runtime there is best read alongside the controller's own cycle data - the baseline exercise covered in how to baseline a pump-off controller runtime - so normal cycling is not mistaken for trouble.
Building a Reason-Code Set People Will Use
Reason codes fail in two directions: too few and the analysis says nothing, too many and the field stops filling them in. A workable set has a single level of a handful of mutually exclusive buckets, with an explicit other category that gets reviewed - a growing other bucket is the signal to add a code, not a failure of discipline.
| Bucket | Example causes | Usually assigned by |
|---|---|---|
| Power | Utility outage, generator down, breaker trip | Automatic, from site power status |
| Mechanical | Pump, engine, or compressor failure | Operator or mechanic |
| Planned | Scheduled maintenance, workover, inspection | Operator, from the schedule |
| Process | No feed, high line pressure, tank full | Automatic, from process context |
| Comms unknown | Telemetry outage masking true state | Automatic, flagged for review |
Automate what can be automated. If the ESD tripped, the system knows; if site power dropped, the system knows; if telemetry was out, the honest code is unknown, not a guess. Reserving human entry for the cases only a human can classify keeps the burden small enough that people keep doing it.
Feeding Maintenance and Reliability Metrics
Accumulated run hours are the natural trigger for service on rotating equipment, since wear follows operation rather than the calendar. Feeding SCADA runtime into the maintenance system replaces guessed intervals with measured ones - the pattern described in runtime hours maintenance trigger. The same event log that produces downtime totals also yields failure counts, and with them reliability arithmetic such as MTBF per unit.
The discipline that makes these numbers meaningful is separating planned from unplanned downtime at the source. A unit down for scheduled service is not failing, and mixing the two makes reliable equipment look bad and failing equipment look average. That separation is exactly what the reason codes buy, which closes the loop on why they are worth the field's time.
A Worked Availability Calculation
Run the arithmetic on a symbolic month. A well is scheduled to produce all 720 hours. The tracker records 684 hours running and 36 hours down, so availability is 684 divided by 720, or 95 percent. The 36 hours split by reason code: 20 waiting on site power, 12 on a pump failure, and 4 planned for a service call.
The split is the actionable part. Availability alone says the well ran most of the time; the codes say that fixing power reliability would recover more production than any mechanical improvement. Multiply that reasoning across a field and the downtime report becomes the priority list for the operations budget, which is the entire point of tracking the numbers in the first place. The same worked pattern scales down to a single compressor and up to a district, as long as the run signal and the codes are consistent.
Frequently Asked Questions
How is equipment availability calculated?
Availability is runtime divided by the total scheduled or available time, expressed as a percentage. If a pump ran 22 of 24 hours, its availability for that day is about 92 percent. Runtime and downtime tracking supplies both numbers automatically.
Why use downtime reason codes?
Reason codes turn raw downtime into a breakdown of causes - electrical, mechanical, planned, no feed, operator hold. That lets a team rank the biggest sources of lost production and target improvements, instead of only knowing that equipment was stopped.
How does SCADA track runtime automatically?
It monitors a run indicator such as a motor contactor, discharge pressure, or flow above a threshold, and accumulates time in the running and stopped states. Those totals feed availability reports and operating-hour-based maintenance intervals.
Should short stops count as downtime?
Define a threshold in the tracking configuration and apply it consistently: stops shorter than the threshold are counted as cycles rather than downtime events. Both numbers matter - frequent short cycling is its own reliability problem and often precedes outright failure - but merging them makes availability jumpy and the reason codes meaningless. The threshold itself is a site decision.
What happens to runtime tracking during a telemetry outage?
The central system cannot see the site, so the honest treatment is a distinct unknown or comms-out bucket rather than assuming either state. When the link returns, some systems backfill from device-side totalizers or run-hour registers if the field controller keeps its own count - a strong argument for accumulating runtime at the site controller and treating the central value as a mirror.
Automation services
Need help turning this into a working system?
Merobix integrates SCADA, programs Allen-Bradley and Siemens PLCs, and designs and fabricates industrial control panels.
Meeting requests are reviewed before confirmation.