What is event instrumentation?
The work of making your product record user actions as named events, the foundation every funnel, retention curve, and cohort is built on.
What makes up an event
Instrumentation is getting three things right for every event, consistently:
- ·A name. What happened, like signup_completed. This has to be consistent, because signup, sign_up, and Signup are three different events to a query engine.
- ·A per-user id. A distinct_id so the event joins to that person's other activity, and their browser and server events land on one timeline.
- ·Properties. The context, like plan, amount, or source. Missing properties are why a breakdown you want later turns out to be impossible.
How events actually get instrumented
There is more than one way to get events flowing, and they trade off speed, precision, and how much history you have.
Most teams need all three: broad autocapture for the floor, retroactive defined events for the clean cases, and agent-written custom events for the moments a click cannot express.
Let the agent instrument, then prove it fires
In smolanalytics you do not hand-write and hand-check every track call. On top of autocapture, you connect your coding agent (Cursor, Claude Code) over MCP and it does the instrumentation for you:
The verify step is the part that matters: most instrumentation bugs are events that were added but silently never fire, so you find out months later that a funnel has a hole. Proving each event fires before you trust it closes that gap. And for the clean cases you skip code entirely and name a defined event from clicks you already captured, retroactive to install.
To keep names from drifting once instrumented, smolanalytics also has a committed tracking plan with drift gates. See every feature.