React · Analytics Implementation

React with KERNSTACK analytics

A React app measures itself on KERNSTACK through a declared analytics project: the stack.json entry carries the project name, its retention, and the write key the browser uses, so instrumentation is part of the reviewed system rather than a third-party script pasted into index.html. Events land in an European, project-owned store the whole team can query and export.

React Analytics

The declaration is small and complete: name, retention_days, write_key_name. Retention as a reviewed line ends the two classic analytics drifts — data kept forever because nobody set a limit, and history lost because a vendor plan changed. Changing it is a plan-visible edit like any other.

In the React code, instrumentation is deliberately unglamorous: send named events with the properties the product questions need, from the moments that matter (activation, first value, invite sent). Because the store is the project’s, joining events to product tables later — which users who did X also did Y — is an export away, not a vendor negotiation.

The sovereignty angle is why many teams arrive here first: no third-party tracker domain, no consent-banner special cases for an external processor, events in the same European zone as the rest of the product. Measurement stops being the exception to the architecture.

CLI

Plan React Analytics, then deploy.

Terminal — CLI workflow kernstack cli
kernstack plan
kernstack plan
kernstack deploy

Docs for React Analytics. Analytics on the platform.

Frequently asked questions

It is a write-only project key by design — it can append events and read nothing. Keep event schemas disciplined (no secrets, no personal data you would not want in an event stream) and rotate by changing the declared key.

Yes — the analytics data belongs to the project and is exportable, so product questions join events to tables on your terms instead of stopping at a dashboard’s prebuilt funnels.

Long enough for year-over-year product questions, short enough to honour your privacy commitments — 400 days is a common deliberate choice. The point is that the number sits in stack.json where a reviewer can challenge it.

Ship your stack on the Software Lifecycle Cloud.

Closed preview on dedicated European infrastructure. Bring a repository or start from a blueprint.