Privacy-focused, cookieless analytics for your website. Simple integration with just a few lines of code.
Install the package using your preferred package manager:
# npm
npm install @betterlytics/tracker
# yarn
yarn add @betterlytics/tracker
# pnpm
pnpm add @betterlytics/tracker
# bun
bun add @betterlytics/trackerImport and initialize Betterlytics in your application:
import betterlytics from "@betterlytics/tracker";
// Initialize Betterlytics
betterlytics.init("your-site-id");
// Track custom events
betterlytics.event("newsletter-signup");
betterlytics.event("button-click", { button: "cta-header" });You can also initialize Betterlytics with optional parameters like this:
import betterlytics from "@betterlytics/tracker";
// Initialize Betterlytics with optional configurations
betterlytics.init("your-site-id", {
dynamicUrls: ["/users/*", "/products/*"], // optional
});Track user interactions and conversions with custom events. Learn more about custom events in our documentation.
// Track conversions
betterlytics.event("purchase", {
product: "premium-plan",
value: 29.99,
currency: "USD",
});
// Track engagement
betterlytics.event("video-play", {
video: "onboarding-tutorial",
duration: 120,
});Dynamic URLs contain variable segments that change based on user context, making them difficult to analyze collectively. Betterlytics supports single (*) and double (**) wildcards to normalize these URLs. Learn more about dynamic URLs in our documentation.
betterlytics.init("your-site-id", {
dynamicUrls: ["/users/*", "/products/*/reviews", "/blog/**"],
});Web Vitals tracking is disabled by default. Web Vitals in our documentation.
To enable tracking of Core Web Vitals:
betterlytics.init("your-site-id", {
enableWebVitals: true,
});Outbound Links are the external links your users click on on your site.
Only the domain of these links are tracked by default. Outbound Links in our documentation.
To track the full Outbound Links, and not just the domain:
betterlytics.init("your-site-id", {
outboundLinksMode: "full",
});To disable Outbound Link tracking:
betterlytics.init("your-site-id", {
disableOutboundLinks: true,
});siteId: Your unique site identifier from your Betterlytics Dashboard
dynamicUrls: Array of URL patterns to normalize (e.g.,['/users/*', '/products/*'])serverUrl: Custom tracking server URL (defaults tohttps://betterlytics.io/track)scriptUrl: Custom analytics script URL (defaults tohttps://betterlytics.io/analytics.js)enableWebVitals: Boolean value for enabling Web Vitals tracking (defaults tofalse)disableOutboundLinks: Boolean value for disabling Outbound Link tracking (defaults tofalse)outboundLinksMode: Mode for what is being tracked for Outbound Links (Options:"domain" | "full"defaults to"domain")debug: Boolean value for console warnings (defaults tofalse)
MIT