This is the main dashboard. Navigation between sections will trigger interest tracking.
Scroll down to see the score increase.
Browsing this section increases interest in Technology, Gadgets, and Software.
Manually manage visitor tags:
Exploring this section adds Science, Space, and Physics to your interest profile.
This box has its own specific category: Biology.
This section is all about Sports, Football, and Health.
This view shows the raw and normalized data stored in your client-side profile.
Use this to clear all tracking data and start fresh.
Learn how to use and interact with the gtoAnalytics SDK.
Add the SDK to your page using a standard script tag:
<script src="dist/gtoAnalytics.js"></script>
Scores are awarded based on user behavior:
data-analytics-weight="X" to links to award X
points on click.Interests are tracked via data-categories attributes on elements or meta tags.
<div data-categories="technology, gadgets">...</div>
You can also manually trigger a scan for new content (e.g., in SPAs):
window.gtoAnalytics.trackInterests(element);
Normalized metrics allow you to compare visitors fairly, regardless of their total time or visit count.
Important: Define window.GTO_ANALYTICS_CONFIG before including the
SDK script tag to ensure settings are applied correctly during initialization.
window.GTO_ANALYTICS_CONFIG = {
scoreThreshold: 20, // Points increment to trigger sync
timeThreshold: 60, // Max seconds between syncs
syncOnExit: true, // Final sync on page leave
scoring: {
scrollPoints: 2, timePoints: 2, timeInterval: 10,
mousePoints: 2, mouseMileageThreshold: 100000,
touchPoints: 2, touchTapThreshold: 10, videoPoints: 2
},
urlTracking: {
enabled: true, // Extract categories from URL path
offset: 0 // Path segments to skip
},
onSync: async (profile) => {
// Optional: Custom data transport hook
}
};
Set the default API endpoint via window.GTO_ANALYTICS_API_URL.
| Method | Description |
|---|---|
addTag(tag) |
Adds a persistent tag to the profile. |
removeTag(tag) |
Removes a tag from the profile. |
resetProfile() |
Clears all data and starts fresh. |
syncProfile(force) |
Triggers a sync. Set force=true to bypass thresholds. |
onSync(profile) |
Custom hook in GTO_ANALYTICS_CONFIG to handle sync
externally. |
getNormalizedMetrics() |
Returns intensity, loyalty, and tenure metrics. |