Documentation

Everything you need to install vibestat and ship custom events.

1. Install the snippet

Add this to your <head> on every page you want to measure:

<script defer
  src="https://vibestat.app/tracker.js"
  data-key="wk_••••••••••••••••••••••"></script>

Options

2. Custom events

Track conversions, signups, clicks — anything that matters:

window.vibestat("signup_clicked", { plan: "pro" });
window.vibestat("video_completed");
document.querySelector("#cta")?.addEventListener("click", () =>
  vibestat("cta_clicked", { variant: "hero-v2" })
);

Event names are capped at 64 chars. Properties must be strings, numbers, or booleans.

3. Single-page apps

No setup required. The tracker patches history.pushState, history.replaceState, and listens for popstate + hashchange to fire pageviews automatically.

4. Web Vitals

LCP, FCP, CLS, INP and TTFB are sent automatically on pagehide. No extra config.

5. Self-hosting

Clone github.com/Niki92i/vibestat, set VIBESTAT_SALT_SEED, and deploy with the included Dockerfile.

6. API

All endpoints are documented in the README. Owner-token authentication via Authorization: Bearer ot_….