Stopwatches can be used to perform user defined timing functionality. You can create any number of stopwatches to use throughout your macros to measure time, or to trigger a macro when a stopwatch reaches a certain time.
The stopwatch configuration screen allows you to add and delete stop watches. From this screen you can also start/stop and reset each individual stopwatches as well as seeing the current value.
Note that stopwatches are not actually ticking every second when the app is in the background (They don't keep the device awake). Instead the device will be scheduled to wakeup at a certain offset from the stopwatch start time (in the case of the trigger). Therefore you can use as many stopwatches as you like and there will be no impact on battery life.
To make use of stopwatches, MacroDroid offers the following features:
The trigger can be used to invoke a macro when a stopwatch reaches a certain time value. This time value will typically be a fixed period (e.g. one hour). But you may also configure it to trigger when the value reaches a variables value in which case the value will be in seconds.
The action can be used to start, pause and restart a stopwatch.
This action can be used to limit when a macro or feature can work depending on the value of the stopwatch. For example you can limit a macro to only run the value of a particular stopwatch is greater than 10 minutes.
You could measure the length of time spent using an app by using the app launched/closed trigger to start and stop a stopwatch. You could then periodically (e.g. once a day output the value and reset it). You could also make an alert appear when the stop watch reaches a certain value (e.g. display a warning that you have been using an app for 1 hour)