> ## Content Index
> Fetch the complete content index at: https://arabroot.io/llms.txt
> Use this file to discover other available public pages before exploring further.

# قياس التسويق: روابط UTM والإسناد Attribution
- URL: https://arabroot.io/articles/قياس-التسويق-روابط-utm-والاسناد-attribution/
- Published: 2026-10-25T05:13:00.000Z
- Updated: 2026-10-25T17:01:12.000Z
- Description: كيف تعرف القناة التي جاءت بكل عميل: روابط UTM بقواعد تسمية ثابتة، وتحويل تعرفه أنت، ونموذج إسناد تفهم ما يحسبه.
- Author: فريق عرب رووت
- Tags: الأدلة التقنية, التسويق والمبيعات, استراتيجية تقنية, تحليلات الموقع

لنفرض أنك أطلقت ميزة جديدة، فأرسلت نشرة بريدية لقائمتك، ونشرت عنها في LinkedIn، وكتبت عنها دليلاً في مدونتك، ثم رأيت في نهاية الأسبوع أن الاشتراكات زادت 40 اشتراكاً. والسؤال الذي سوف يسأله الجميع في الاجتماع: أي هذه القنوات جاءت بالمشتركين؟ وعندما تفتح أداة التحليلات تجد أن أكبر مصدر اسمه «مباشر Direct»، وهذا في الغالب ليس زواراً كتبوا عنوان موقعك بأيديهم، وإنما زوار ضاع مصدرهم في الطريق. وفي هذا المقال سوف نرى لماذا يضيع المصدر، وكيف تمنع ذلك بروابط UTM، وكيف تعرف التحويل Conversion الذي تقيسه، ثم كيف تقسم الفضل بين القنوات بنموذج إسناد Attribution Model تفهم ما يفعله.

المواضيع في هذه المرحلة من مسار التسويق:

- قياس التسويق: روابط UTM والإسناد Attribution (الموضوع الحالي)
- تحليلات الموقع دون Google Analytics: مقارنة عملية
- تحليلات المنتج مع PostHog على سيرفرك
- اختبارات A/B مع GrowthBook على سيرفرك
- الروابط المختصرة وتتبع النقرات: Bitly وبدائله

وفي هذا المقال سوف نتناول:

- كيف تعرف أداة التحليلات مصدر الزيارة، ولماذا يتحول جزء كبير منها إلى «مباشر».
- معاملات UTM الخمسة، وقواعد تسمية يلتزم بها الفريق كله.
- التحويل Conversion ومعدل التحويل Conversion Rate، وكيف تختار ما تعده تحويلاً.
- نماذج الإسناد، مع تجربة تحسب نفس البيانات بستة نماذج وترى كيف تتغير النتيجة.
- ما يقوله نظام حماية البيانات الشخصية عن رسائل التسويق، وما يعنيه ذلك لروابطك.

## من أين جاء الزائر؟

عندما يضغط شخص على رابط يؤدي إلى موقعك، فأمام أداة التحليلات ثلاث حالات، والصورة التالية تبينها:

![ثلاثة صفوف تصل بأسهم إلى موقع example.com: الأول المصدر من المتصفح Referrer بنقرة من بحث Google ويصل عنوان الموقع فقط، والثاني معاملات الحملة UTM في رابط نشرة بريدية utm_source=newsletter وutm_medium=email وutm_campaign=launch، والثالث لا شيء فتسجل الزيارة مباشر Direct](https://arabroot.io/content/images/2026/10/marketing-analytics-01-traffic-source.webp)

ثلاث طرق تصل بها الزيارة، والمصدر لا يصل مضموناً إلا في الثانية

- **المصدر من المتصفح Referrer**: المتصفح يرسل مع الطلب ترويسة `Referer` فيها عنوان الصفحة السابقة. ولكن السياسة الافتراضية في المتصفحات الحديثة [strict-origin-when-cross-origin](https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Headers/Referrer-Policy?ref=arabroot.io) ترسل لموقع آخر عنوان الموقع فقط دون مسار الصفحة، فتعرف أن الزائر جاء من `https://www.google.com/` ولا تعرف أي صفحة أو أي منشور، ولا ترسل شيئاً إذا انتقل الزائر من صفحة HTTPS إلى HTTP.
- **معاملات الحملة UTM**: أنت تضيفها إلى الرابط قبل أن تنشره، فتصل مع الزيارة مهما حدث للـ Referrer.
- **لا شيء**: الروابط التي تفتح من تطبيقات المحادثة أو ملفات PDF أو برامج البريد كثيراً ما تصل دون Referrer، فتسجلها الأداة زيارة مباشرة Direct.

لذلك فالقاعدة الأولى بسيطة: كل رابط تنشره خارج موقعك، في نشرة أو منشور أو إعلان أو QR على مطبوعة في معرض، يحمل معاملات UTM، والسبب أنها الطريقة الوحيدة التي لا تعتمد على ما يرسله المتصفح أو التطبيق.

## معاملات UTM: خمسة حقول ومعنى كل منها

معاملات UTM هي متغيرات تضيفها في آخر الرابط بعد علامة `?`، وتقرؤها أدوات التحليلات كلها تقريباً، سواء Google Analytics أو Umami أو Matomo أو Plausible. وبحسب [توثيق Google Analytics](https://support.google.com/analytics/answer/10917952?ref=arabroot.io) فالمعاملات الأساسية هي:

| المعامل       | يجيب عن سؤال                                | أمثلة                          |
| ------------- | ------------------------------------------- | ------------------------------ |
| utm\_source   | من أرسل الزائر؟ المنصة أو الموقع أو القائمة | newsletter، linkedin، google   |
| utm\_medium   | بأي وسيلة؟ نوع القناة                       | email، social، cpc، qr         |
| utm\_campaign | لأي حملة؟                                   | launch-2026-10، webinar-backup |
| utm\_content  | أي رابط داخل نفس الرسالة أو الإعلان؟        | header-button، footer-link     |
| utm\_term     | أي كلمة بحث في الإعلانات المدفوعة؟          | open-source-backup             |

ويذكر التوثيق معاملات أخرى أقل استخداماً مثل `utm_id` لمعرف الحملة و`utm_source_platform`، ولا تحتاجها في البداية. والمثال التالي رابط لنفس الصفحة في نشرة بريدية وفي منشور LinkedIn:

```text
https://example.com/features/backup?utm_source=newsletter&utm_medium=email&utm_campaign=launch-2026-10&utm_content=header-button
https://example.com/features/backup?utm_source=linkedin&utm_medium=social&utm_campaign=launch-2026-10
```

في الروابط أعلاه لاحظ التالي:

- اسم الحملة `launch-2026-10` واحد في القناتين، فتجمع الأداة كل زيارات الإطلاق تحت حملة واحدة، ثم تقسمها حسب المصدر.
- `utm_content` يفرق بين زر في أعلى الرسالة ورابط في أسفلها، وهذا يفيدك عندما تريد أن تعرف أي موضع في الرسالة يجلب النقرات.
- كل القيم بحروف إنجليزية صغيرة وبشرطة بين الكلمات، والسبب في القسم التالي.

### قواعد التسمية: أهم من المعاملات نفسها

القيم حساسة لحالة الأحرف Case Sensitive، فالتوثيق نفسه يقول إن `Meta` و`meta` قيمتان مختلفتان في التقارير، وكذلك `SpringSale` و`Spring_Sale`. وهذا يعني أن فريقاً من ثلاثة أشخاص يكتب كل منهم الروابط بطريقته سوف ينتهي بتقرير فيه `LinkedIn` و`linkedin` و`li` كثلاث قنوات منفصلة، ولن يستطيع أحد أن يجمعها بعد ذلك بسهولة. لذلك اكتب قواعد التسمية مرة واحدة في ملف يرجع إليه الجميع، وهذا مثال يمكنك أن تبدأ به:

| القناة                   | utm\_source        | utm\_medium |
| ------------------------ | ------------------ | ----------- |
| النشرة البريدية          | newsletter         | email       |
| رسائل البريد المؤتمتة    | onboarding         | email       |
| LinkedIn وX              | linkedin، x        | social      |
| إعلان مدفوع في Google    | google             | cpc         |
| QR على مطبوعة أو في معرض | اسم الحدث مثل leap | qr          |
| موقع شريك أو مقال ضيف    | نطاق الشريك        | referral    |

وفيما يلي بقية القواعد التي توفر عليك تنظيف البيانات لاحقاً:

- **حروف صغيرة وشرطة دائماً**: لا مسافات ولا حروف كبيرة، والمسافة في الرابط تصبح `%20` وتظهر في التقارير بشكل مزعج.
- **لا تكتب القيم بالعربية**: الحروف العربية تحول في الرابط إلى ترميز طويل مثل `%D8%B9%D8%B1%D8%A8` لكلمة «عرب»، وتظهر بعض الأدوات والجداول النص المرمز بدل الكلمة، وقد شرحنا سبب هذا الترميز في [مقال الترميز Percent-encoding](https://arabroot.io/articles/%D8%A7%D9%84%D8%AA%D8%B1%D9%85%D9%8A%D8%B2-base64-%D9%88-base32-%D9%88-base58/#escaping).
- **لا تضع UTM في روابط داخل موقعك**: الأداة تقرأ المعاملات في كل صفحة، فإذا ضغط زائر جاء من النشرة على رابط داخلي فيه `utm_source=homepage-banner` فسوف تسجل الأداة مصدراً جديداً، وتخسر النشرة جزءاً من الفضل في زائر جاءت به هي. وللروابط الداخلية استخدم الأحداث Events بدل UTM.
- **لا تضع بيانات شخصية في الرابط**: لا بريد ولا رقم جوال ولا اسم في `utm_content` أو غيره، فالرابط يحفظ في سجلات السيرفر وسجل المتصفح وأداة التحليلات، وGoogle تمنع إرسال هذه البيانات إليها كما في [إرشاداتها عن البيانات الشخصية PII](https://support.google.com/analytics/answer/6366371?ref=arabroot.io).
- **استخدم أداة تكتب الرابط بدلك**: جدول بسيط بأعمدة القيم المسموحة وعمود يجمع الرابط يكفي، أو خدمة روابط مختصرة تضيف المعاملات تلقائياً كما سوف نرى في مقال الروابط المختصرة.

⚠️

إذا كان موقعك خلف شبكة توصيل محتوى CDN، فكل قيمة UTM مختلفة تصنع مفتاح تخزين Cache Key جديداً لنفس الصفحة، فتصل طلبات الحملة إلى سيرفرك بدل أن تخدمها النسخة المخزنة. والحل أن تستبعد معاملات `utm_*` من مفتاح التخزين، وقد رأينا ذلك بالأرقام في [مقال شبكة توصيل المحتوى CDN](https://arabroot.io/articles/%D8%B4%D8%A8%D9%83%D8%A9-%D8%AA%D9%88%D8%B5%D9%8A%D9%84-%D8%A7%D9%84%D9%85%D8%AD%D8%AA%D9%88%D9%89-cdn-%D9%84%D9%84%D9%85%D8%A8%D8%AA%D8%AF%D8%A6%D9%8A%D9%86/).

### هل تحذف المتصفحات معاملات UTM؟

قد يتساءل البعض: سمعنا أن المتصفحات بدأت تحذف معاملات التتبع من الروابط، فهل تضيع UTM أيضاً؟ والإجابة أن ما يحذف هو معرفات النقرة والمستخدم، وليس معاملات الحملة. فقد شرح فريق WebKit في [مقاله عن التصفح الخاص في Safari 17](https://webkit.org/blog/15697/private-browsing-2-0/?ref=arabroot.io) أن ميزة حماية الروابط Link Tracking Protection تحذف قبل الانتقال المعاملات المعروفة بأنها تتبع المستخدم أو النقرة الواحدة، وتترك المعاملات التي تستخدم لإسناد الحملة فقط، ومثالهم بالحرف معامل اسمه `campaign`. ولكن نفس المقال يذكر أمراً مهماً: سكربتات الطرف الثالث Third-party Scripts في الصفحة ترى في التصفح الخاص الرابط دون أي معاملات، أي أن أداة تحليلات تحمل من نطاق خارجي قد لا ترى UTM أصلاً، بينما تراها أداة تحملها من نطاقك. وهذا أحد الأسباب التي تجعل الاستضافة الذاتية للتحليلات على نطاق فرعي من موقعك خياراً عملياً، وهو موضوع المقال التالي في هذه المرحلة.

## التحويل Conversion: ماذا تعد نجاحاً؟

التحويل Conversion هو أي فعل يقوم به الزائر وتعتبره أنت هدفاً، مثل إنشاء حساب أو طلب عرض سعر أو الاشتراك في النشرة أو الدفع. ومعدل التحويل Conversion Rate هو عدد التحويلات مقسوماً على عدد الزوار في نفس الفترة، فإذا زار صفحة الأسعار 1,200 زائر وأنشأ 36 منهم حساباً فمعدل التحويل 3%. وتسمي Google Analytics الحدث الذي تعتبره تحويلاً حدثاً رئيسياً Key Event كما في [توثيق الأحداث الرئيسية](https://support.google.com/analytics/answer/13128484?ref=arabroot.io)، وتترك كلمة Conversion لما يرسل إلى Google Ads، أما Umami وPlausible فتسميانه هدفاً Goal.

والخطأ الشائع هنا أن تختار التحويل الأسهل في القياس بدل الأهم. فالضغط على زر «جرب مجاناً» سهل القياس، ولكنه لا يساوي مستخدماً فعل حسابه واستخدمه، لذلك قسم التحويلات إلى نوعين:

- **التحويل الصغير Micro Conversion**: خطوة على الطريق، مثل فتح صفحة الأسعار أو تحميل دليل أو الاشتراك في النشرة. يفيدك في معرفة أين يتوقف الزوار.
- **التحويل الرئيسي Macro Conversion**: ما يدفع الشركة فعلاً، مثل حساب نشط أو اشتراك مدفوع أو طلب عرض سعر. وهذا ما تقيس به القناة في النهاية.

وحدد لكل تحويل رئيسي نافذة زمنية Conversion Window: كم يوماً بعد الزيارة تقبل أن تنسب التحويل لها؟ والسبب أن المنتجات التقنية التي تبيع للشركات قد يمر فيها شهر بين أول زيارة والاشتراك. وفي Google Analytics مثلاً، بحسب [صفحة إعدادات الإسناد](https://support.google.com/analytics/answer/10597962?ref=arabroot.io)، النافذة الافتراضية 30 يوماً لأحداث الاكتساب مثل `first_visit`، و90 يوماً لبقية الأحداث الرئيسية. وقد شرحنا في [مقال مقاييس المنتج](https://arabroot.io/articles/%D9%85%D9%82%D8%A7%D9%8A%D9%8A%D8%B3-%D8%A7%D9%84%D9%85%D9%86%D8%AA%D8%AC-%D9%88%D8%AA%D8%AD%D9%84%D9%8A%D9%84%D8%A7%D8%AA-%D8%A7%D9%84%D8%A7%D8%B3%D8%AA%D8%AE%D8%AF%D8%A7%D9%85-product-metrics/) كيف تبني قمع التحويل Funnel من أحداث تطبيقك، والفرق بين عد الأحداث وعد المستخدمين.

## الإسناد Attribution: من يأخذ الفضل؟

نادراً ما يشترك العميل من أول زيارة، فالطبيعي أن يرى فيديو لك، ثم منشوراً بعد أسبوعين، ثم يفتح النشرة، ثم يكتب اسم موقعك ويشترك. ونموذج الإسناد Attribution Model هو القاعدة التي تقسم بها هذا الاشتراك الواحد على القنوات التي مر بها العميل، والصورة التالية تبين عميلاً واحداً بأربع زيارات وكيف يقسمه كل نموذج:

![مسار عميل من YouTube قبل 30 يوماً إلى LinkedIn قبل 12 يوماً إلى النشرة newsletter قبل يومين إلى زيارة مباشرة direct يوم الشراء ثم اشتراك Conversion، وتحته ستة أشرطة: أول نقرة تعطي YouTube 100%، وآخر نقرة تعطي direct 100%، وآخر نقرة غير مباشرة تعطي newsletter 100%، والخطي 25% لكل قناة، وحسب الموقع 40% للأولى و10% و10% و40% للأخيرة، والتناقص الزمني 2% و14% و38% و46%](https://arabroot.io/content/images/2026/10/marketing-analytics-02-attribution.webp)

نفس المسار بستة نماذج: ثلاثة منها تعطي الفضل كله لقناة مختلفة

- **أول نقرة First Touch**: الفضل كله لأول قناة عرفك منها العميل. يفيد في معرفة ما يجلب أشخاصاً جدداً، ويتجاهل ما أقنعهم.
- **آخر نقرة Last Touch**: الفضل كله لآخر زيارة قبل التحويل. وهو الأسهل في القياس، ولكنه في المثال أعطى الفضل لزيارة مباشرة لا تعني شيئاً.
- **آخر نقرة غير مباشرة Last Non-Direct**: مثل السابق، ولكنه يتخطى الزيارات المباشرة إلى آخر قناة معروفة، وهو أقرب لما تفعله أغلب الأدوات افتراضياً.
- **الخطي Linear**: يقسم الفضل بالتساوي على كل الزيارات.
- **حسب الموقع Position Based**: 40% للأولى و40% للأخيرة، والباقي 20% يقسم على الوسط.
- **التناقص الزمني Time Decay**: الزيارة الأقرب للتحويل تأخذ أكثر، وفي تجربتنا ينقص وزن الزيارة إلى النصف كل 7 أيام.
- **المبني على البيانات Data-Driven**: نموذج إحصائي يتعلم من مسارات كل العملاء ومن لم يتحول منهم، ولا تستطيع أن تحسبه بنفسك بمعادلة بسيطة، وهو الافتراضي في Google Analytics.

ويجدر الإشارة هنا إلى أن Google Analytics نفسها أزالت نماذج أول نقرة والخطي والتناقص الزمني وحسب الموقع في نوفمبر 2023 كما تذكر [صفحة الإسناد في توثيقها](https://support.google.com/analytics/answer/10596866?ref=arabroot.io)، وأبقت النموذج المبني على البيانات ونماذج آخر نقرة. أما Umami فيعرض [تقرير الإسناد](https://docs.umami.is/docs/attribution?ref=arabroot.io) فيه بنموذجين: أول نقرة وآخر نقرة. لذلك عندما يسألك أحد «كم جلبت النشرة؟» فالإجابة الأمينة تبدأ بـ «حسب أي نموذج؟».

### تجربة عملية: نفس البيانات بستة نماذج

حتى ترى الفرق بالأرقام، كتبنا سكربت صغيراً يأخذ خمسة عملاء اشتركوا، لكل منهم القنوات التي مر بها بالترتيب وعدد الأيام بين كل زيارة والاشتراك، ثم يقسم الاشتراكات الخمسة على القنوات بكل نموذج. والبيانات مثال كتبناه للتوضيح وليست من موقع حقيقي:

```javascript
const journeys = [
  { customer: 'c1', touches: [['linkedin', 20], ['newsletter', 6], ['google', 0]] },
  { customer: 'c2', touches: [['google', 3], ['google', 0]] },
  { customer: 'c3', touches: [['youtube', 30], ['linkedin', 12], ['newsletter', 2], ['direct', 0]] },
  { customer: 'c4', touches: [['newsletter', 1], ['direct', 0]] },
  { customer: 'c5', touches: [['linkedin', 9], ['google', 0]] },
];

const models = {
  'first touch': (t) => t.map((_, i) => (i === 0 ? 1 : 0)),
  'last touch': (t) => t.map((_, i) => (i === t.length - 1 ? 1 : 0)),
  // last non-direct click: like last touch, but a direct visit does not take the credit when another channel exists
  'last non-direct': (t) => { let k = t.length - 1; while (k > 0 && t[k][0] === 'direct') k--; return t.map((_, i) => (i === k ? 1 : 0)); },
  linear: (t) => t.map(() => 1 / t.length),
  // position based (U-shaped): 40% first, 40% last, 20% shared by the middle
  'position based': (t) => t.length === 1 ? [1] : t.length === 2 ? [0.5, 0.5]
    : t.map((_, i) => (i === 0 || i === t.length - 1 ? 0.4 : 0.2 / (t.length - 2))),
  // time decay: the weight halves every 7 days before the purchase
  'time decay': (t) => { const w = t.map(([, d]) => 2 ** (-d / 7)); const s = w.reduce((a, b) => a + b); return w.map((x) => x / s); },
};
```

والملف كاملاً مع جزء الطباعة في مجلد `lab` بجانب المقال، وشغلناه في Container من Node.js:

```bash
docker run --rm -v "$(pwd)/lab:/lab" node:24.22.1-bookworm node /lab/attribution.mjs
```

والمخرج سوف يكون كما يلي، وكل رقم هو عدد الاشتراكات التي ينسبها النموذج لتلك القناة من أصل خمسة:

```text
model           linkedin   newsletter google     youtube    direct
first touch     2.00       1.00       1.00       1.00       0.00
last touch      0.00       0.00       3.00       0.00       2.00
last non-direct 0.00       2.00       3.00       0.00       0.00
linear          1.08       1.08       1.83       0.25       0.75
position based  1.00       0.80       1.90       0.40       0.90
time decay      0.51       1.18       2.30       0.02       0.98       
```

في المخرج أعلاه لاحظ التالي:

- LinkedIn هي القناة الأولى بنموذج أول نقرة (اشتراكان)، ولا تأخذ شيئاً بنموذجي آخر نقرة. فإذا كان فريقك يقيس بآخر نقرة فقط فسوف يستنتج أن LinkedIn لا تجلب أحداً ويوقف النشر فيها، مع أنها أول ما عرف منه ثلاثة من العملاء الخمسة بالمنتج.
- النشرة البريدية صفر بآخر نقرة، واشتراكان بآخر نقرة غير مباشرة، والسبب أن العميلين c3 وc4 فتحا النشرة ثم عادا بزيارة مباشرة واشتركا. وهذا هو «المباشر» الذي رأيته في المقدمة: زوار جاؤوا بسبب قناة معروفة ثم عادوا بكتابة العنوان.
- Google تبقى في المقدمة بكل النماذج تقريباً، لأنها آخر خطوة قبل الاشتراك عند ثلاثة عملاء، وهذا طبيعي لمن يبحث عن اسم منتجك بعد أن سمع به في مكان آخر، ولا يعني أن البحث هو ما أقنعه.
- YouTube تظهر بنموذج أول نقرة فقط تقريباً، وفي التناقص الزمني تأخذ 0.02 لأن زيارتها كانت قبل 30 يوماً.

### أي نموذج تستخدم؟

لا يوجد نموذج صحيح ونموذج خاطئ، وإنما سؤال تريد إجابته. فإذا كان سؤالك «من أين يعرفنا الناس؟» فانظر إلى أول نقرة، وإذا كان «ما الذي يدفعهم للقرار؟» فانظر إلى آخر نقرة غير مباشرة، وإذا أردت رقماً واحداً للميزانية فالخطي أو حسب الموقع أعدل من غيرهما لشركة صغيرة لا تملك بيانات تكفي نموذجاً مبنياً على البيانات. والنصيحة العملية لشركة ناشئة:

- اعرض أول نقرة وآخر نقرة غير مباشرة جنباً إلى جنب في نفس التقرير، فهما معاً يرويان أغلب القصة.
- احفظ مصدر أول زيارة مع حساب المستخدم في قاعدة بياناتك عند التسجيل، أي `utm_source` و`utm_campaign` و`Referer` من أول صفحة. وبهذا تستطيع أن تربط المصدر بالدفع بعد أشهر، وهذا ما لا تعرفه أداة التحليلات وحدها.
- أضف في نموذج التسجيل سؤالاً اختيارياً «كيف عرفت عنا؟» بإجابة حرة. والسبب أن هذا الإسناد الذي يذكره العميل بنفسه Self-reported Attribution يكشف قنوات لا تظهر في أي أداة، مثل توصية زميل أو بودكاست أو مجموعة واتساب.
- لا تقارن أرقام أداتين ببعضهما، فكل أداة تعرف الزائر والجلسة والنافذة الزمنية بطريقتها، وقارن الأداة بنفسها عبر الزمن.

## رسائل التسويق ونظام حماية البيانات الشخصية

معاملات UTM نفسها لا تحمل بيانات شخصية إذا التزمت بالقواعد أعلاه، ولكن القنوات التي تضعها فيها تخضع لنظام حماية البيانات الشخصية. فالمادة السادسة والعشرون من [النظام](https://laws.boe.gov.sa/BoeLaws/Laws/LawDetails/b7cfae89-828e-4994-b167-adaa00e37188/1?ref=arabroot.io) تسمح بمعالجة البيانات الشخصية لأغراض التسويق إذا جمعت من صاحبها مباشرة ووافق على ذلك، والمادة التاسعة والعشرون من [اللائحة التنفيذية](https://sdaia.gov.sa/en/SDAIA/about/Documents/ImplementingRegulationPersonalDataProtectionLaw.pdf?ref=arabroot.io) تفصل التسويق المباشر Direct Marketing كما يلي:

- تأخذ موافقة صاحب البيانات قبل أن ترسل له مواد تسويقية.
- توفر له طريقة لإيقاف استقبال الرسائل متى شاء، وتكون بسهولة طريقة الاشتراك نفسها.
- تذكر هوية المرسل بوضوح في كل رسالة.
- عندما يسحب موافقته توقف الإرسال دون تأخير.

وهذا يعني عملياً لمن يقيس: إذا كانت أداة النشرات عندك تتبع نقرات كل مشترك باسمه، فأنت تعالج بيانات شخصية عن سلوكه، فاذكر ذلك في سياسة الخصوصية، واجعل الإحصاءات العامة كافية حيث تستطيع، والنقرات في تقرير الحملة بمعاملات UTM تعطيك المصدر دون أن تعرف من هو الشخص. وقد جمعنا الأنظمة التي تحكم التسويق في المملكة، ومنها تنظيمات هيئة الاتصالات للرسائل الترويجية، في مقال مستقل في نفس المسار:

[![](https://arabroot.io/content/images/2026/10/marketing-saudi-cover-cover.webp)دليلأنظمة التسويق الرقمي Digital Marketing في السعوديةما تشترطه الأنظمة السعودية في موافقة العميل والرسائل التسويقية والإعلان الإلكتروني وإعلانات المؤثرين، وكيف تطبقه في الكود.](https://arabroot.io/articles/%D8%A7%D9%86%D8%B8%D9%85%D8%A9-%D8%A7%D9%84%D8%AA%D8%B3%D9%88%D9%8A%D9%82-%D8%A7%D9%84%D8%B1%D9%82%D9%85%D9%8A-digital-marketing-%D9%81%D9%8A-%D8%A7%D9%84%D8%B3%D8%B9%D9%88%D8%AF%D9%8A%D8%A9/)

## الخلاصة

وصلنا لنهاية الموضوع، وأهم ما فيه:

- الـ Referrer يصل ناقصاً أو لا يصل، لذلك ضع UTM في كل رابط تنشره خارج موقعك، ولا تضعه في الروابط الداخلية.
- القيم حساسة لحالة الأحرف، فاكتب جدول تسمية واحداً للفريق بحروف إنجليزية صغيرة وشرطة، ولا تضع بيانات شخصية في الرابط.
- عرف التحويل الرئيسي الذي يدفع الشركة، وحدد له نافذة زمنية، ولا تكتف بالنقرات.
- كل نموذج إسناد يجيب عن سؤال مختلف، وفي تجربتنا تغيرت القناة الفائزة بتغير النموذج، فاعرض أول نقرة وآخر نقرة غير مباشرة معاً.
- احفظ مصدر أول زيارة مع حساب المستخدم، واسأله كيف عرف عنك، فهذان يكملان ما لا تراه أداة التحليلات.
- الرسائل التسويقية تحتاج موافقة وطريقة سهلة للإيقاف وهوية واضحة للمرسل بحسب نظام حماية البيانات الشخصية ولائحته.

وفي المقال القادم بإذن الله سوف نشغل Umami وPlausible وMatomo على نفس الموقع التجريبي ونقارنها بـ Google Analytics بالأرقام. وأقرب المقالات إلى هذا الموضوع:

[![](https://arabroot.io/content/images/2026/10/web-analytics-tools-cover-cover.webp)دليلتحليلات الموقع دون Google Analytics: مقارنة عمليةشغلنا Umami وPlausible وMatomo على نفس الموقع وقارناها بـ Google Analytics في حجم السكربت والـ Cookies والعربية وملكية البيانات.](https://arabroot.io/articles/%D8%AA%D8%AD%D9%84%D9%8A%D9%84%D8%A7%D8%AA-%D8%A7%D9%84%D9%85%D9%88%D9%82%D8%B9-%D8%AF%D9%88%D9%86-google-analytics-%D9%85%D9%82%D8%A7%D8%B1%D9%86%D8%A9-%D8%B9%D9%85%D9%84%D9%8A%D8%A9/)[![](https://arabroot.io/content/images/2026/10/marketing-funnel-cover-cover.webp)دليلقمع التسويق Marketing Funnel: من الزائر إلى العميلكيف تقسم الطريق من أول زيارة إلى الشراء إلى مراحل تقيسها، وتعرف أين يخرج أكثر الناس، مع حساب عملي للقمع من سجل أحداث.](https://arabroot.io/articles/%D9%82%D9%85%D8%B9-%D8%A7%D9%84%D8%AA%D8%B3%D9%88%D9%8A%D9%82-marketing-funnel-%D9%85%D9%86-%D8%A7%D9%84%D8%B2%D8%A7%D8%A6%D8%B1-%D8%A7%D9%84%D9%89-%D8%A7%D9%84%D8%B9%D9%85%D9%8A%D9%84/)[![](https://arabroot.io/content/images/2026/10/marketing-budget-roi-cover-cover.webp)دليلميزانية التسويق وتكلفة العميل CAC والعائد ROIكيف تحسب تكلفة اكتساب العميل وقيمته وفترة الاسترداد والعائد لكل قناة، وكيف تحدد حجم الميزانية من هدفك لا من نسب الشركات الكبيرة.](https://arabroot.io/articles/%D9%85%D9%8A%D8%B2%D8%A7%D9%86%D9%8A%D8%A9-%D8%A7%D9%84%D8%AA%D8%B3%D9%88%D9%8A%D9%82-%D9%88%D8%AA%D9%83%D9%84%D9%81%D8%A9-%D8%A7%D9%84%D8%B9%D9%85%D9%8A%D9%84-cac-%D9%88%D8%A7%D9%84%D8%B9%D8%A7%D8%A6%D8%AF-roi/)[![](https://arabroot.io/content/images/2026/10/paid-ads-cover-cover.webp)دليلالإعلانات المدفوعة Paid Ads للشركات التقنية: متى تستحق؟متى تدفع الشركة التقنية على إعلانات البحث أو التواصل، وكيف تبني الميزانية بأرقام منشورة وتقيس العميل الذي دفع لا النقرة.](https://arabroot.io/articles/%D8%A7%D9%84%D8%A7%D8%B9%D9%84%D8%A7%D9%86%D8%A7%D8%AA-%D8%A7%D9%84%D9%85%D8%AF%D9%81%D9%88%D8%B9%D8%A9-paid-ads-%D9%84%D9%84%D8%B4%D8%B1%D9%83%D8%A7%D8%AA-%D8%A7%D9%84%D8%AA%D9%82%D9%86%D9%8A%D8%A9-%D9%85%D8%AA%D9%89-%D8%AA%D8%B3%D8%AA%D8%AD%D9%82/)[![](https://arabroot.io/content/images/2026/10/product-metrics-cover-cover-1.webp)دليلمقاييس المنتج Product Metrics وكيف تعرف أن الميزة نجحتكيف تختار مقياساً رئيسياً North Star لمنتجك، وتبني قمع التحويل Funnel وجدول العودة Retention من أحداث تطبيقك بأدوات تستضيفها على سيرفرك.](https://arabroot.io/articles/%D9%85%D9%82%D8%A7%D9%8A%D9%8A%D8%B3-%D8%A7%D9%84%D9%85%D9%86%D8%AA%D8%AC-%D9%88%D8%AA%D8%AD%D9%84%D9%8A%D9%84%D8%A7%D8%AA-%D8%A7%D9%84%D8%A7%D8%B3%D8%AA%D8%AE%D8%AF%D8%A7%D9%85-product-metrics/)

## سجل التحديثات

- أكتوبر 2026: كتابة المقال وتشغيل تجربة نماذج الإسناد على Node.js 24.22.1 في Docker، مع مراجعة توثيق Google Analytics لمعاملات UTM والإسناد، ومقال WebKit عن حماية الروابط في Safari، والمادة 26 من نظام حماية البيانات الشخصية والمادة 29 من لائحته التنفيذية.