אם עיכוב הקלט גבוה, סביר להניח שהאינטראקציה עצמה אינה הגורם הישיר לאיטיות. יש לחפש עבודה אחרת שתופסת את ה-main thread לפני שהמטפלים יכולים להתחיל. המטרה היא לשמור על כל רכיב באינטראקציה קצר ככל האפשר, לא רק על עיכוב הקלט.
מה לעשות?
כאן מטפלי האירועים הם הגורם הישיר לאיטיות. כל קוד שרץ בכל מטפל אירועים יעכב את האינטראקציה – כולל קוד ממסגרות עבודה, ספריות, סקריפטים של צד שלישי, ואפילו קוד משלכם.
מה לעשות?
setInterval() או למשימות אסינכרוניות. עיכוב תצוגה גבוה אומר שיש עיכוב ברינדור אחרי שהמטפלים סיימו. יש להתמקד בצמצום זמן הרינדור. עם זאת, המידע המלא על הדרך המדויקת לעשות זאת אינו זמין במקורות שסופקו.
ניתן למדוד INP בקוד JavaScript על ידי מדידת זמני האירועים. כדי לאבחן אינטראקציות איטיות ידנית, השתמשו בכלי הפיתוח של Chrome, במיוחד בחלונית Performance Insights שמציגה פירוט של שלושת הרכיבים.
חשוב להקליט אינטראקציות משתמש שונות כדי להבין טוב יותר את התורמים הגדולים ביותר ל-INP עבור הדף.
אופטימיזציה של INP דורשת גישה הוליסטית: לא מספיק לייעל רק את עיכוב הקלט – יש לשמור על כל שלושת הרכיבים קצרים ככל האפשר. התמקדו בזיהוי הרכיב האיטי ביותר באינטראקציה, ובצעו אופטימיזציה ממוקדת.