הגדרת אירועי אנליטיקה והמרות לאפליקציות מובייל
לעתים קרובות אנו נתקלים בתרחיש הבא: האפליקציה עובדת, Firebase מחובר, אירועים זורמים לדשבורד, אך איש השיווק לא יכול לענות על שאלה פשוטה—כמה משתמשים התקדמו מהרשמה לרכישה ראשונה? מכיוון שאירועים קיימים אך המרות לא מסומנות, המשפך לא מוגדר, ו-purchase נשלח עם פרמטרים שלא ניתן לפלח. אנחנו מתקנים את זה. בעשר שנות עבודה, הגדרנו אנליטיקה ליותר מ-50 אפליקציות—מפינטק ועד מסחר אלקטרוני.
הגדרת אירועים אנליטיים היא לא רק Firebase.logEvent. זה עיצוב סכמת נתונים שתענה בהמשך על שאלות עסקיות. ללא טקסונומיה נכונה, כל אנליטיקה הופכת לרעש. אנו מבטיחים שלאחר ההגדרה שלנו, תוכלו לפלח את הקהל שלכם לפי כל פרמטר ולראות את המשפך האמיתי. בקשו ביקורת אנליטיקה—נראה לכם אילו אירועים אתם צריכים כרגע.
למה טקסונומיית אירועים היא הבסיס לאנליטיקה
לפני כתיבת קוד, אנו יוצרים טקסונומיית אירועים—טבלה של כל האירועים עם פרמטרים. המפה הזו תנחה את כל הדוחות והמשפכים העתידיים. דילוג על שלב זה יוצר נתונים שלא ניתן לפלח.
| שם האירוע | טריגר | פרמטרים | פלטפורמה |
|---|---|---|---|
sign_up |
הרשמה מוצלחת | method (אימייל/גוגל/אפל), source |
iOS, Android |
tutorial_complete |
סגירת אונבורדינג | steps_completed, skipped |
iOS, Android |
add_to_cart |
לחיצה על "הוסף לסל" | item_id, item_name, price, currency, quantity |
iOS, Android |
purchase |
תשלום מוצלח | transaction_id, value, currency, items[] |
iOS, Android |
subscription_start |
תשלום מנוי ראשון | plan, trial, source |
iOS, Android |
כל אירוע חייב לענות על שאלה עסקית ספציפית. אם אין שאלה, אין אירוע. טקסונומיה נכונה מגדילה את דיוק הדוחות פי 3 בהשוואה להגדרה כאוטית. צרו קשר—נעזור לעצב טקסונומיה לאפליקציה שלכם.
יישום: Firebase Analytics
// iOS — событие с параметрами
Analytics.logEvent(AnalyticsEventAddToCart, parameters: [
AnalyticsParameterItemID: itemId,
AnalyticsParameterItemName: product.name,
AnalyticsParameterPrice: product.price,
AnalyticsParameterCurrency: "RUB",
AnalyticsParameterQuantity: 1
])
// Событие покупки (E-commerce schema)
Analytics.logEvent(AnalyticsEventPurchase, parameters: [
AnalyticsParameterTransactionID: orderId,
AnalyticsParameterValue: orderTotal,
AnalyticsParameterCurrency: "RUB",
AnalyticsParameterItems: items.map { item in
[
AnalyticsParameterItemID: item.id,
AnalyticsParameterItemName: item.name,
AnalyticsParameterPrice: item.price,
AnalyticsParameterQuantity: item.quantity
]
}
]) // Android — идентично, но через Bundle
val params = bundleOf(
FirebaseAnalytics.Param.TRANSACTION_ID to orderId,
FirebaseAnalytics.Param.VALUE to orderTotal,
FirebaseAnalytics.Param.CURRENCY to "RUB"
)
Firebase.analytics.logEvent(FirebaseAnalytics.Event.PURCHASE, params)שימוש בקבועים סטנדרטיים (// iOS — событие с параметрами Analytics.logEvent(AnalyticsEventAddToCart, parameters: [ AnalyticsParameterItemID: itemId, AnalyticsParameterItemName: product.name, AnalyticsParameterPrice: product.price, AnalyticsParameterCurrency: "RUB", AnalyticsParameterQuantity: 1 ]) // Событие покупки (E-commerce schema) Analytics.logEvent(AnalyticsEventPurchase, parameters: [ AnalyticsParameterTransactionID: orderId, AnalyticsParameterValue: orderTotal, AnalyticsParameterCurrency: "RUB", AnalyticsParameterItems: items.map { item in [ AnalyticsParameterItemID: item.id, AnalyticsParameterItemName: item.name, AnalyticsParameterPrice: item.price, AnalyticsParameterQuantity: item.quantity ] } ]) , // Android — идентично, но через Bundle val params = bundleOf( FirebaseAnalytics.Param.TRANSACTION_ID to orderId, FirebaseAnalytics.Param.VALUE to orderTotal, FirebaseAnalytics.Param.CURRENCY to "RUB" ) Firebase.analytics.logEvent(FirebaseAnalytics.Event.PURCHASE, params) ) במקום מחרוזות הוא לא רק עניין של סגנון. Google מזהה אוטומטית אירועים אלה ומפעילה דוחות מסחר אלקטרוני משופרים ב-Firebase Console וב-Google Analytics 4.
איך להגדיר המרות ל-Google Ads?
ב-Firebase Console, עברו לאירועים וסמנו אירועי מפתח כאירועי המרה (ב-GA4 כאירועי מפתח). זה משנה את הצגתם בדוחות ומאפשר בניית משפכים. בדרך כלל אנו מסמנים כהמרות:
-
AnalyticsEventPurchase -
AnalyticsParameterTransactionID -
sign_up -
subscription_start(אם אונבורדינג קריטי לשימור)
לאחר סימון אירוע כהמרה, הנתונים מופיעים ב-Google Ads, ומאפשרים לבצע אופטימיזציה של קמפיינים לרכישות בפועל ולא רק להתקנות. פנו אלינו לייעוץ על הגדרת המרות.
מאפייני משתמש לפילוח
אירועים ללא הקשר הם פחות אינפורמטיביים. מאפייני משתמש מאפשרים לפלח את הקהל:
Analytics.setUserProperty("premium", forName: "subscription_status")
Analytics.setUserProperty("ios_user", forName: "platform")
Analytics.setUserProperty(String(userAge / 10 * 10), forName: "age_bracket") // 20, 30, 40...לאחר הגדרת מאפייני משתמש, תוכלו לראות המרות בנפרד למשתמשי פרימיום או לבנות קהלים ב-Firebase Audiences למיקוד ב-Google Ads.
איך להימנע משיגור כפול של רכישה?
אחת הטעויות הכואבות ביותר היא purchase כפול עקב ניסיון תשלום חוזר או שחזור רכישות. פתרון: דה-דופליקציה באמצעות tutorial_complete:
// Проверяем, не логировали ли уже эту транзакцию
if !UserDefaults.standard.bool(forKey: "logged_\(orderId)") {
Analytics.logEvent(AnalyticsEventPurchase, parameters: [...])
UserDefaults.standard.set(true, forKey: "logged_\(orderId)")
}Firebase עצמו לא מבצע דה-דופליקציה של אירועים לפי Analytics.setUserProperty("premium", forName: "subscription_status") Analytics.setUserProperty("ios_user", forName: "platform") Analytics.setUserProperty(String(userAge / 10 * 10), forName: "age_bracket") // 20, 30, 40... —זה חייב להיעשות בצד האפליקציה. דה-דופליקציה מגדילה את דיוק המדדים פי 3 בהשוואה לסינון לאחר מעשה.
ולידציה של אירועים
לפני השקה לפרודקשן, אנו מאמתים אירועים דרך DebugView ב-Firebase Console. הפעילו אותו עם:
# iOS Simulator -FIRDebugEnabled # Android adb shell setprop debug.firebase.analytics.app com.myapp DebugView מציג אירועים בזמן אמת עם פרמטרים—זה מאיץ את הדיבוג פי 10 בהשוואה להמתנה לדוחות. אנו בודקים: האם כל הפרמטרים מועברים, האם סוגי הנתונים נכונים (מספר מול מחרוזת), האם יש שגיאות כתיב בשמות אירועים.
טעויות נפוצות בהגדרת אירועים
| טעות | תוצאה | פתרון |
|---|---|---|
| אירוע ללא פרמטרים | לא ניתן לפלח | הוספת כל הפרמטרים הרלוונטיים |
| רכישה כפולה | המרה מוגזמת ב-50-100% | דה-דופליקציה לפי transaction_id |
| מחרוזות במקום קבועים | אין מסחר אלקטרוני משופר | שימוש בקבועי Firebase |
מה כלול בעבודה
- עיצוב טקסונומיית אירועים לכל האפליקציה
- יישום אירועים ב-iOS ו-Android עם פרמטרים נכונים
- הגדרת אירועי המרה ב-Firebase / GA4
- הגדרת מאפייני משתמש לפילוח
- דה-דופליקציה של אירועים קריטיים (רכישה, מנוי)
- ולידציה דרך DebugView ו-Firebase Analytics Debugger
- העברת המרות ל-Google Ads / Meta Ads
- ביקורת אנליטיקה קיימת וריפקטורינג
לוח זמנים
סכמת אירועים ויישום בסיסי ל-10–15 אירועים אורכים 2 עד 3 ימים. ביקורת מלאה של אנליטיקה קיימת עם ריפקטורינג אורכת 3 עד 5 ימים. התמחור מחושב באופן אישי לאחר ניתוח היקף האפליקציה.







