- Measure time starting at
event.timeStamp
- Measure time ending at
performance.now()
in arequestAnimationFrame()
- Ignore anything that happened while the tab was not focused
- Aggregate data using “% of events that are under target”
- Visualize multiple thresholds
Superhuman CTO recently posted a really useful and well-reasoned approach to setting up web app performance metrics:
Much more here