INP چیست؟ Interaction to Next Paint به زبان ساده

INP سئو فنی و سرعت به‌روزرسانی: ۱۱ آبان ۱۴۰۵
تعریف کوتاه

INP (Interaction to Next Paint) می‌سنجد صفحه چقدر سریع به کلیک، لمس و تایپ کاربر واکنش نشان می‌دهد. از مارس ۲۰۲۴ جای FID را در Core Web Vitals گرفته و برای «خوب» بودن باید زیر ۲۰۰ میلی‌ثانیه باشد.

صفحه‌ای را تصور کنید که سریع باز می‌شود، اما وقتی روی منو یا دکمه‌ی «افزودن به سبد» می‌زنید، نیم ثانیه هیچ اتفاقی نمی‌افتد. LCP این مشکل را نمی‌بیند؛ INP می‌بیند.

حد مجاز

خوب: تا ۲۰۰ میلی‌ثانیه. نیاز به بهبود: تا ۵۰۰ میلی‌ثانیه. ضعیف: بیش از ۵۰۰ میلی‌ثانیه.

فرق INP و FID

FID فقط تأخیر اولین تعامل را می‌سنجید، آن هم فقط تا شروع پردازش. INP همه‌ی تعامل‌های کاربر در طول بازدید را بررسی می‌کند و تقریباً کندترین آن‌ها را گزارش می‌دهد؛ از لحظه‌ی کلیک تا نمایش تغییر روی صفحه. برای همین تصویر واقعی‌تری از حس کاربر می‌دهد.

سه مرحله‌ی هر تعامل

  1. تأخیر ورودی: مرورگر مشغول کار دیگری است و نمی‌تواند فوراً به کلیک برسد.
  2. زمان پردازش: اجرای کدهای جاوااسکریپتی مربوط به آن کلیک.
  3. تأخیر نمایش: محاسبه‌ی چیدمان و رسم تغییرات.

دلایل رایج INP بالا

  • جاوااسکریپت سنگین و «کارهای طولانی» بیش از ۵۰ میلی‌ثانیه؛
  • اسکریپت‌های شخص ثالث مثل چت آنلاین، پاپ‌آپ، ابزارهای ردیابی و تبلیغات؛
  • صفحه‌سازهای سنگین و افزونه‌های زیاد در وردپرس؛
  • DOM خیلی بزرگ با هزاران عنصر.

راه‌های بهبود

  • اسکریپت‌های غیرضروری را حذف یا با تأخیر (بعد از تعامل کاربر) بارگذاری کنید.
  • کارهای طولانی جاوااسکریپت را به قطعه‌های کوچک‌تر تقسیم کنید تا مرورگر بین آن‌ها به کاربر جواب بدهد.
  • بعد از کلیک، اول بازخورد فوری (مثل تغییر حالت دکمه) نشان دهید و کار سنگین را بعد انجام دهید.
  • تعداد افزونه‌ها و ویجت‌های صفحه را کم کنید.

چطور بررسی کنیم؟

INP فقط با تعامل واقعی کاربران سنجیده می‌شود؛ پس به داده‌ی میدانی در PageSpeed Insights و گزارش Core Web Vitals سرچ کنسول نگاه کنید. برای عیب‌یابی، افزونه‌ی Web Vitals کروم و پنل Performance نشان می‌دهند کدام تعامل کند است و کدام اسکریپت مقصر است.

آموزش کامل بهینه‌سازی سرعت سایت