لو عندك تطبيق B2C وبتصرف على إعلانات على iPhone، أكيد لاحظت إن أرقام Meta على iOS بقت ناقصة فجأة، بتوصلك متأخرة، وأحياناً مالهاش معنى.
ده مش عطل في حسابك. ده بسبب نظام جديد من Apple اسمه SKAdNetwork. باختصار، Apple قررت إنها هي اللي تقيس نتايج إعلاناتك بنفسها، بدل ما الأدوات بتاعتك تعمل ده زي زمان. ولو ما فهمتش النظام ده شغّال إزاي، هتزوّد ميزانية الحملة اللي شكلها حلو في التقارير، مش اللي بتبيع فعلاً. تعال نفك النظام ده خطوة خطوة، ونوريك فين بالظبط بتقرا الأرقام غلط.
خلاصة سريعة (TL;DR)
- شركة Apple شالت قياس الإعلانات من أدواتك وعملته بنفسها. النظام ده اسمه SKAdNetwork. بدل ما أداتك كانت تشوف كل عميل دخل من أنهي إعلان، دلوقتي Apple بتديك رقم إجمالي للحملة كلها من غير أسماء. ده بيخص أي حد بيصرف على iOS.
- السبب إن أغلب الناس رفضت التتبّع. Apple بقت تسأل كل مستخدم: تسمح للتطبيق ده يتبّعك؟ حوالي 35% بس اللي بيوافقوا في 2025. يعني ~65% بقوا بلا رقم تعريف، فالأرقام على iOS نقصت فجأة.
- عندك خانة واحدة بس تكتب فيها نتيجة كل تحميل. اسمها الـ conversion value (قيمة التحويل)، وفيها 64 احتمال بس. لو حاطط فيها “فتح التطبيق” بدل “أول شراء”، إنت بتقيس حاجة مالهاش علاقة بفلوسك.
- النتيجة بتوصلك متأخرة على دفعات لحد 35 يوم. فلو حكمت على حملة من أول يوم وقفلتها، إنت بتحكم وإنت شايف ثلث الصورة بس.
- كلمة null مش معناها فشل. معناها العدد كان صغير أوي، فـ Apple خبّت الرقم عشان تحمي خصوصية الناس. لو قفلت الحملة عشان شفت null، إنت بترمي حملة كانت ممكن تشتغل.
قاموس سريع (ارجعله وقت ما تتوه)
- الإسناد (attribution): ربط التحميل بالإعلان اللي جابه. زي لما تسأل زبون دخل المحل: إنت جاي من أنهي إعلان؟
- الـ MMP: الأداة اللي بتقولك التحميل ده جه منين (زي AppsFlyer أو Adjust). طرف محايد بيجمّع كل مصادرك في مكان واحد.
- الـ IDFA: رقم تعريف بيدّيه الـ iPhone للمعلِن عشان يعرف نفس الشخص عبر التطبيقات. هو اللي كان بيربط النقرة بالتحميل بالشراء.
- الـ ATT: الرسالة اللي Apple بتسأل بيها المستخدم: تسمح للتطبيق ده يتبّعك؟ لو رفض، الـ IDFA بيتقفل.
- الـ SKAdNetwork (واختصاراً SKAN): نظام Apple اللي بيقيس الإعلانات بدل أداتك، ويديك نتيجة مجمّعة من غير أسماء.
- الـ conversion value (قيمة التحويل): خانة صغيرة (64 احتمال) بتكتب فيها رقم يلخّص أهم حاجة عملها المستخدم بعد التحميل.
- الـ postback: الرسالة اللي Apple بتبعتهالك فيها نتيجة الحملة، متأخرة وعلى دفعات.
- كلمة null: خانة فاضية في التقرير. معناها العدد صغير أوي فـ Apple خبّت الرقم، مش إن الحملة فشلت.
ما هو SKAdNetwork؟
الـ SKAdNetwork (واختصاراً SKAN) هو نظام Apple اللي بيقيس نتايج الإعلانات على iPhone. الفكرة ببساطة: شركة Apple شالت شغلانة قياس الإعلانات من أداتك وعملتها بنفسها. بس بدل ما تديك تفاصيل كل عميل، بتديك رقم إجمالي للحملة كلها من غير أسماء. ده بيخص أي حد بيصرف فلوس على iOS، من غير استثناء.
عشان تفهم اللي اتغيّر، لازم تعرف معنى كلمة attribution (الإسناد). الإسناد ده ربط التحميل بالإعلان اللي جابه. زي لما تسأل زبون دخل محلك: إنت جاي من أنهي إعلان؟ زمان كانت أداتك (الـ MMP) هي اللي بتسأل السؤال ده. كانت تشوف كل تحميل، تربطه بالنقرة، وتقولك ده جه من أنهي حملة وأنهي إعلان بالظبط، شخص شخص. دلوقتي Apple هي اللي بتعمل الربط ده على الـ iPhone نفسه، وبتديك النتيجة مجمّعة وبلا أسماء بعد فترة. إنت ماعدتش تشوف العميل الفرد، بتشوف رقم على مستوى الحملة كلها.
ده مش بيلغي دور الـ MMP (الأداة اللي بتقولك التحميل جه منين زي AppsFlyer أو Adjust)، بيغيّره. الـ MMP بقى بياخد أرقام Apple المجمّعة ويفسّرها لك بدل ما يجمّع البيانات بنفسه. لو لسه مش واضح ليك دور الأداة دي من الأساس، ارجع لـ ما هو الـ MMP قبل ما تكمّل.
ليه Apple عملت SKAN؟ (وعلاقته بـ ATT)
السبب باختصار: Apple بقت تسأل كل مستخدم إذا كان يسمح للتطبيق يتبّعه، وأغلب الناس بترفض. الرسالة دي اسمها ATT (App Tracking Transparency). من iOS 14.5، أي تطبيق عايز يتبّع المستخدم عبر تطبيقات تانية لازم ياخد إذن صريح منه أول الأول. ومعدّل الموافقة (opt-in) حوالي 35% بس في 2025. يعني حوالي 65% من مستخدمين iOS رفضوا، والقياس الفردي اللي كان شغّال عليه السوق كله انهار.
اللي بيتقفل لما المستخدم يرفض اسمه الـ IDFA. ده رقم تعريف بيدّيه الـ iPhone للمعلِن، وكان هو المفتاح اللي بيربط النقرة بالتحميل بالشراء (زي رقم متسلسل بيمشي مع نفس الشخص). لما المستخدم يرفض الرسالة، الرقم ده بيرجع أصفار، فالربط الفردي مبيحصلش. ده بالظبط سبب إن أرقامك على iOS نقصت فجأة من غير ما يتغيّر أداء حملاتك. مش الحملة بقت أوحش، إنت بقيت شايف أقل. (لو عايز تفهم ATT و IDFA بعمق وإزاي تتعامل معاهم، عندنا مقال كامل: ATT و IDFA بالتفصيل.)
عشان كده Apple طرحت SKAN كبديل. بدل ما يفضل القياس مكسور تماماً، عملت طبقة قياس مجمّعة بتحفظ خصوصية المستخدم وبتديك إشارة تقدر تشتغل بيها. الرسم تحت بيوضّح الانهيار ده بالأرقام.

إزاي SKAN بيشتغل في 3 خطوات؟
نظام SKAN بيشتغل في 3 خطوات بسيطة: المستخدم بيدوس على الإعلان وينزّل التطبيق، وبعدها Apple بتربط التحميل بالإعلان على الجهاز نفسه، وبعدين تبعتلك رسالة بالنتيجة بس مجمّعة ومتأخرة. الفرق الكبير عن زمان: زمان كنت تشوف كل عميل بالاسم لحظة بلحظة، دلوقتي بتشوف رقم إجمالي للحملة كلها بعد فترة.
خلّي الخطوات واضحة. أول حاجة: المستخدم يدوس الإعلان وينزّل التطبيق من الـ App Store. تاني حاجة: Apple نفسها هي اللي بتربط النقرة بالتحميل على الجهاز، مش أداتك. دي النقطة اللي بتغيّر كل حاجة. تالت حاجة: Apple بتبعتلك رسالة بالنتيجة بعد فترة (مش على طول)، فيها بيانات الحملة من غير هوية أي مستخدم. الرسالة دي اسمها postback.
قارن ده بالنظام القديم. زمان كنت تشوف كل عميل بالاسم والمصدر في نفس اللحظة. دلوقتي بقيت تشوف الحملة كرقم إجمالي متأخر. نفس الفكرة (مين جه من فين)، بس بدل ما تشوف كل واحد لوحده، بتشوف رقم واحد للحملة كلها. الرسمة تحت بتوضّح المسارين والفرق في التوقيت.

متأكد إن الخانة اللي بتقيس بيها على iOS مربوطة بفلوسك فعلاً؟
في 30 دقيقة نراجع الـ SKAN setup ونوريك فين بتقرا الأرقام غلط على iOS. لو الخانة اللي بتلخّص بيها كل تحميل (الـ conversion value) بتقيس حدث مالوش علاقة بالفلوس، إنت بتوزّع ميزانيتك على إشارة غلط.
إيه هو الـ conversion value في SKAN؟
دي أهم نقطة في الموضوع كله. لما حد ينزّل تطبيقك من إعلان على iOS، شركة Apple مبتديكش تفاصيل كتير عنه. بتديك خانة صغيرة جداً تكتب فيها رقم واحد بس، من 0 لـ 63 (يعني 64 احتمال)، يلخّص أهم حاجة عملها المستخدم. الرقم ده اسمه الـ conversion value (يعني قيمة التحويل). تخيّله زي خانة واحدة في استمارة لازم تختار بعناية تكتب فيها إيه، لأنها كل اللي هتعرفه عن العميل ده. (فيه كمان نسخة أبسط بـ 3 درجات بس: قليل / متوسط / كتير، اسمها الـ coarse، يعني التقدير التقريبي.)
ليه ده مهم؟ لأن الـ 64 احتمال دول هم كل اللي عندك عشان تفرّق بين عميل مربح وعميل بلا قيمة. لازم تقرر بعقلانية الخانات دي بتقيس إيه. تحط فيها أول شراء؟ قيمة الشراء؟ الاشتراك؟ عدد المرات اللي فتح فيها التطبيق؟ مش هتقدر تقيس كل حاجة، فلازم تختار اللي مربوط بالفلوس.
الغلطة الشائعة إنك تحط في الخانة دي حدث رخيص زي “فتح التطبيق” بدل “أول عملية شراء”. النتيجة إنك بتقيس إن الناس بتفتح التطبيق، وده مبيقولكش حاجة عن الفلوس اللي بتدخل. فتزوّد ميزانية حملة بتجيب ناس بتفتح وتمشي، وإنت فاكرها شغّالة. ده إهدار صريح، ومصدره إنك حاطط في الخانة حاجة مالهاش علاقة بالقيمة.
إيه هي الـ postback windows في SKAN 4؟
شركة Apple مبتبعتلكش النتيجة على طول. بتجمّع وتبعت على دفعات على مدى 35 يوم. كل فترة تجميع اسمها نافذة (window بالإنجليزي)، والرسالة اللي بتوصلك في آخر كل فترة اسمها الـ postback (يعني رسالة النتيجة المتأخرة). في SKAN 4 فيه 3 نوافذ: من 0 لـ 2 يوم، من 3 لـ 7 أيام، ومن 8 لـ 35 يوم. يعني بيانات الحملة مبتكملش غير بعد 35 يوم. ومعنى ده إنك ماينفعش تحكم على حملة من يوم واحد وتقفلها. أي قرار قبل ما تكمل النافذة التالتة هو قرار ناقص.
كل نافذة بتقيس مرحلة مختلفة من رحلة العميل. النافذة الأولى بتمسك الإشارة المبكّرة (التحميل وأول حدث). النافذة التانية بتمسك السلوك المبكّر (أول شراء أو اشتراك). والتالتة بتمسك القيمة المتأخرة (هل العميل فضل معاك واشترى تاني). لو حكمت على الحملة من النافذة الأولى بس، إنت بتحكم على ثلث الصورة وإنت فاكرها كاملة.
ده بيربط مباشرة بحساب الربح. لو بتقفل حملة بعد يومين عشان تكلفة جلب العميل (CAC) باينة عالية، إنت لسه ما شوفتش الفلوس المتأخرة اللي بتيجي في النافذة التالتة. الحملة ممكن تكون مربحة فعلاً بعد 35 يوم، بس إنت قفلتها بدري. لو محتاج تفهم إزاي تحسب التكلفة الحقيقية قبل ما تحكم، ارجع لـ الـ CAC الحقيقي.
ليه بيظهر null في تقارير SKAN؟
كلمة null معناها خانة فاضية في التقرير. السبب إن Apple بتحمي خصوصية الناس: مبتبعتلكش نتيجة الحملة غير لما يكون عدد التحميلات كبير كفاية بحيث ميتعرفش على أفراد. القاعدة دي اسمها Privacy Threshold (عتبة الخصوصية). الحملة الصغيرة بتطلّع null. وأهم نقطة: null مش معناها إن الحملة فشلت.
يعني إيه عملياً؟ لو حملتك جابت عدد قليل من التحميلات تحت العتبة، Apple بتخبّي الرقم عشان ميتعرفش على الأفراد. فبتشوف خانة فاضية (null) في التقرير. ده مش معناه إن الحملة ما جابتش حاجة. معناه إن العدد لسه صغير أوي عن الحد اللي يسمح بإظهار الرقم بأمان.
المصيدة هنا إنك تشوف الخانة الفاضية وتفتكر إن الحملة فشلت فتقفلها. ده قرار غلط ومكلّف. الحل إنك تكبّر الحملة لحد ما تعدّي العتبة وتبدأ تطلّع بيانات، مش إنك تقفلها. قفل حملة تحت العتبة بيخليك ترمي حملة كانت ممكن تشتغل. ده نفس نمط الأخطاء اللي بنشوفه في أخطاء الـ tracking setup: قرارات مبنية على غياب البيانات، مش على البيانات.
إيه الجديد في SKAN 4؟
نسخة SKAN 4 وسّعت النظام في 4 حاجات. أولاً، الخانة اللي بتلخّص بيها العميل (الـ conversion value) بقت تقدر تتغيّر أكتر من مرة، مش مرة واحدة وخلاص. ثانياً، النسخة المبسّطة (قليل / متوسط / كتير) بقت متاحة في كل النوافذ التلاتة. ثالثاً، أضاف قياس للناس اللي بييجوا من موقعك على الويب قبل ما ينزّلوا التطبيق. رابعاً، بدل عتبة خصوصية واحدة، بقى فيه 4 مستويات. النتيجة: بيانات أكتر، بس أعقد، ومحتاجة متابعة.
التحديثات دي مفيدة، بس كل واحدة فيها بتضيف نقطة قرار جديدة. النسخة المبسّطة في كل النوافذ معناها إنك ممكن تطلّع “قليل / متوسط / كتير” حتى لو ما طلّعتش الرقم الدقيق. والـ 4 مستويات معناها إن كمية البيانات اللي بتشوفها بتختلف حسب حجم الحملة. كل ده بيخلّي الإعداد مش حاجة بتعملها مرة وتنساها.
إيه هو AdAttributionKit؟ (تحديث 2026)
نسخة SKAN 5 ما نزلتش. شركة Apple بتنقل بالتدريج لنظام جديد اسمه AdAttributionKit (واختصاراً AAK)، اللي اتوسّع في مؤتمر Apple للمطورين WWDC 2025. دلوقتي في 2026 الواقع إن SKAN 4 و AAK شغّالين مع بعض، مش واحد بدل التاني. والخلاصة العملية: المجال ده بيتغيّر كل سنة تقريباً.
ده مش تفصيلة تقنية تتجاهلها. معناه إن الإعداد اللي ظبطته السنة اللي فاتت ممكن يكون ناقص دلوقتي. نظام AAK بيضيف قدرات زي قياس الإعلانات اللي بترجّع مستخدم قديم تاني للتطبيق، ودعم لمتاجر تطبيقات تانية غير الـ App Store. فلو فاكر إن الموضوع بيتظبط مرة وخلاص، إنت بتشتغل على معلومات قديمة. الإعداد محتاج مراجعة كل فترة، مش مرة واحدة.
هل SKAN بديل عن الـ MMP؟
لأ. SKAN مش بديل عن الـ MMP. خلّي العلاقة واضحة بمثال: SKAN هو اللي بيديك الأرقام الخام المجمّعة من Apple. الـ MMP هو اللي بياخد الأرقام دي، يدمجها مع باقي مصادرك (Android والويب)، يوفّق بين التوقيتات المختلفة، ويطلّعلك تقرير واحد تقدر تقرر منه. واحد بيجيب المادة الخام، والتاني بيحوّلها لحاجة مفهومة. ومن غير الخانة اللي بتلخّص بيها العميل (الـ conversion value) لو متظبطة غلط، حتى أحسن MMP هيطلّعلك أرقام مضلّلة على iOS.
عشان كده القرار مش “SKAN ولا MMP”. القرار إنك تظبط الاتنين مع بعض. لو محتاج تفهم دور الـ MMP بعمق، ارجع لـ ما هو الـ MMP. ولو بتختار الأداة اللي هتفسّر بيها أرقام SKAN، شوف AppsFlyer ولا Adjust لتطبيقك.
جدول: قبل ATT مقابل بعد SKAN
ده ملخّص للفرق الجوهري بين النظام القديم (كنت تشوف كل عميل بالاسم) والنظام الحالي (بتشوف رقم إجمالي للحملة). لاحظ إن اللي اتغيّر مش القياس نفسه، اللي اتغيّر هو مين بيعمله، وإمتى، وعلى أنهي مستوى.
| العنصر | قبل ATT (تشوف كل عميل) | بعد SKAN (رقم مجمّع) |
|---|---|---|
| مين بيربط التحميل بالإعلان | الـ MMP / المنصّة | شركة Apple |
| مستوى البيانات | كل عميل لوحده بالاسم | رقم إجمالي للحملة |
| التوقيت | لحظي على طول | متأخّر (لحد 35 يوم) |
| هوية المستخدم | رقم التعريف (IDFA) متاح | بلا أسماء بالكامل |
| الحملات الصغيرة | بتظهر عادي | خانة فاضية (null) تحت العتبة |
| مساحة القياس | مفتوحة | 64 احتمال أو (قليل/متوسط/كتير) |
جدول: الـ 3 postback windows في SKAN 4
كل نافذة (فترة تجميع) بتقيس مرحلة مختلفة من رحلة العميل. الصورة الكاملة مبتكملش غير بعد النافذة التالتة، يعني بعد 35 يوم.
| النافذة (فترة التجميع) | المدة | بتقيس إيه |
|---|---|---|
| النافذة 1 | 0-2 يوم | الإشارة الأولى (تحميل + أول حدث) |
| النافذة 2 | 3-7 يوم | سلوك مبكّر (أول شراء أو اشتراك) |
| النافذة 3 | 8-35 يوم | القيمة المتأخرة (هل فضل معاك واشترى تاني) |
ملاحظة: القرار قبل ما تكمل النافذة التالتة = قرار ناقص. لو قفلت حملة بعد يومين، إنت ما شوفتش ثلثي القيمة.
أسئلة شائعة
هل SKAdNetwork بيوقف القياس تماماً على iOS؟
لأ. بيغيّر شكله من “كل عميل لوحده” لـ “رقم إجمالي للحملة” بيوصلك متأخر. لسه تقدر تقيس وتحسّن، بس بإشارات مختلفة. الفرق إنك مش بتشوف العميل الفرد، بتشوف الحملة كرقم مجمّع بعد فترات زمنية محددة.
ليه أرقام SKAN مش بتطابق أرقام Meta أو الـ MMP؟
لأن كل مصدر بيعدّ بطريقة وتوقيت مختلف: فترات الربط مختلفة، النتيجة بتوصل متأخرة، والأرقام مجمّعة مش فردية. الـ MMP هو اللي بيوفّق بينهم ويطلّعلك صورة واحدة، بس التطابق التام مش موجود بطبيعة النظام.
هل لازم أظبط SKAN حتى لو شغّال على MMP؟
أيوه. الـ MMP بيقرا أرقام SKAN، مش بيستبدلها. فلو الخانة اللي بتلخّص بيها العميل (الـ conversion value) متظبطة غلط، الـ MMP هيطلّعلك أرقام مضلّلة على iOS مهما كان كويس. ضبط الخانة دي صح شرط، مش اختياري.
اقرأ كمان
- ما هو الـ MMP ولماذا تطبيقك أعمى عن أرباحه بدونه؟
- ATT و IDFA بالتفصيل: إزاي خصوصية Apple غيّرت قياس إعلاناتك
- إزاي تحسب الـ CAC الحقيقي لتطبيقك (الرقم اللي بتشوفه أقل من الحقيقة بـ 30%)
- 7 علامات إن الـ tracking setup بتاعك بيكذب عليك (وبتخسر فلوس)
- AppsFlyer ولا Adjust لتطبيقك؟ مقارنة عملية بالأرقام
حملات iOS بتبان ناقصة وإنت مش عارف ده null ولا فشل فعلي؟
في 30 دقيقة نراجع الـ SKAN setup والخانة اللي بتلخّص بيها العميل (الـ conversion value) ونوريك فين بتضيّع قرارات الميزانية على iOS. Free Audit: تشخيص مجاني، من غير التزام.