التفاعل حتى الرسم التالي (INP)

ما الذي يقيسه INP، وحد ≤200 ms عند p75، ولماذا حل محل FID عام 2024، وكيف تصلح النتيجة الضعيفة فعليًا من منظور SEO التقني.

نُشر أول مرة: 26 يونيو 2026 · آخر تحديث: 13 أغسطس 2026 · Advanced
اللغات

التفاعل حتى الرسم التالي (INP) هو مؤشر Core Web Vital للاستجابة. يراقب كل نقرة ولمسة وتفاعل بلوحة المفاتيح خلال الزيارة، ويبلغ زمن الاستجابة الذي جاءت تحته معظمها، مقاسًا ميدانيًا عند المئين 75. القيمة الجيدة ≤200 ms والضعيفة >500 ms. حل INP محل First Input Delay في 12 مارس 2024 لأن FID كان يقيس تأخر الإدخال الأول فقط، بينما يقيس INP زمن الاستجابة الكامل، أي تأخر الإدخال والمعالجة والعرض، لكل التفاعلات. أصلحه بتقسيم المهام الطويلة وإتاحة المسار الرئيسي وتقليل عمل معالجات الأحداث وحجم DOM وضبط النصوص البرمجية الخارجية. إنه مقياس ميداني، وTotal Blocking Time بديله المختبري.

الخلاصة — INP هو Core Web Vital الخاص بالاستجابة. يراقب زمن كل تفاعلات النقر واللمس ولوحة المفاتيح خلال الزيارة، ويبلغ القيمة عند المئين 75 مع إسقاط قيمة شاذة لكل 50 تفاعلًا، لا الإدخال الأول وحده كما فعل FID. زمن التفاعل = تأخر الإدخال + مدة المعالجة + تأخر العرض. الجيد ≤ 200 ms والضعيف > 500 ms وفق بيانات الحقل عند p75. حل محل FID في 12 مارس 2024، وأزيل FID من الأدوات في سبتمبر 2024. أصلحه بتقسيم المهام الطويلة وإتاحة المسار الرئيسي عبر scheduler.yield() وتقليل عمل معالجات الأحداث وحجم DOM وتأجيل النصوص الخارجية. إنه مقياس ميداني، وTotal Blocking Time بديله المختبري، وقد لا يتفقان.

ما الذي يقيسه INP، وكيف يختلف عن FID؟

تعريف Google دقيق: INP “assesses a page’s overall responsiveness to user interactions by observing the latency of all click, tap, and keyboard interactions that occur throughout the lifespan of a user’s visit to a page.” (ترجمة) «يقيّم استجابة الصفحة العامة لتفاعلات المستخدم برصد زمن كل تفاعلات النقر واللمس ولوحة المفاتيح طوال زيارة المستخدم». Evidence for this claim INP observes click, tap, and keyboard interaction latency throughout a page visit rather than measuring only the first input delay. Scope: Current web.dev INP definition and qualifying interaction types. Confidence: high · Verified: web.dev: Interaction to Next Paint عبارة «كل التفاعلات طوال الزيارة» هي جوهر الأمر. INP مقياس على مستوى الزيارة لا وقت التحميل، ومنطق Google أن معظم وقت المستخدم في الصفحة يأتي بعد تحميلها، لذا تكون الاستجابة أثناء الاستخدام أهم من الانطباع الأول وحده.

توضح المقارنة مع First Input Delay الفكرة: “FID only measured the input delay of the first interaction on a page. INP improves on FID by observing all interactions on a page, beginning from the input delay, to the time it takes to run event handlers.” (ترجمة) «قاس FID تأخر الإدخال لأول تفاعل فقط، بينما يحسنه INP برصد كل التفاعلات من تأخر الإدخال حتى تشغيل معالجات الأحداث». قاس FID انتظار معالج تفاعل واحد وتجاهل مدة المعالج وزمن تحديث الشاشة؛ أما INP فيقيس الزمن الكامل لكل تفاعل.

هناك تفصيل مهم لأن خرافة شائعة تخطئه: لا يمثل INP أسوأ تفاعل حرفيًا. كي لا يعاقب الصفحة على قفزة عشوائية واحدة، يسقط المتصفح قيمة شاذة لكل 50 تفاعلًا، ثم يبلغ القيمة عند المئين 75 من مشاهدات الصفحة. في الزيارة قليلة التفاعلات تكون هذه أبطأ قيمة، وفي الزيارة الكثيفة تُستبعد أولًا قيمتان شاذتان مثلًا.

كما أن نطاق التفاعل أضيق مما يظنه الناس. تُقاس النقرات واللمسات وضغطات المفاتيح فقط، بينما تُستبعد التمرير والتحويم والتكبير صراحة. وقد تطلق إيماءة واحدة أحداثًا عدة؛ فاللمسة تنتج pointerdown وpointerup وclick، ويجمعها INP في تفاعل واحد لا ثلاثة. وداخل المجموعة يأخذ أطول مدة لحدث فردي لا مجموعها؛ فإذا كان pointerdown سريعًا وclick بطيئًا أُبلغ تفاعل واحد بحجم الحدث البطيء. وإذا لم تقع تفاعلات مؤهلة في الزيارة فلا يُبلغ INP للصفحة.

الأجزاء الثلاثة لزمن التفاعل

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

Interaction latency = Input delay + Processing duration + Presentation delay

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

يكشف إصدار الإسناد من web-vitals الأجزاء الثلاثة (inputDelay وprocessingDuration وpresentationDelay) لتعرف المهيمن في تفاعل حقيقي. ووفق بيانات Web Almanac لعام 2024 يكون تأخر العرض غالبًا أكبر جزء منفرد عند الوسيط، لكن مدة المعالجة هي موضع التحسين غالبًا لأنها تتضخم في الصفحات السيئة البناء.

INP measures the whole interaction. Attribute the delay to the waiting, handler, or presentation phase before choosing a fix. المصدر: web.dev

The interaction begins with input delay while the event waits for the main thread. Processing duration follows while the event-handler callbacks execute. Presentation delay runs from the end of the handlers until the browser lays out and paints the next frame. Together these three sequential phases make up the interaction latency measured by INP.

© Patrick Stox LLC · CC BY 4.0 ·

الحدود وقيد بيانات الحقل عند p75

التقييمقيمة INPموضع القياس
جيد≤ 200 msالمئين 75، الحقل
يحتاج إلى تحسين> 200 ms وحتى ≤ 500 msالمئين 75، الحقل
ضعيف> 500 msالمئين 75، الحقل

تحدد Google Search Central الهدف بوضوح: “an INP of less than 200 milliseconds” (ترجمة) «قيمة INP أقل من 200 ميلي ثانية»، وتقول عن البرنامج كله: “We highly recommend site owners achieve good Core Web Vitals for success with Search.” (ترجمة) «نوصي بشدة أن يحقق مالكو المواقع Core Web Vitals جيدة للنجاح في البحث». ميزانية 200 ms ضيقة فعلًا عندما تتذكر أن المتصفح يريد إطارًا كل نحو 16,7 ms عند 60 fps؛ فيجب أن ينجز عمل المعالج والعرض ضمنها. Evidence for this claim INP is good at 200 milliseconds or less and poor above 500 milliseconds, assessed at the 75th percentile. Scope: Current web.dev INP thresholds for field measurement. Confidence: high · Verified: web.dev: Interaction to Next Paint

لماذا INP مقياس ميداني، ولماذا لا تكفي بيانات المختبر؟

هذا فخ يقع فيه كثير من مختصي SEO: نتيجة Lighthouse خضراء لا تعني INP جيدًا. لكن عبارة «لا يستطيع Lighthouse قياس INP» تحتاج إلى ثلاث حالات منفصلة حتى لا تسيء قراءة الأدوات:

  1. لا يبلغ تشغيل Lighthouse القياسي غير التفاعلي أي INP. فهو يراقب تحميل الصفحة ولا ينقر أو يلمس أو يكتب، لذلك لا يوجد تفاعل لتوقيته. ويستخدم Total Blocking Time (TBT) بديلًا عند التحميل. تقول Google: “Because TBT correlates well with INP, a page with a high TBT is a reasonable indicator that there may be high INP values during load.” (ترجمة) «لارتباط TBT جيدًا بـINP، قد تشير قيمة TBT المرتفعة إلى قيم INP مرتفعة أثناء التحميل». المهم هو أثناء التحميل. لا يقول TBT شيئًا عن تفاعل يبطؤ بعد عشر ثوان عندما تعمل أداة مؤجلة؛ إنه بديل لا معادلة تحويل.
  2. ينتج التفاعل المنفذ يدويًا أو اصطناعيًا زمنًا فعليًا شبيهًا بـINP لذلك التفاعل. يفيد النقر على زر في DevTools أو برمجة نقرة في إعادة خلل محدد، لكنه يظل مسارًا واحدًا على جهاز واحد، ولا يمثل مزيج الأجهزة والمستخدمين والأهداف وعمر الزيارة في الحقل. تقول Google إن القيمة “will be dependent on what interactions are performed during the measurement period” (ترجمة) «تعتمد على التفاعلات المنفذة خلال فترة القياس»، وسلوك المستخدم متغير أكثر من أن يمثله تشغيل مختبري واحد.
  3. توزيع الحقل هو INP الفعلي. لذلك المصدر المعتمد هو بيانات الحقل من Chrome User Experience Report (CrUX) المعروضة في PageSpeed Insights وتقرير Core Web Vitals في Search Console. تقول Google: “Field data is the best source of information you can draw on when it comes to understanding which interactions are problematic for actual users.” (ترجمة) «بيانات الحقل أفضل مصدر لفهم التفاعلات المسببة للمشكلات للمستخدمين الفعليين».

استخدم المختبر في الحالتين 1 و2 لاكتشاف التفاعل البطيء وإعادة إنتاجه، واستخدم الحقل في الحالة 3 لتأكيد أثره الفعلي في نتائج الزوار.

لماذا تكون نتيجة INP ضعيفة؟

ترجع كل مشكلات INP تقريبًا إلى حجب المسار الرئيسي عند تفاعل المستخدم. وهذه المسببات المعتادة:

  • المهام الطويلة. كل مهمة على المسار الرئيسي تتجاوز 50 ms مهمة طويلة، وما فوق 50 ms هو «فترة الحجب». لا يمكن معالجة التفاعل أثناءها، وهي أكبر سبب منفرد.
  • معالجات الأحداث الثقيلة. يرفع العمل المتزامن الزائد داخل معالج النقر أو الإدخال مدة المعالجة مباشرة.
  • DOM كبير. تكلف الأشجار الأكبر عرضًا أكثر، فتزيد تأخر الإدخال والعرض.
  • النصوص الخارجية. وفق Web Almanac، تعد أدوات الموافقة وإدارة الوسوم والتحليلات والدردشة من أبرز المسببات حتى في مواقع المحتوى البسيطة، وهي أول ما أفحصه في صفحة لم أبنها.
  • JavaScript بعد التحميل. لا يعني رسم الصفحة اكتمال تحميلها؛ فقد تحجب النصوص المقيمة بعد الرسم الأول التفاعلات المبكرة.

كيف تصلحه؟

الاستراتيجيات، بترتيب تقريبي للأثر:

1. قسّم المهام الطويلة. جوهر نصيحة Google للمعالجات هو “do as little work as possible in them” (ترجمة) «نفّذ أقل قدر ممكن من العمل داخلها». قسّم العمل الكبير إلى مهام أصغر كي يدرج المتصفح تفاعل المستخدم بينها. وعند تقسيمها، “the browser can respond to higher-priority work much sooner — including user interactions.” (ترجمة) «يستطيع المتصفح الاستجابة للعمل الأعلى أولوية أسرع بكثير، ومنه تفاعلات المستخدم».

2. أفسح المجال للمسار الرئيسي. الطريقة الحديثة الموصى بها هي scheduler.yield() في Chrome 129+ وFirefox 142+: يوقف await scheduler.yield() شفرتك مؤقتًا ليتولى المتصفح العمل المعلق ثم يستأنفها بأولوية، فلا تتجاوزها مهام أخرى. البديل التقليدي setTimeout(..., 0) يعمل لكنه يضع الشفرة في آخر طابور المهام، وتفرض المتصفحات حدًا أدنى 5 ms بعد استدعاءات متداخلة عدة. توقف عن استخدام isInputPending()؛ إذ تقول Google: “we no longer recommend using this API.” (ترجمة) «لم نعد نوصي باستخدام API هذه». راجع تبويب Scripts للنمط.

3. قلّل العمل في معالجات الأحداث وأجّل غير الضروري. نفذ فقط التحديث المرئي المطلوب للإطار التالي بصورة متزامنة، وادفع الحفظ والتدقيق الإملائي والتحليلات وعد الكلمات إلى ما بعد requestAnimationFrame مع setTimeout أو yield. يرى المستخدم الاستجابة فورًا، ويأتي التسجيل بعدها.

4. تجنب تخبط التخطيط. قراءة خصائص التخطيط بعد كتابة الأنماط مباشرة في المهمة نفسها تجبر المتصفح على تخطيط متزامن كان يستطيع جمعه. اجمع القراءات ثم الكتابات.

5. قلّل حجم DOM. تُعرض الأشجار الأصغر أسرع. يستطيع content-visibility عرض العناصر خارج الشاشة عند الحاجة حتى لا تكلف أثناء التحميل أو التفاعل.

6. دقق النصوص الخارجية وأجّلها. هذا أعلى إصلاح أثرًا في SEO على المواقع الحقيقية. حمّل نصوص الموافقة والوسوم والتحليلات عند الحاجة أو اربطها بالتفاعل أو انقلها عن المسار الحرج. قد تفشل صفحة محتوى «خفيفة» في INP بسبب أداة مضمّنة ثقيلة وحدها.

هل يؤثر INP في الترتيب؟

نعم، INP واحد من مؤشرات Core Web Vitals الثلاثة، وهذه المؤشرات جزء من إشارات تجربة الصفحة لدى Google. لكنه إشارة خفيفة الوزن تفصل بين نتائج متقاربة في الملاءمة، لا عامل ترتيب أساسيًا. لا تطارد نتيجة INP مثالية على حساب المحتوى والملاءمة.

نقطتان عمليتان في SEO. أولًا، الجوال هو القياس الأصعب. في Web Almanac لعام 2024 اجتاز نحو 74% من مواقع الجوال INP مقابل نحو 97% على سطح المكتب، وبما أن Google تفهرس للجوال أولًا فالرقم المتنقل هو المهم. ثانيًا، المواقع المعقدة أسوأ: اجتاز نحو 53% فقط من أكبر 1 000 موقع، لأن الصفحات الغنية بالميزات ترسل JavaScript أكثر يحجب المسار الرئيسي. تطوير الميزات الثقيلة خطر على INP، وتكون صفحات المنتجات والدفع والبحث والنماذج أشد تعرضًا من المحتوى الثابت.

INP مقابل FID: الصورة الكاملة

FID (متقاعد)INP (حالي)
التفاعلاتالأول فقطكلها طوال الزيارة
ما يقيسهتأخر الإدخال فقطتأخر الإدخال + المعالجة + العرض
حد «الجيد»≤ 100 ms≤ 200 ms
الحالةأزيل من الأدوات في سبتمبر 2024Core Web Vital منذ 12 مارس 2024

انتهى FID؛ أزيل من Search Console يوم إطلاق INP، ومن BigQuery وAPI في CrUX بحلول سبتمبر 2024. إذا ظلت أداة أو عملية تدقيق تشير إلى FID فهي قديمة.

حالات طرفية تجعل بيانات INP تختلف

تفسر بعض خصائص دورة الحياة معظم أسئلة «لماذا لا يطابق RUM لدي CrUX؟»:

  • لا تفاعل، لا INP. إذا لم تتضمن الزيارة نقرة أو لمسة أو ضغطة مفتاح، أو لم تتضمن إلا إيماءات مستبعدة كالتمرير والتحويم، فلا توجد قيمة INP لمشاهدة الصفحة. هذا طبيعي في صفحات القراءة وليس خللًا في المراقبة.
  • تدخل iframes في المقياس، لكن JavaScript لديك لا ترى داخلها. يسهم التفاعل داخل iframe مضمنة، مثل إعلان أو أداة أو نموذج، في INP للصفحة. لكن نص RUM من الطرف الأول لا يستطيع قراءة أحداث iframe عابرة للأصول كما يفعل مقياس المتصفح، لذلك قد يختلف CrUX وRUM من الأصل نفسه بصورة مشروعة في الصفحات ذات التضمينات الخارجية. وثق الفجوة بدل اعتبارها خللًا.
  • تعيد الاستعادة من bfcache قيمة INP إلى الصفر. تبدأ الصفحة المستعادة من ذاكرة الرجوع والتقدم عدًا جديدًا، ولا تنتقل تفاعلات ما قبل المغادرة.
  • يجب أن تبلغ علامات التبويب الطويلة العمر أو الموجودة في الخلفية. قد تبقى علامة مفتوحة ساعات دون unload، ولا سيما على الجوال حيث قد يقتلها النظام؛ لذلك التقط INP عند إخفاء الصفحة لا عند unload وحده. ستفقد إعدادات RUM التي لا ترسل إلا عند unload هذه الزيارات بصمت.

موقع INP ضمن الصورة

INP جزء من Core Web Vitals إلى جانب Largest Contentful Paint للتحميل وCumulative Layout Shift للاستقرار المرئي. افحصه في PageSpeed Insights وتقرير Search Console الميداني، وشخصه في Lighthouse وChrome DevTools مختبريًا عبر بديل TBT. وتأتي البيانات الأساسية من CrUX.

Add an expert note

Pin an expert quote

New person? Create their unclaimed profile at /admin/experts/ → Pin a quote first.