What is autocapture?
Analytics that records interactions automatically from one snippet, so the data is already there when you think of the question, no per-event tracking code.
What autocapture actually captures
The whole point is breadth without code. From one snippet, autocapture records the interactions below, and for clicks it keeps the element (the $elements selector chain) so you can turn any of them into a named event later.
Autocapture vs manual instrumentation
With manual event tracking, you get data for an event only after you write a track() call for it and deploy. So on the day you wonder "how many people click the export button?" you find you never instrumented it, add the code, ship it, and wait a week for data. Every new question starts from zero.
Autocapture flips that. Because it recorded the click and the element from the day you installed, the answer is already in your data, retroactive to install, no deploy. The cost is that the captured events are generic: a click on button.btn-primary is not the same as "upgraded to Pro" until you name it. That is why autocapture pairs with event instrumentation: autocapture gives you the raw breadth, named events give the raw clicks their business meaning.
Zero code in, named events out
smolanalytics autocaptures pageviews, clicks (with the full $elements selector chain), scroll depth, engagement, rage clicks, dead clicks, JS exceptions, and form submits from one snippet. You write no tracking code to get started.
Then, when you need business meaning, you have two zero-friction paths. You can name a defined event from clicks you already captured, retroactive to install, no code and no agent (the Heap move). Or you connect your coding agent (Cursor, Claude Code) over MCP and it reads the repo, writes the custom track() calls, and proves each one fires. So autocapture is the floor, not the ceiling.
It deliberately does not do session replay or heatmaps. See every feature or how it compares vs PostHog.