Add deployment files and marketing content
- deploy.sh: Zero-downtime deployment script for HOALedgerIQ - content/: Generated content files (blog outlines, social posts, images) - marketing/: Marketing content and daily summaries - marketing-content/: Archived marketing content with research and tracking - marketing-content-2026-03-25.md: Initial marketing content archive
This commit is contained in:
81
marketing-content/ga4-calculator-tracking.txt
Normal file
81
marketing-content/ga4-calculator-tracking.txt
Normal file
@@ -0,0 +1,81 @@
|
||||
<!-- Google Analytics 4 Event Tracking for ROI Calculator -->
|
||||
<!-- Add this to your homepage, after the GA4 base tag -->
|
||||
|
||||
<script>
|
||||
// Wait for DOM to load
|
||||
document.addEventListener('DOMContentLoaded', function() {
|
||||
|
||||
// Track calculator modal opens
|
||||
const calcOpenBtn = document.querySelector('[data-calc-open], .calc-trigger, button[id*="calc"]');
|
||||
if (calcOpenBtn) {
|
||||
calcOpenBtn.addEventListener('click', function() {
|
||||
gtag('event', 'calculator_open', {
|
||||
'event_category': 'engagement',
|
||||
'event_label': 'ROI Calculator Modal Opened'
|
||||
});
|
||||
console.log('GA4: calculator_open event sent');
|
||||
});
|
||||
}
|
||||
|
||||
// Track form submissions
|
||||
const calcForm = document.querySelector('form[id*="calc"], form[class*="calc"]');
|
||||
if (calcForm) {
|
||||
calcForm.addEventListener('submit', function(e) {
|
||||
// Get form values (anonymized)
|
||||
const homesites = this.querySelector('input[name*="home"]')?.value || 'unknown';
|
||||
const propertyType = this.querySelector('select[name*="type"]')?.value || 'unknown';
|
||||
|
||||
gtag('event', 'calculator_submit', {
|
||||
'event_category': 'conversion',
|
||||
'event_label': 'ROI Calculator Submitted',
|
||||
'value': 1,
|
||||
'homesites': homesites,
|
||||
'property_type': propertyType
|
||||
});
|
||||
|
||||
console.log('GA4: calculator_submit event sent');
|
||||
});
|
||||
}
|
||||
|
||||
// Track API response (success/failure)
|
||||
// You'll need to hook this into your existing submit handler
|
||||
window.trackCalculatorSuccess = function(data) {
|
||||
gtag('event', 'calculator_success', {
|
||||
'event_category': 'conversion',
|
||||
'event_label': 'ROI Calculator Results Shown',
|
||||
'value': 1,
|
||||
'annual_income': data.annual_income || 'unknown',
|
||||
'reserve_funds': data.reserve_funds || 'unknown'
|
||||
});
|
||||
console.log('GA4: calculator_success event sent');
|
||||
};
|
||||
|
||||
window.trackCalculatorError = function(error) {
|
||||
gtag('event', 'calculator_error', {
|
||||
'event_category': 'error',
|
||||
'event_label': 'ROI Calculator Error',
|
||||
'error_message': error?.message || 'unknown'
|
||||
});
|
||||
console.log('GA4: calculator_error event sent');
|
||||
};
|
||||
|
||||
});
|
||||
</script>
|
||||
|
||||
<!--
|
||||
INSTALLATION INSTRUCTIONS:
|
||||
1. Add this script AFTER your GA4 base tag (gtag.js)
|
||||
2. Make sure gtag is initialized (your site already has this)
|
||||
3. Test in browser console - you should see "GA4: calculator_open event sent" when clicking calculator
|
||||
4. Check GA4 Realtime report to verify events are coming through
|
||||
|
||||
TRACKED EVENTS:
|
||||
- calculator_open: User opens the calculator modal
|
||||
- calculator_submit: User submits the form
|
||||
- calculator_success: API returns results successfully
|
||||
- calculator_error: API call fails
|
||||
|
||||
These will appear in GA4 under:
|
||||
- Reports → Engagement → Events
|
||||
- Realtime → Event count (for testing)
|
||||
-->
|
||||
Reference in New Issue
Block a user