Chrome Extension • MV3 • Auto-stop on text • Privacy-first
Puncto Timer measures elapsed time between any two browser interactions — down to the millisecond. No setup. No permissions beyond what's needed.
How it works
Mode 1 — Manual
Right-click any element and select "Start Puncto Timer". If it's a button or link, it's clicked automatically and the timer starts instantly.
An overlay in the top-right corner shows the live elapsed time ticking. No need to open the popup.
Press Space, click Stop in the overlay, or use the popup. Get the precise elapsed time in milliseconds and seconds.
Mode 2 — Watch for Text (auto-stop)
Right-click the element you want to trigger and select "Start Puncto Timer — Watch for Text".
An overlay prompts you to enter the text you expect to appear — e.g. "Order confirmed" or "Success". Press ▶ or Enter.
The element is clicked, the timer starts, and a MutationObserver watches the DOM. The timer stops the instant that text appears — no manual action needed.
Use cases
Measure time-on-task for usability studies — from first click to task completion.
Record how long users take to fill out forms, find buttons, or complete checkout flows.
Capture stimulus-to-response intervals for research, games, or personal benchmarks.
Time how long UI interactions take — page transitions, modal opens, API roundtrips.
Measure read time, video segment length, or time between key content moments.
Right-click, stop, repeat. Whatever you need to measure, Puncto stays out of the way.
Features
Timestamps captured via Date.now() at the moment of right-click. No rounding, no delay.
Context menu appears on any page, any element — links, buttons, text, images, anything.
Only contextMenus and storage permissions. No tabs, no browsing history, no network.
Built on Manifest V3 with a service worker. Lightweight, modern, and future-proof.
No server calls. No analytics. Works completely offline once installed.
Install and go. No account, no configuration, no onboarding.
Type the text you expect to appear — e.g. "Success" — and the timer stops automatically when it appears in the DOM via MutationObserver.
Right-clicking a button or link fires it automatically — no extra click needed to start your timed flow.