
Security News
How Enterprise Security Is Adapting to AI-Accelerated Threats
Socket CTO Ahmad Nassri discusses why supply chain attacks now target developer machines and what AI means for the future of enterprise security.
@wix/analytics
Advanced tools
A type-safe Wix Analytics SDK for tracking events in Wix applications. This package provides a browser-only interface that proxies to the global window.wixAnalytics.trackEvent method with full TypeScript support for all standard Wix Analytics events.
npm install @wix/analytics
import { trackEvent, registerEventListener } from "@wix/analytics";
// Track standard Wix Analytics events with type safety
trackEvent("AddToCart", {
name: "Example Product",
price: 29.99,
currency: "USD",
category: "Electronics",
quantity: 1,
});
// Track events without parameters
trackEvent("CompleteRegistration");
// Track custom events
trackEvent("custom_button_click", {
eventCategory: "user_interaction",
eventAction: "click",
eventLabel: "header_cta",
});
// Register an event listener to monitor analytics events
registerEventListener((eventName, eventData) => {
console.log(`Analytics event tracked: ${eventName}`, eventData);
});
window.wixAnalytics is availabletrackEvent(eventName, eventData?)Track a Wix Analytics event with type-safe event data.
Parameters:
eventName - Name of the event to track (supports standard Wix events and custom events)eventData - Event data typed according to the event name (optional for some events)registerEventListener(eventHandler)Register an event listener for Wix Analytics events. The listener will be called whenever analytics events are tracked.
Parameters:
eventHandler - Callback function that will be invoked when analytics events are tracked
eventName - Name of the tracked eventeventData - Event data associated with the tracked eventThe package provides full TypeScript support for all standard Wix Analytics events:
// Add product to cart
trackEvent("AddToCart", {
name: "Product Name",
price: 29.99,
currency: "USD",
category: "Electronics",
quantity: 1,
});
// Track purchase
trackEvent("Purchase", {
id: "order_123",
revenue: 99.99,
contents: [
{
name: "Product 1",
price: 49.99,
quantity: 2,
},
],
});
// Initiate checkout
trackEvent("InitiateCheckout", {
contents: [
{
name: "Product Name",
price: 29.99,
quantity: 1,
},
],
});
// Click on product
trackEvent("ClickProduct", {
name: "Product Name",
category: "Electronics",
position: "1",
});
// View content
trackEvent("ViewContent", {
name: "Product Name",
category: "Electronics",
price: 29.99,
});
// Lead generation
trackEvent("Lead", {
category: "contact",
action: "form_submit",
});
// User registration (no parameters needed)
trackEvent("CompleteRegistration");
// Schedule appointment (no parameters needed)
trackEvent("Schedule");
// Start payment process
trackEvent("StartPayment", {
option: "PayPal",
});
// Add payment info
trackEvent("AddPaymentInfo", {
option: "Visa",
});
// Custom events with flexible parameters
trackEvent("custom_event_name", {
eventCategory: "user_interaction",
eventAction: "click",
eventLabel: "navigation_menu",
eventValue: 1,
});
You can register event listeners to monitor analytics events as they are tracked:
import { registerEventListener } from "@wix/analytics";
// Register a listener for all analytics events
registerEventListener((eventName, eventData) => {
console.log(`Event tracked: ${eventName}`, eventData);
// Perform custom logic based on event type
if (eventName === "Purchase") {
console.log("Purchase completed!", eventData);
}
});
// Multiple listeners can be registered
registerEventListener((eventName, eventData) => {
// Send to external analytics service
sendToExternalService(eventName, eventData);
});
The package exports comprehensive TypeScript types for all events:
import type {
WixAnalyticsEventName,
WixAnalyticsEventData,
TrackingParametersAddToCartEvent,
TrackingParametersPurchaseEvent,
TrackingParametersCustomEvent,
} from "@wix/analytics";
// Type-safe event data
const addToCartData: TrackingParametersAddToCartEvent = {
name: "Product Name",
price: 29.99,
currency: "USD",
};
trackEvent("AddToCart", addToCartData);
// Type-safe event listener
registerEventListener<WixAnalyticsEventName>((eventName, eventData) => {
// eventName and eventData are fully typed
console.log(`Event: ${eventName}`, eventData);
});
This package is designed to work in browser environments only where the Wix Analytics global object is available. It requires:
window.wixAnalytics.trackEvent method to be availableIf these requirements are not met, the package will log warnings and gracefully handle the missing dependencies.
The package includes built-in error handling:
window.wixAnalytics.trackEvent is not availableMIT
FAQs
Wix Analytics SDK package for event tracking
We found that @wix/analytics demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 30 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Socket CTO Ahmad Nassri discusses why supply chain attacks now target developer machines and what AI means for the future of enterprise security.

Security News
Learn the essential steps every developer should take to stay secure on npm and reduce exposure to supply chain attacks.

Security News
Experts push back on new claims about AI-driven ransomware, warning that hype and sponsored research are distorting how the threat is understood.