A robot can be the best witness to what is going on in a work cell. It can record cycle times, sub-cycle times, part counts, errors, and so much more. Cycle time data can be used to infer not just normal cycle times but downtime, time starved or blocked, and short stops. Adding sensors, HMI interactions, or custom Teach Pendant inputs data such as downtime causes, maintenance activities, and other data can be collected. The robot can also be a way to communicate to the cell from a control center via messages and andons.