Μετάβαση στο κύριο περιεχόμενο

Web SDK: UTM και απόδοση

Αυτή η σελίδα καλύπτει την παρακολούθηση UTM και την απόδοση καμπάνιας στο Joryio Web SDK. Για εγκατάσταση, ρυθμίσεις και την πλήρη αναφορά API, δείτε τον οδηγό Web SDK.

Το SDK καταγράφει αυτόματα παραμέτρους UTM από URLs για απόδοση καμπάνιας και analytics μάρκετινγκ. Αυτό σάς επιτρέπει να παρακολουθείτε ποιες καμπάνιες φέρνουν μετατροπές και να αναλύετε το funnel χρηστών.

Αυτόματη καταγραφή UTM

Από προεπιλογή, το SDK καταγράφει όλες τις τυπικές παραμέτρους UTM όταν υπάρχουν στο URL:

  • utm_source - Πηγή καμπάνιας (π.χ. "google", "newsletter")
  • utm_medium - Μέσο μάρκετινγκ (π.χ. "email", "cpc", "social")
  • utm_campaign - Όνομα καμπάνιας (π.χ. "summer_sale", "product_launch")
  • utm_content - Περιεχόμενο ή παραλλαγή διαφήμισης (π.χ. "banner_v1", "link_in_bio")
  • utm_term - Λέξεις-κλειδιά πληρωμένης αναζήτησης (π.χ. "running+shoes")

Καταγράφονται επίσης:

  • referrer - HTTP referrer (π.χ. "https://google.com")
  • landing_page - Πλήρες URL σελίδας προορισμού με παραμέτρους ερωτήματος
// Example URL:
// https://example.com/pricing?utm_source=google&utm_medium=cpc&utm_campaign=spring_sale

// All events will automatically include:
{
utm_source: "google",
utm_medium: "cpc",
utm_campaign: "spring_sale",
referrer: "https://google.com/search?q=...",
landing_page: "https://example.com/pricing?utm_source=google&utm_medium=cpc&utm_campaign=spring_sale"
}

Απόδοση πρώτης και τελευταίας επαφής

Το SDK παρακολουθεί και την πρώτη επαφή (απόδοση εφ’ όρου ζωής) και την τελευταία επαφή (πρόσφατη απόδοση):

Πρώτη επαφή - καταγράφεται στην πρώτη επίσκεψη του χρήστη και δεν αντικαθίσταται ποτέ:

first_touch_utm_source: "facebook"
first_touch_utm_medium: "social"
first_touch_utm_campaign: "awareness_campaign"
first_touch_landing_page: "https://example.com/?utm_source=facebook..."
first_touch_captured_at: "2024-01-15T10:30:00Z"

Τελευταία επαφή - ενημερώνεται κάθε φορά που εντοπίζονται νέες παράμετροι UTM:

last_touch_utm_source: "google"
last_touch_utm_medium: "cpc"
last_touch_utm_campaign: "conversion_campaign"
last_touch_landing_page: "https://example.com/pricing?utm_source=google..."
last_touch_captured_at: "2024-02-20T15:45:00Z"

Αυτό το μοντέλο διπλής απόδοσης βοηθά να απαντήσετε:

  • Πρώτη επαφή: «Από πού ήρθε αρχικά αυτός ο χρήστης;»
  • Τελευταία επαφή: «Ποιο ήταν το τελευταίο σημείο επαφής πριν από τη μετατροπή;»

Επιλογές ρυθμίσεων

const joryio = new JoryioSDK({
sdkKey: 'jry_sdk_web_...',

// UTM tracking is enabled by default
captureUTM: true,

// Start new session when campaign changes
resetSessionOnNewCampaign: false,

});

Λεπτομέρειες ρυθμίσεων:

  • captureUTM (προεπιλογή: true) - Καταγράφει αυτόματα παραμέτρους UTM από το URL
  • resetSessionOnNewCampaign (προεπιλογή: false) - Ξεκινά νέα συνεδρία όταν αλλάζουν οι παράμετροι UTM (παρόμοιο με το Amplitude)
  • Ο referrer και η σελίδα προορισμού περιλαμβάνονται στις ιδιότητες συμβάντος από προεπιλογή.

Παρακολούθηση UTM σε επίπεδο συνεδρίας

Οι παράμετροι UTM αποθηκεύονται στο επίπεδο της συνεδρίας, επιτρέποντάς σας να αναλύετε ολόκληρο το journey χρήστη:

// User arrives from Google Ads campaign
// URL: ?utm_source=google&utm_medium=cpc&utm_campaign=spring_sale

// First event in session
joryio.track('Page Viewed', { page: '/landing' });
// Includes: utm_source, utm_medium, utm_campaign, referrer, landing_page

// User navigates to pricing (no UTM in URL)
joryio.track('Page Viewed', { page: '/pricing' });
// Still includes: utm_source="google", utm_medium="cpc", utm_campaign="spring_sale"

// All events in this session will carry the campaign attribution
joryio.track('Trial Started');
// Includes: utm_source="google", utm_medium="cpc", utm_campaign="spring_sale"

Επαναφορά συνεδρίας σε νέα καμπάνια

Ενεργοποιήστε το resetSessionOnNewCampaign για να ξεκινούν νέες συνεδρίες όταν οι χρήστες φτάνουν από διαφορετικές καμπάνιες:

const joryio = new JoryioSDK({
sdkKey: 'jry_sdk_web_...',
resetSessionOnNewCampaign: true,
});

// Session 1: User from Facebook
// URL: ?utm_source=facebook&utm_medium=social
// session_id: "sess_123"

// Session 2: Same user returns from Google (new session starts)
// URL: ?utm_source=google&utm_medium=cpc
// session_id: "sess_456" (new session ID)

Είναι χρήσιμο για:

  • Ακριβή analytics συνεδριών σε επίπεδο καμπάνιας
  • Αποτροπή σύγχυσης στην απόδοση όταν οι χρήστες φτάνουν από πολλές καμπάνιες
  • Ανάλυση συμπεριφοράς χρήστη ανά καμπάνια

Μη αυτόματες ενημερώσεις UTM (SPAs)

Για Single Page Applications που αλλάζουν URL χωρίς ανανέωση σελίδας:

// When URL changes in your SPA
window.addEventListener('popstate', () => {
joryio.updateUTM();
});

// Or in your router
router.on('route-change', () => {
joryio.updateUTM();
});

// React Router example
import { useEffect } from 'react';
import { useLocation } from 'react-router-dom';

function App() {
const location = useLocation();

useEffect(() => {
// Update UTM on route change
joryio.updateUTM();
}, [location]);
}

Πρόσβαση σε δεδομένα UTM

Λάβετε δεδομένα UTM προγραμματιστικά:

// Get all UTM data
const utmData = joryio.getUTMData();

console.log(utmData);
// {
// current: {
// utm_source: "google",
// utm_medium: "cpc",
// utm_campaign: "spring_sale",
// referrer: "https://google.com",
// landing_page: "https://example.com/?utm_source=google...",
// captured_at: 1705319400000
// },
// firstTouch: {
// utm_source: "facebook",
// utm_medium: "social",
// utm_campaign: "awareness",
// captured_at: 1704715200000
// },
// lastTouch: {
// utm_source: "google",
// utm_medium: "cpc",
// utm_campaign: "spring_sale",
// captured_at: 1705319400000
// }
// }

// Use in your application
const { current, firstTouch, lastTouch } = joryio.getUTMData();

if (current?.utm_source === 'google') {
// Show special offer for Google traffic
}

Περιπτώσεις χρήσης

1. Ανάλυση απόδοσης καμπάνιας

// Track conversions with full attribution
joryio.track('Order Completed', {
order_id: 'order_123',
revenue: 99.99
});
// Automatically includes UTM parameters for attribution

2. Παραλλαγές καμπάνιας A/B test

// Track which ad creative drives conversions
// URL: ?utm_content=banner_v1
joryio.track('Signup Completed');
// Can analyze: which utm_content value has highest conversion rate

3. Απόδοση πολλαπλών επαφών

// See the full user journey
const { firstTouch, lastTouch } = joryio.getUTMData();

joryio.track('Purchase', {
order_value: 299.99,
// First touch: where they came from originally
discovered_via: firstTouch?.utm_source,
// Last touch: what drove the final conversion
converted_via: lastTouch?.utm_source
});

4. Ανάλυση funnel

// Analyze drop-off by campaign
joryio.track('Checkout Started'); // Auto-includes UTM
joryio.track('Payment Info Added'); // Same UTM
joryio.track('Order Completed'); // Same UTM

// Now you can segment funnel by utm_campaign to see which campaigns
// have the best conversion rates through each step

Ζητήματα απορρήτου

Οι παράμετροι UTM και οι πληροφορίες referrer αποθηκεύονται στο localStorage και εκκαθαρίζονται όταν:

  • Ο χρήστης καλεί joryio.reset() (αποσύνδεση)
  • Ο χρήστης εκκαθαρίζει τα δεδομένα του προγράμματος περιήγησης

Η απόδοση πρώτης και τελευταίας επαφής διατηρείται μεταξύ συνεδριών για τον ίδιο χρήστη μέχρι να εκκαθαρίσει τα δεδομένα του ή να αποσυνδεθεί - το localStorage δεν έχει ενσωματωμένη λήξη.