For Static Quarto Dashboards:
Event Tracking - Track user interactions with custom events:
Button clicks, filter changes, tab switches
Use JavaScript event listeners in Quarto
Send events to analytics platform via API
Session Analysis - Monitor user sessions:
Page views, time on page, bounce rate
User flow through dashboard sections
Identify drop-off points
Custom Dimensions - Track dashboard-specific metrics:
Selected filters, date ranges, visualization types
User cohorts, roles, or departments
Dashboard version or configuration
Example Integration (Plausible Analytics):
Add to your Quarto dashboard header:
<script defer data-domain="yourdomain.com"
src="https://plausible.io/js/script.tagged-events.js"></script>
Track custom events in your dashboard JavaScript:
// Track filter change
document.getElementById('regionFilter').addEventListener('change', function(e) {
plausible('Filter Changed', {props: {filter: 'region', value: e.target.value}});
});// Track visualization interaction
plotElement.on('plotly_click', function(data) {
plausible('Chart Interaction', {props: {chart: 'sales_plot', action: 'click'}});
});
Analyzing Results with BID Framework:
While these analytics tools won't automatically integrate with bid_ingest_telemetry(),
you can still apply BID framework principles:
Notice - Export analytics data, identify friction points manually
Interpret - Use bid_interpret() with insights from analytics
Anticipate - Apply bid_anticipate() to plan improvements
Structure - Design improvements with bid_structure()
Validate - Measure impact with before/after analytics comparison