Bulk
Product/OEE & Analytics

Every lost minute, accounted for.

OEE isn't a data-entry chore — it's the by-product of work your operators already do. Every pause becomes a categorised loss, every loss becomes a live number, and the same engine turns the whole floor into KPIs, scheduled reports and exports. No nightly batch, no spreadsheet lag.

Recorded-time OEE, live ~20% OEE uplift on one system No nightly export
In plain terms

What is Bulk OEE & Analytics?

Bulk OEE & Analytics turns the work your operators already do into live OEE. Every pause becomes a categorised loss — Availability, Performance or Quality — every loss becomes a live number, and the same engine rolls the whole floor into KPIs, scheduled reports and exports. No nightly batch, and no spreadsheet lag.

How a loss is born

A pause is already a measurement.

There's no separate OEE step. When an operator pauses a job, they pick why from a list grouped by loss category — and that single tap creates a categorised downtime event, ticking live until work resumes. Try it: pick a reason.

On the floor · pause reason

The operator picks why

Reasons are grouped by OEE category with the most-used surfaced as quick-picks. Choose one and the record on the right writes itself.

Recent
Availability loss
Performance loss
Quality loss
One tap · one event
In the record · OEE event

A categorised loss event

One row in the unified store — open while downtime runs, closed with a computed duration the moment the timer resumes.

EVT-20418 Open
AssetCNC-204 · Bay 3
ReasonChangeover / Setup
CategoryAvailability
Sourcetimer · session #8821
Started11:42:06
Elapsed00:04:12

Pause requires a reason only when the asset type has OEE tracking switched on — otherwise the timer just pauses, clean, with no prompt.

The headline screen

The whole day, hour by hour.

One row per asset, every state change colour-coded — running, downtime by loss category, inactive. Five headline KPIs above, a live OEE score per machine on the left, output on the right. Hover any block; step a day back and the numbers recompute for what you're looking at.

/dashboards/oee-assets
Press Shop — Line 3 Tue 16 Jun Zoom
Assets
Output
Status key Running Availability Performance Quality Inactive Literal view — hover a block for detail
Three buckets, one score

Where the time actually went.

Every downtime reason maps to exactly one of the three standard loss categories. That mapping is what lets the same coloured block on the timeline roll up into an availability, performance or quality story — and into the OEE number itself.

A
Availability

The machine wasn't running.

Unplanned stops, breakdowns, changeovers and waiting — every minute the asset could have produced but didn't.

breakdownchangeoverwaitingplanned stop
P
Performance

Running, but not at pace.

Minor stops, idling and reduced speed — the slow bleed of time when the line is up but under-delivering.

minor stopreduced speedidling
Q
Quality

Made, but not good.

Startup rejects and production rejects — output that ran but never counted as a sellable part.

startup rejectsproduction rejects
Availability
94.2%
×
Performance
91.0%
×
Quality
98.6%
=
OEE
84.5%
Built for the wall

Six widgets, one OEE story.

Drop them onto any operations board, scope them to a set of assets and a date range, and they refresh as the line moves. The biggest reasons you lose time, the biggest reasons you lose money, where output sits against target — and what's down right now.

78.5%
Target
85%
Gap
−6.5
Downtime
11.2h
Assets
5

OEE Scorecard

breakdown
2 wks agotoday
Target 85% · avg 71%

OEE Trend

daily · 14d
  • Breakdown4.6h
  • Changeover3.1h
  • Reduced speed1.9h
  • Startup rejects0.9h

Reasons Pareto

by hours
  • Breakdown£3,910
  • Changeover£2,580
  • Waiting£1,490
  • Minor stop£860

Loss Pareto

cost · £
  • 1WELD-12Weld cell64%
  • 2MILL-1183-axis mill76%
  • 3LASER-02Fibre laser81%
  • 4CNC-204Press86%
  • 5BRAKE-07Press brake86%

Asset Leaderboard

worst-first
  • WELD-12Equipment breakdown12:48
  • MILL-118Minor stop03:21
  • LASER-02Changeover — closed18:40

Live Downtime Feed

open + recent
The measurement layer

One number, everywhere it's needed.

OEE is one reading among many. The same engine that fills the timeline measures everything else the floor does — and every surface draws from the same source. The number on the board is the number in the report, the invoice and the export.

KPIs that compute themselves

Define a metric once and pull its value from production, audits, incidents or a formula — or type it by hand. Set targets on a week matrix, submit actuals daily, each stamped pass or fail.

live metric

Reports that deliver themselves

Six branded report types, scheduled by weekday and timezone, rendered to PDF and emailed with a one-click secure link. OEE per asset, per operator, production, quality and 5S.

on a timer

Exports anyone can build

A five-step wizard turns any table into a CSV, XLSX or JSON — pick fields, resolve linked references, filter, preview. Save it as a template, schedule it for recurring delivery.

no code
The KPI engine

Five ways to source one metric.

Where a KPI's value comes from is a choice, not a constraint. Most numbers shouldn't be typed at all — wire them to the work and they keep themselves current, climbing from typed-by-hand to fully derived.

1

Manual

Typed each period through the daily form, grouped by category.

by hand
2

Audits

Total, pass-rate or average score off an audit template.

audit metric
3

Production

On-time delivery, right-first-time, quantity, value or buffer — with filters.

computed
4

Incidents

A count of safety incidents by type and status.

counted
5

Formula NEW

A token chain combining other KPIs with operators and functions.

derived
Define once
Category, unit, goal

name · unit · aggregation
operator ≥ ≤ =

Plan weekly
Target matrix

Mon–Sun grid per week
copy · quick-fill · clear

Submit daily
Actual vs target

one form, by category
stamped pass / fail

Delivery

It leaves the building on its own.

Two paths out: a branded PDF that lands in inboxes on a schedule, and a no-engineering export wizard for the analysts who want the raw rows. Both run on cron, both deliver by secure link.

Scheduled reports

Six report types, on a timer

Pick a type and time period, set who gets it and when. The pipeline gathers, renders, converts to PDF and emails — failures logged, never silent.

OEE per asset
OEE per operator
Production overview
Quality overview
Pre-use checks
5S area
Weekdays at 07:00 · Europe/London · 4 recipients
Export wizard

Any table, five steps, no code

From source table to a downloadable file — saved as a reusable template you can run on demand or schedule.

1Select tableProduction, inbound, KPI, settings, projects or users.
2Configure fieldsToggle, reorder, rename — choose how arrays flatten.
3Linked fieldsResolve foreign keys into readable columns.
4FiltersAND / OR conditions with a live row-count.
5Preview & runSample the rows, then export or save the template.
CSVXLSXJSON
Underneath it all

Why it's never two days behind.

Heavy analytical scans never touch the live floor system. A background pipeline mirrors your tables to a columnar store on a fast and a full cadence, and every analytics surface queries that — so the timeline, the widgets and the reports stay current without a nightly job.

Source · the floor

Live tables

Jobs, timer sessions, OEE events, quality, orders and more — the operational truth as it happens.

jobstimersoee_eventsquality
Pipeline · snapshot

Parquet, two cadences

A durable job queue exports each table to columnar files in object storage.

Fast~5 min
Full~30 min
Query · the surfaces

Columnar OLAP

Timelines, board widgets and the heavier reports run SQL against the loaded snapshot — fast, and out of the floor's way.

timelinewidgetsreports

Every number on the board is the same number in the report, the invoice and the live dashboard — no manual re-entry, and no nightly export.

Why teams switch

Measured by doing the work.

No separate data entry
OEE as a
by-product
A pause and a reason are the only inputs — the rest is computed from work operators already do.
One live system
~20% OEE
uplift
The typical lift once a floor stops guessing and runs on one live record of every machine.
Always current
Refreshes in
minutes
A fast snapshot every few minutes keeps every analytics surface honest — no two-day-old dashboards.
One source of truth
Board =
report
The same number powers the wall display, the scheduled PDF, the export and the invoice.
Wired in

Analytics doesn't sit in a silo.

Running time, downtime, KPIs and reports all reach into the modules that produce them — measurement is connected to everywhere the work actually happens.

Production

Timer sessions are the source of running time; pausing a job is what creates every timer-sourced OEE event.

Boards & Dashboards

The six OEE widgets and the KPI chart read the same snapshot — KPIs are a first-class board data source.

People

Re-stack the same timeline per operator — rows become people, and each links to an employee record.

Quality & Safety

Quality overview reports and incident-sourced KPIs feed straight from the QA and safety modules.

Settings & Master data

Assets, units, categories and the downtime-reason library configure what gets measured and how it renders.

Invoicing

The same production figures that drive OEE and KPIs feed value and quantity straight into billing.

Straight answers

Questions, answered.

01

What is Bulk OEE & Analytics?

It turns the work operators already do into live OEE: every pause is captured as a categorised loss, every loss becomes a live number, and the same engine rolls the floor into KPIs, scheduled reports and exports.

02

Do I have to enter data to get OEE?

No. OEE isn't a data-entry chore here — it's the by-product of the work your operators already do, so the numbers build themselves as the floor runs.

03

How are losses categorised?

Every pause is sorted into Availability, Performance or Quality, so a stoppage becomes a reasoned loss rather than an unexplained gap in the day.

04

Is the OEE live or a nightly batch?

It's live. Every loss becomes a live number as it happens — no nightly export and no spreadsheet lag before you can see where the time went.

05

Can I get KPIs, reports and exports out of it?

Yes. The same engine that scores OEE turns the whole floor into KPIs, scheduled reports and exports, so the numbers reach the people who need them without extra tools.

06

Can I see OEE per machine across the day?

Yes. The live timeline lays out each asset run by run, showing where it was running, down or idle — with every downtime segment tied to its loss reason.

Stop guessing where the time goes.

We'll take one shift from one of your machines and walk it the whole way — pause to reason to loss to live OEE — so you can see the picture it draws.