Problem
Landingi customers needed data on how visitors behave on their landing pages, so they could understand their own customers better and choose content more accurately, which in turn means more leads and more sales. And they needed it without configuring tools or pasting code. The answer is analytics built into the platform that collects events automatically on every published page.
My role
The whole client-side architecture and the frontend implementation: the analytics dashboard and the tracking script. I designed the data flow myself; only storing the data on the backend was outside my scope.
Challenges
01 · A script that must not cost customers their scores
The script runs on customers’ pages, so every kilobyte and millisecond weighs on their Core Web Vitals. I wrote it in plain TypeScript with minimal dependencies and a Vite config tuned for bundle size; the output weighs under 25 kB. Events are sent with sendBeacon and throttled on the client so they don’t load the main thread or the visitor’s network.
02 · A dashboard for a high volume of events
Pagination instead of loading full data sets, request caching and deduplication with SWR, and optimistic UI for configuration changes so the interface responds instantly.
Outcomes
- Events collected from over 1.2 million sessions a day.
- EventTracker data became the basis for more than a dozen further platform features.
- Access to the data is monetised separately in the subscription.