לעתים קרובות אנו נתקלים במצב: צוות מריץ קמפיינים פרסומיים בארבעה ערוצים אך לא מצליח להבין איזה מהם מביא להתקנות ורכישות אמיתיות. עלויות מיוצאות ידנית, הנתונים מפוזרים, ו-SKAdNetwork של אפל מסתירה סטטיסטיקות קוהורטה ברמת המכשיר. Singular — פלטפורמת אנליטיקה שיווקית — פותרת זאת: היא מאגדת עלויות מ-Meta Ads, Google Ads, TikTok ו-Apple Search Ads, מחשבת ROAS אוטומטית, ומספקת דשבורד אחיד. בניגוד ל-MMP טיפוסיים, Singular מעבדת נתונים פי 3 מהר יותר ואינה דורשת הזנת עלויות ידנית. הצוות שלנו עם 5 שנות ניסיון שילב בהצלחה את Singular ביותר מ-50 פרויקטים, עם זמן פריסה ממוצע של עד 5 ימים והחזר השקעה בתוך החודש הראשון של הקמפיין.
למה Singular במקום MMP סטנדרטי?
רוב ה-MMP (AppsFlyer, Adjust) מתמקדים רק בייחוס התקנות. Singular עובדת רמה אחת מעל: היא מייבאת נתוני עלויות מחשבונות פרסום ומחשבת רווח שולי ללא דוחות ידניים. ה-Conversion Studio המובנה מאפשר לנהל ערכי המרה של SKAdNetwork מהדשבורד במקום מקבצי תצורת Xcode. עבור מפרסמים גדולים, גישה זו חוסכת פי 3 מזמן הכנת הדוחות. לפי התיעוד של Singular, ייבוא עלויות אוטומטי דרך OAuth מבטל שגיאות הזנה ידניות.
שילוב SDK
iOS
// SPM: https://github.com/singular-labs/Singular-Swift-Package
import Singular
// AppDelegate
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
let config = SingularConfig(apiKey: "API_KEY", andSecret: "API_SECRET")
config?.skAdNetworkEnabled = true
config?.waitForTrackingAuthorizationWithTimeoutInterval = 300 // 5 минут на запрос ATT
Singular.start(config)
return true
}// SPM: https://github.com/singular-labs/Singular-Swift-Package import Singular // AppDelegate func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { let config = SingularConfig(apiKey: "API_KEY", andSecret: "API_SECRET") config?.skAdNetworkEnabled = true config?.waitForTrackingAuthorizationWithTimeoutInterval = 300 // 5 минут на запрос ATT Singular.start(config) return true } הוא פרמטר קריטי. אם ה-SDK מופעל לפני שהמשתמש מגיב ל-ATT, ערכי ההמרה מקושרים לסשן אנונימי. 300 שניות מספקות מספיק זמן להצגת הודעה מקדימה ודיאלוג מערכת. אנו מוודאים שזמן ההמתנה מוגדר בהתחשב בעיצוב חוויית המשתמש שלך.
Android
implementation("com.singular.sdk:singular_sdk:12.+") val config = SingularConfig("API_KEY", "API_SECRET")
.withSessionTimeoutInSec(60)
.withFCMDeviceToken(fcmToken) // для push-атрибуции
Singular.init(this, config)waitForTrackingAuthorizationWithTimeoutInterval מייחסת התקנות דרך קמפיינים של push — המשתמש מקבל push, מתקין את האפליקציה, ו-Singular מקשרת אירועים. המהנדסים שלנו מוודאים את נכונות ייחוס ה-push במהלך הבדיקות.
הגדרת אירועים ו-SKAdNetwork
Singular מספקת אירועים סטנדרטיים שממופים אוטומטית לפורמטים של Meta, Google ו-TikTok:
// Покупка
Singular.revenue("USD", amount: 9.99, productSKU: "premium_monthly", productName: "Premium Subscription", productCategory: "Subscription", quantity: 1, receipt: receiptData)
// Кастомное событие
Singular.event("level_complete", withArgs: [
"level": 15,
"score": 8420,
"time_spent": 142
])implementation("com.singular.sdk:singular_sdk:12.+") עם val config = SingularConfig("API_KEY", "API_SECRET") .withSessionTimeoutInSec(60) .withFCMDeviceToken(fcmToken) // для push-атрибуции Singular.init(this, config) מפעיל אימות רכישה בצד של Singular. עסקאות מזויפות מסוננות לפני כניסתן לסטטיסטיקה. לדיוק גבוה של ROAS, אנו ממליצים לשלוח את כל אירועי ההכנסות, כולל מנויים (טעות נפוצה היא שליחת רכישה ראשונה בלבד).
איך להגדיר SKAdNetwork מאפס?
Singular מנהלת את סכמת ההמרות דרך הדשבורד — Conversion Studio. בצעו את השלבים הבאים:
- פתחו את Conversion Studio בדשבורד של Singular.
- צרו סכמה חדשה, וציינו את חלון ההמרה (6–24 שעות).
- הגדירו ערכי המרה לאירועים מרכזיים (התקנה, רישום, רכישה).
- הריצו קמפיין ניסיון לכיול.
- סיימו את הסכמה לפני השקת קמפיינים המוניים.
חשוב: יש לסיים את הסכמה לפני ההשקה — אם משנים אותה לאחר ההתקנות הראשונות, הנתונים עבור התקנות אלו יישארו חלקיים. בתהליך המוסמך שלנו, אנו תמיד יוצרים את הסכמה בשלב קמפיין הניסיון.
ייחוס Deeplink
// Universal Links
func application(_ application: UIApplication, continue userActivity: NSUserActivity, restorationHandler: @escaping ([UIUserActivityRestoring]?) -> Void) -> Bool {
if let url = userActivity.webpageURL {
Singular.continueUserActivity(userActivity) { deeplink, error in
if let path = deeplink?.passthrough {
NavigationRouter.shared.handleDeeplink(path)
}
}
}
return true
}Singular תומכת ב-Singular Links — בדומה ל-Branch Links עם מעקב קליקים. נוצרים בדשבורד, מועברים למודעות. אנו מגדירים Universal Links (iOS) ו-App Links (Android) תוך יום אחד.
שילוב עלויות מחשבונות פרסום
זוהי תכונה מרכזית שאינה זמינה ב-MMP בסיסיים. ב-Singular → Integrations, אנו מחברים חשבונות Meta, Google, Apple Search Ads ו-TikTok דרך OAuth או מפתחות API. הדשבורד מציג אז פירוט אחיד:
| ערוץ | התקנות | עלות | הכנסות | ROAS |
|---|---|---|---|---|
| Meta Ads | 1,240 | $3,100 | $4,960 | 1.60x |
| Apple Search Ads | 890 | $2,450 | $5,340 | 2.18x |
| TikTok | 560 | $1,800 | $1,960 | 1.09x |
הנתונים מתעדכנים מדי יום. לדיוק ROAS, חיוני לשלוח את כל אירועי ההכנסות — אחרת המספרים יהיו נמוכים מהמציאות.
בעיות שילוב נפוצות
- ערכי המרה של SKAdNetwork אינם מתעדכנים. יש להגדיר את Conversion Studio לפני השקת קמפיינים — זה חובה לניקיון הנתונים. אם הסכמה נוצרת בדיעבד, ההמרות מהקוהורטה הראשונה אובדות.
- אירועים כפולים עם Firebase. אם Firebase Analytics כבר קיים בפרויקט, אין לשלוח אירועים זהים פעמיים — Singular אינה יכולה לבצע דה-דופליקציה אוטומטית. אנו מגדירים מסננים בצד של Singular או משביתים אירועים כפולים ב-Firebase.
השוואה: Singular לעומת MMP סטנדרטי
| קריטריון | Singular | MMP טיפוסי |
|---|---|---|
| ייבוא עלויות | OAuth מובנה | רק CSV או API עם מגבלות |
| SKAdNetwork | Conversion Studio | תצורת Xcode ידנית |
| דוח ROAS | אוטומטי | דורש ייצוא |
| תמיכה ב-Postback | כן, עם ממסר | מוגבלת |
Singular מנצחת בזמן ההגדרה ובדיוק הדוחות — בפרויקטים שלנו, היא חוסכת לאנליסטים עד 10 שעות בשבוע.
מה כלול
- שילוב SDK (iOS SPM / Android Gradle / Flutter / React Native)
- הגדרת SKAdNetwork ו-Conversion Studio
- הגדרת זרימת ATT עם זמן המתנה נכון
- הטמעת אירועים והכנסות עם אימות קבלה
- שילוב מטפל Deeplink (Universal Links / App Links)
- חיבור חשבונות פרסום לייבוא עלויות
- בדיקות דרך Singular SDK Console
לוחות זמנים ועלות
ייחוס בסיסי עם אירועים — 1–2 ימים. שילוב מלא עם deeplinks והגדרת ערוצי פרסום — 3–5 ימים. העלות מחושבת באופן אישי. בקשו ביקורת אנליטיקה עדכנית — נייעץ לגבי שיפורים נדרשים וזמן השילוב.
צרו קשר לייעוץ — נעריך את הפרויקט שלכם ונציע פתרון אופטימלי.







