מה זה Core Web Vitals ולמה זה חשוב?
Core Web Vitals הם אוסף של מדדי ביצועים שגוגל הגדירה כקריטיים לחוויית המשתמש באתרי אינטרנט. מאז שנת 2021, מדדים אלו הפכו לגורם דירוג רשמי באלגוריתם של גוגל, מה שאומר שמהירות האתר שלכם משפיעה ישירות על המיקום שלכם בתוצאות החיפוש.
בשנת 2026, החשיבות של ביצועי אתר רק גדלה. המשתמשים מצפים לחוויית גלישה מהירה וחלקה, במיוחד במובייל. מחקרים מראים כי 53% מהמשתמשים נוטשים אתר שלוקח לו יותר מ-3 שניות להיטען, וכל שנייה נוספת של עיכוב מפחיתה את שיעור ההמרה בכ-7%.
Core Web Vitals מתמקדים בשלושה היבטים מרכזיים של חוויית המשתמש: מהירות טעינה, אינטראקטיביות ויציבות ויזואלית. גוגל אוספת נתונים אמיתיים ממשתמשי Chrome (דרך דוח Chrome User Experience Report - CrUX) ומשתמשת בהם כדי להעריך את ביצועי האתר שלכם. זה אומר שלא מספיק שהאתר מהיר בסביבת הפיתוח שלכם - הוא צריך להיות מהיר גם עבור המשתמשים האמיתיים שלכם, על המכשירים והרשתות שלהם.
מעבר לדירוג בגוגל, ביצועי אתר טובים משפיעים ישירות על מדדים עסקיים. אתרים מהירים נהנים משיעורי המרה גבוהים יותר, זמן שהייה ארוך יותר, שיעור נטישה נמוך יותר ושביעות רצון גבוהה יותר של המשתמשים. עבור אתרי מסחר אלקטרוני, אופטימיזציית מהירות יכולה להוביל לעלייה משמעותית בהכנסות.
שלושת המדדים המרכזיים
נכון לשנת 2026, Core Web Vitals כוללים שלושה מדדים עיקריים. חשוב לציין כי במרץ 2024 המדד INP (Interaction to Next Paint) החליף רשמית את FID (First Input Delay) כאחד משלושת המדדים. בואו נכיר כל אחד מהם בפירוט.
Largest Contentful Paint
LCPמודד כמה זמן לוקח לאלמנט התוכן הגדול ביותר בעמוד להיטען ולהיות גלוי למשתמש. זה יכול להיות תמונה גדולה, בלוק טקסט, או וידאו.
Interaction to Next Paint
INPמודד את ההשהיה בין אינטראקציית המשתמש (לחיצה, הקשה, מקלדת) ועד שהדפדפן מציג את העדכון הויזואלי. נמדד לאורך כל חיי הדף.
Cumulative Layout Shift
CLSמודד את כמות ההזזות הבלתי צפויות של אלמנטים ויזואליים בעמוד. למשל, כשטקסט זז כי תמונה או מודעה נטענה מאוחר.
LCP - Largest Contentful Paint
LCP מודד את הזמן שלוקח לאלמנט התוכן הגדול ביותר ב-viewport להיטען באופן מלא. האלמנט הזה יכול להיות תמונת hero, כותרת גדולה, בלוק טקסט משמעותי או וידאו. הסף המומלץ הוא 2.5 שניות או פחות. גורמים שמשפיעים על LCP כוללים: זמן תגובת שרת איטי, חסימת CSS ו-JavaScript, זמן טעינת משאבים, ורינדור בצד הלקוח.
INP - Interaction to Next Paint
INP הוא המדד שהחליף את FID (First Input Delay) במרץ 2024. בעוד ש-FID מדד רק את ההשהיה של האינטראקציה הראשונה, INP מודד את כל האינטראקציות לאורך חיי הדף ומדווח על ההשהיה הגרועה ביותר (בקירוב - ה-percentile ה-98). הסף המומלץ הוא 200 מילישניות או פחות. לשפר INP, יש לצמצם עבודת JavaScript כבדה ב-main thread, לפצל tasks ארוכים, ולוודא שהדפדפן יכול לבצע rendering מהר אחרי אינטראקציה.
CLS - Cumulative Layout Shift
CLS מודד את סך כל הזזות הפריסה הבלתי צפויות שקורות בעמוד. למשל, כשאתם קוראים כתבה וטקסט פתאום זז כי מודעה נטענה מעליו, או כשכפתור זזים כי תמונה מעליו התרחבה. הסף המומלץ הוא ציון 0.1 או פחות. כדי לשפר CLS, יש להגדיר מידות מפורשות לתמונות ווידאו, להימנע מהוספת תוכן דינמי מעל תוכן קיים, ולהשתמש ב-font-display: swap בזהירות.
איך למדוד את הביצועים
לפני שמתחילים לבצע אופטימיזציות, חשוב למדוד את המצב הנוכחי. ישנם מספר כלים חינמיים ואיכותיים שיכולים לעזור לכם:
Google PageSpeed Insights
הכלי הרשמי של גוגל שמציג גם נתוני שדה (מידע אמיתי ממשתמשים) וגם נתוני מעבדה (מבחנים סינתטיים). היתרון הגדול שלו הוא שהוא מראה בדיוק את הנתונים שגוגל משתמשת בהם לצורך דירוג. פשוט הכניסו את כתובת ה-URL שלכם ב-pagespeed.web.dev וקבלו דוח מפורט.
Lighthouse
מובנה בתוך Chrome DevTools (טאב Lighthouse), מאפשר לבצע ביקורת ביצועים מפורטת ישירות מהדפדפן. ניתן גם להריץ אותו מ-CLI עבור בדיקות אוטומטיות ב-CI/CD pipeline.
# התקנה
npm install -g lighthouse
# הרצת בדיקה
lighthouse https://example.com --output html --output-path report.html
# הרצה במצב mobile
lighthouse https://example.com --preset=perf --form-factor=mobile
Chrome DevTools - Performance Tab
כלי מתקדם שמאפשר לנתח ברמת הפירוט את הביצועים, כולל פרופיל CPU, טיימליין של טעינה, ו-layout shifts. אידיאלי לאיתור צווארי בקבוק ספציפיים. פתחו את DevTools עם F12, עברו לטאב Performance, ולחצו על כפתור ההקלטה כדי לתפוס trace של הפעילות.
Google Search Console
דוח Core Web Vitals ב-Search Console מראה את הביצועים של כל העמודים באתר שלכם לאורך זמן, מחולק לקטגוריות: טוב, צריך שיפור, וגרוע. זהו הנתון הכי חשוב כי הוא מייצג את חוויית המשתמשים האמיתיים שלכם ומשפיע ישירות על הדירוג.
GTmetrix
כלי חיצוני פופולרי שמאפשר בדיקה מאזורים גיאוגרפיים שונים, כולל השוואה לפני ואחרי שינויים. מספק גרף מפלי טעינה (waterfall) מפורט שעוזר לזהות משאבים שחוסמים את הטעינה.
תמיד בדקו גם במצב מובייל וגם בדסקטופ. גוגל משתמשת ב-Mobile-First Indexing, כלומר הביצועים במובייל הם הקריטיים ביותר לדירוג. הפעילו את Throttling ב-DevTools כדי לדמות חיבור איטי של 3G.
אופטימיזציית תמונות
תמונות הן לרוב המשאב הכבד ביותר בדף אינטרנט ומהוות בממוצע 50% מנפח העמוד. אופטימיזציה נכונה של תמונות יכולה לשפר דרמטית את ה-LCP ואת זמני הטעינה הכוללים. הנה הטכניקות המרכזיות:
פורמטים מודרניים: WebP ו-AVIF
פורמט WebP מספק דחיסה טובה ב-25-35% מ-JPEG באותה איכות ויזואלית, ונתמך בכל הדפדפנים המודרניים. AVIF הוא פורמט חדש יותר שמספק דחיסה טובה עוד יותר, עד 50% מ-JPEG, אך התמיכה בדפדפנים עדיין לא מלאה. השתמשו בתגית <picture> כדי להציע מספר פורמטים:
<picture>
<!-- AVIF for browsers that support it -->
<source
type="image/avif"
srcset="hero-400.avif 400w,
hero-800.avif 800w,
hero-1200.avif 1200w"
sizes="(max-width: 768px) 100vw, 50vw"
>
<!-- WebP fallback -->
<source
type="image/webp"
srcset="hero-400.webp 400w,
hero-800.webp 800w,
hero-1200.webp 1200w"
sizes="(max-width: 768px) 100vw, 50vw"
>
<!-- JPEG fallback -->
<img
src="hero-800.jpg"
srcset="hero-400.jpg 400w,
hero-800.jpg 800w,
hero-1200.jpg 1200w"
sizes="(max-width: 768px) 100vw, 50vw"
alt="תיאור התמונה"
width="1200"
height="630"
loading="lazy"
decoding="async"
>
</picture>
Lazy Loading
טעינה עצלה אומרת שתמונות נטענות רק כשהן קרובות ל-viewport של המשתמש, ולא בטעינה הראשונית של הדף. זה מפחית משמעותית את זמן הטעינה ואת כמות הנתונים המועברים. חשוב: אל תשתמשו ב-lazy loading על תמונת ה-LCP (בדרך כלל התמונה הראשונה/הראשית בעמוד) כי זה דווקא יפגע ב-LCP.
<!-- תמונת Hero - בלי lazy loading, עם fetchpriority גבוה -->
<img
src="hero.webp"
alt="תמונה ראשית"
width="1200"
height="630"
fetchpriority="high"
decoding="async"
>
<!-- תמונות בהמשך הדף - עם lazy loading -->
<img
src="product.webp"
alt="תמונת מוצר"
width="400"
height="300"
loading="lazy"
decoding="async"
>
הגדרת width ו-height על תגית img מאפשרת לדפדפן לשריין את המקום הנכון עבור התמונה לפני שהיא נטענת, מה שמונע Layout Shifts ומשפר את ציון ה-CLS. אפשר גם להשתמש ב-aspect-ratio ב-CSS.
מזעור CSS ו-JavaScript
קבצי CSS ו-JavaScript שלא עברו אופטימיזציה יכולים להאט משמעותית את זמני הטעינה ולחסום את הרינדור של העמוד. הנה הטכניקות המרכזיות לאופטימיזציה שלהם:
Minification - מזעור קוד
מזעור מסיר רווחים, הערות ותווים מיותרים מקבצי CSS ו-JS מבלי לשנות את הפונקציונליות. זה יכול לחסוך 20-40% מגודל הקובץ. כלים מומלצים: Terser ל-JavaScript, cssnano ל-CSS, או bundlers כמו Vite ו-webpack שעושים את זה אוטומטית.
Code Splitting - פיצול קוד
במקום לשלוח קובץ JavaScript ענק אחד, פצלו אותו לחלקים קטנים (chunks) שנטענים רק כשצריך אותם. ב-React, השתמשו ב-React.lazy() וב-dynamic import():
// במקום import רגיל שטוען הכל מראש:
// import HeavyChart from './components/HeavyChart';
// השתמשו ב-dynamic import:
const HeavyChart = React.lazy(() => import('./components/HeavyChart'));
function Dashboard() {
return (
<Suspense fallback={<div>...טוען</div>}>
<HeavyChart />
</Suspense>
);
}
Tree Shaking
Tree shaking היא טכניקה שמסירה קוד שלא נמצא בשימוש מה-bundle הסופי. וודאו שאתם משתמשים ב-ES modules (import/export) ולא ב-CommonJS (require) כדי שה-bundler יוכל לנתח את התלויות ולהסיר קוד מיותר. למשל, במקום import _ from 'lodash' שייבא את כל הספרייה, השתמשו ב-import debounce from 'lodash/debounce'.
Critical CSS
הטמיעו את ה-CSS הקריטי (הנדרש לרינדור הראשוני של ה-above-the-fold) ישירות ב-HTML, וטענו את שאר ה-CSS באופן אסינכרוני:
<head>
<!-- Critical CSS inline -->
<style>
/* רק הסגנונות הנדרשים ל-above-the-fold */
body { margin: 0; font-family: 'Heebo', sans-serif; }
.header { background: #0F0A1F; padding: 1rem; }
.hero { padding: 4rem 2rem; }
</style>
<!-- Non-critical CSS loaded async -->
<link rel="preload" href="styles.css" as="style"
onload="this.onload=null;this.rel='stylesheet'">
<noscript><link rel="stylesheet" href="styles.css"></noscript>
</head>
Defer ו-Async לסקריפטים
סקריפטים שנטענים ללא defer או async חוסמים את הרינדור של הדף. השתמשו ב-defer לסקריפטים שצריכים לרוץ אחרי שה-HTML מנותח, ו-async לסקריפטים עצמאיים כמו אנליטיקס:
<!-- חוסם רינדור - הימנעו! -->
<script src="app.js"></script>
<!-- defer: נטען במקביל, רץ אחרי HTML parsing -->
<script src="app.js" defer></script>
<!-- async: נטען במקביל, רץ ברגע שמוכן -->
<script src="analytics.js" async></script>
<!-- module: מתנהג כ-defer בברירת מחדל -->
<script type="module" src="app.mjs"></script>
שימוש ב-CDN ו-Caching
CDN (Content Delivery Network) היא רשת של שרתים הפזורים ברחבי העולם, שמגישה את תוכן האתר מהשרת הקרוב ביותר למשתמש. שילוב נכון של CDN ואסטרטגיית caching יכולים לשפר דרמטית את זמני הטעינה.
איך CDN עובד?
כשמשתמש מבקש עמוד, במקום שהבקשה תגיע עד לשרת המקורי שלכם (למשל בגרמניה), היא מוגשת משרת edge קרוב (למשל בתל אביב). זה מפחית את ה-latency ומשפר את ה-TTFB בצורה משמעותית. שירותי CDN פופולריים כוללים Cloudflare (יש תוכנית חינמית מצוינת), AWS CloudFront, ו-Fastly.
Browser Caching
הגדרת cache headers נכונה מאפשרת לדפדפן לשמור משאבים מקומית ולא להוריד אותם שוב בביקור הבא. הנה הגדרות מומלצות:
# קבצים סטטיים - cache ל-1 שנה
<IfModule mod_expires.c>
ExpiresActive On
# תמונות
ExpiresByType image/webp "access plus 1 year"
ExpiresByType image/avif "access plus 1 year"
ExpiresByType image/jpeg "access plus 1 year"
ExpiresByType image/png "access plus 1 year"
ExpiresByType image/svg+xml "access plus 1 year"
# פונטים
ExpiresByType font/woff2 "access plus 1 year"
# CSS & JS
ExpiresByType text/css "access plus 1 year"
ExpiresByType application/javascript "access plus 1 year"
# HTML - cache קצר
ExpiresByType text/html "access plus 1 hour"
</IfModule>
# Enable gzip compression
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/css
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/json
AddOutputFilterByType DEFLATE image/svg+xml
</IfModule>
כשמגדירים cache ארוך לקבצים סטטיים, חשוב להשתמש ב-cache busting - הוספת hash לשם הקובץ (למשל style.a1b2c3.css). כך, כשמעדכנים את הקובץ, השם משתנה והדפדפן יודע להוריד את הגרסה החדשה. כלי Build כמו Vite ו-webpack עושים את זה אוטומטית.
אופטימיזציית פונטים
פונטים מותאמים אישית יכולים להוסיף משקל משמעותי לדף ולגרום ל-FOUT (Flash of Unstyled Text) או FOIT (Flash of Invisible Text), שפוגעים ב-CLS וב-LCP. הנה איך לאופטמז את טעינת הפונטים, במיוחד רלוונטי לפונטים בעברית:
font-display: swap
הגדרה זו אומרת לדפדפן להציג טקסט מיד עם פונט מערכת, ולהחליף לפונט המותאם כשהוא נטען. זה מונע טקסט בלתי נראה ומשפר את ה-LCP. אבל שימו לב - ההחלפה עצמה גורמת ל-layout shift, אז שלבו עם טכניקות אחרות:
/* הגדרת פונט עם font-display: swap */
@font-face {
font-family: 'Heebo';
src: url('fonts/heebo-var.woff2') format('woff2');
font-weight: 100 900;
font-style: normal;
font-display: swap;
/* Subsetting - רק תווים בעברית ובסיסיים */
unicode-range: U+0590-05FF, U+200C-2010, U+20AA,
U+25CC, U+FB1D-FB4F, U+0000-007F;
}
/* size-adjust למניעת layout shift */
@font-face {
font-family: 'Heebo-fallback';
src: local('Arial');
size-adjust: 105%;
ascent-override: 95%;
descent-override: 22%;
line-gap-override: 0%;
}
Preload פונטים קריטיים
השתמשו ב-preload כדי לטעון את הפונט העיקרי בעדיפות גבוהה, עוד לפני שה-CSS מנותח:
<link rel="preload"
href="/fonts/heebo-var.woff2"
as="font"
type="font/woff2"
crossorigin>
פורמט WOFF2
WOFF2 הוא פורמט הפונט המודרני עם הדחיסה הטובה ביותר - קטן ב-30% מ-WOFF. כל הדפדפנים המודרניים תומכים בו. עבור פונטים בעברית, שקלו לבצע subset שכולל רק את התווים שאתם צריכים - אלף-בית עברי, ספרות וסימנים בסיסיים. כלים כמו glyphhanger או subfont יכולים לעזור ליצור subset אופטימלי.
שיפור זמני תגובת שרת
TTFB (Time to First Byte) הוא הזמן שלוקח לדפדפן לקבל את הבייט הראשון מהשרת. TTFB גבוה משפיע ישירות על כל המדדים האחרים - אם השרת איטי, הכל איטי. הסף המומלץ הוא פחות מ-800ms, אך עדיף לשאוף ל-200ms ומטה.
אופטימיזציית שרת
- שדרגו את תוכנית האחסון - אחסון שיתופי זול הוא לרוב איטי. שקלו VPS או אחסון ענן.
- הפעילו HTTP/2 או HTTP/3 - פרוטוקולים מודרניים מאפשרים multiplexing והפחתת latency.
- דחיסת Brotli - יעילה יותר מ-Gzip, נתמכת בכל הדפדפנים המודרניים.
- שמרו את השרת קרוב לקהל היעד - עבור קהל ישראלי, בחרו שרת באירופה או ישראל.
Server-Side Rendering (SSR)
אם האתר שלכם בנוי ב-React, Vue או Angular, שקלו להשתמש ב-SSR. במקום לשלוח קובץ HTML ריק שה-JavaScript ממלא, השרת שולח HTML מלא ומוכן. זה משפר דרמטית את ה-LCP ואת זמן הצגת התוכן הראשוני. פריימוורקים כמו Next.js ו-Nuxt.js מספקים SSR מובנה.
אופטימיזציית בסיס נתונים
שאילתות בסיס נתונים איטיות הן סיבה שכיחה ל-TTFB גבוה. וודאו שיש לכם אינדקסים נכונים, השתמשו ב-query caching, הימנעו מ-N+1 queries, ושקלו שימוש ב-Redis או Memcached לקישור שכבה של caching בין האפליקציה לבסיס הנתונים. באתרי WordPress, פלאגינים כמו WP Super Cache או W3 Total Cache יכולים לשפר משמעותית את ביצועי השרת.
Lazy Loading ו-Preloading
שילוב חכם בין lazy loading (טעינה מאוחרת) ו-preloading (טעינה מוקדמת) מאפשר לשלוט בדיוק מתי כל משאב נטען ולהעניק למשתמש חוויה חלקה ומהירה.
Native Lazy Loading
תגית loading="lazy" נתמכת היום בכל הדפדפנים המודרניים ופועלת על <img> ועל <iframe>. היא הפתרון הפשוט ביותר שלא דורש JavaScript כלל:
<!-- תמונות -->
<img src="photo.webp" loading="lazy" alt="תיאור" width="600" height="400">
<!-- iframes (מפות, סרטונים) -->
<iframe src="https://www.youtube.com/embed/VIDEO_ID"
loading="lazy"
title="סרטון"
width="560" height="315"></iframe>
Intersection Observer API
למקרים שצריכים שליטה מדויקת יותר, כמו טעינת קומפוננטות שלמות או הפעלת אנימציות, השתמשו ב-Intersection Observer:
const observer = new IntersectionObserver((entries) => {
entries.forEach(entry => {
if (entry.isIntersecting) {
const img = entry.target;
img.src = img.dataset.src;
img.classList.add('loaded');
observer.unobserve(img);
}
});
}, {
rootMargin: '200px' // התחל לטעון 200px לפני שנכנס לviewport
});
document.querySelectorAll('img[data-src]').forEach(img => {
observer.observe(img);
});
Resource Hints: Preconnect, Prefetch, Preload
resource hints מאפשרים לכם "לרמוז" לדפדפן אילו משאבים יידרשו בקרוב, כדי שיוכל להכין אותם מראש:
<head>
<!-- preconnect: יצירת חיבור מוקדם לדומיין חיצוני -->
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://cdn.example.com" crossorigin>
<!-- dns-prefetch: רזולוציית DNS מוקדמת (fallback) -->
<link rel="dns-prefetch" href="https://analytics.example.com">
<!-- preload: טעינה מוקדמת של משאב קריטי -->
<link rel="preload" href="/fonts/heebo.woff2" as="font"
type="font/woff2" crossorigin>
<link rel="preload" href="/hero.webp" as="image">
<!-- prefetch: טעינה מוקדמת של משאב לעמוד הבא -->
<link rel="prefetch" href="/about.html">
<!-- prerender: רינדור מלא של עמוד הבא -->
<link rel="prerender" href="/checkout.html">
</head>
Preload צריך לשמש רק למשאבים קריטיים שהדפדפן לא יכול לגלות בעצמו מוקדם (כמו פונט שמוזכר ב-CSS, או תמונת hero). שימוש מופרז ב-preload דווקא יפגע בביצועים כי הוא מתחרה ברוחב הפס עם משאבים קריטיים אחרים.
צ'קליסט מסכם לשיפור מהירות
השתמשו ברשימה הבאה כמדריך מעשי לאופטימיזציית האתר שלכם. עברו על כל סעיף ובדקו האם הוא מיושם:
תמונות ומדיה
- המרת תמונות לפורמט WebP או AVIF
- הגדרת width ו-height לכל תמונה
- שימוש ב-srcset ו-sizes לתמונות רספונסיביות
- הפעלת lazy loading לתמונות מתחת ל-fold
- הוספת fetchpriority="high" לתמונת ה-LCP
CSS ו-JavaScript
- מזעור (minification) של כל קבצי CSS ו-JS
- הטמעת Critical CSS ב-inline
- שימוש ב-defer או async לסקריפטים
- יישום code splitting ו-tree shaking
- הסרת CSS ו-JS שלא בשימוש
שרת ו-Caching
- הגדרת CDN
- הגדרת cache headers מתאימים
- הפעלת דחיסת Brotli או Gzip
- שימוש ב-HTTP/2 או HTTP/3
- אופטימיזציית TTFB מתחת ל-800ms
פונטים
- שימוש בפורמט WOFF2
- הגדרת font-display: swap
- Preload לפונט הראשי
- Subset של פונטים לתווים נדרשים בלבד
כללי
- שימוש ב-preconnect לדומיינים חיצוניים
- מניעת layout shifts עם מידות מפורשות
- פיצול long tasks ב-JavaScript
- בדיקה ב-PageSpeed Insights לפחות פעם בשבוע
- מעקב ב-Search Console אחר שינויים ב-Core Web Vitals
שאלות נפוצות
מומלץ לשאוף לציון 90 ומעלה בדסקטופ ו-70 ומעלה במובייל. עם זאת, חשוב יותר שמדדי Core Web Vitals (LCP, INP, CLS) יהיו באזור הירוק מאשר הציון המספרי עצמו. הציון הוא ממוצע משוקלל של מספר מדדים, וייתכן שהציון לא גבוה אבל כל המדדים הקריטיים בסדר. התמקדו קודם כל בלהביא את שלושת המדדים המרכזיים לאזור הירוק.
כן, מאז 2021 Core Web Vitals הם חלק ממערכת הדירוג של גוגל כחלק מאותות "חוויית הדף" (Page Experience signals). אתרים עם ביצועים טובים מקבלים יתרון בדירוג, במיוחד כשהתוכן והרלוונטיות דומים בין מתחרים. עם זאת, חשוב לזכור שתוכן איכותי ורלוונטי עדיין חשוב יותר - אתר עם תוכן מצוין אבל ביצועים בינוניים עדיין ידורג גבוה יותר מאתר מהיר עם תוכן חלש.
FID (First Input Delay) מדד רק את ההשהיה של האינטראקציה הראשונה של המשתמש עם הדף - למשל הלחיצה הראשונה. הבעיה הייתה שזה לא ייצג את חוויית המשתמש המלאה. INP (Interaction to Next Paint) מודד את כל האינטראקציות לאורך כל חיי הדף ומדווח על ההשהיה הגרועה ביותר (ליתר דיוק, ה-percentile ה-98 של כל האינטראקציות). INP החליף רשמית את FID במרץ 2024 והוא מדד מקיף ומדויק יותר של האינטראקטיביות.
גוגל משתמשת בנתוני שדה (Field Data) מדוח CrUX שנאספים על פני חלון של 28 יום. לכן, לאחר שיפור ביצועי האתר, צריכים לעבור 28 יום עד שהנתונים יתעדכנו באופן מלא. לאחר מכן, עשויים לעבור עוד כמה שבועות עד שגוגל תעבד את הנתונים החדשים ותעדכן את הדירוג בהתאם. בסך הכל, מדובר בתהליך של 4-8 שבועות. אפשר לעקוב אחרי ההתקדמות בדוח Core Web Vitals ב-Google Search Console.
בהחלט. CDN יכול לשפר את זמני הטעינה ב-40%-60% עבור משתמשים שנמצאים רחוק מהשרת המקורי, בזכות הגשת תוכן מ-edge server קרוב. עבור אתרים ישראליים עם קהל מקומי, ההשפעה על ה-latency קטנה יותר (אם השרת כבר באירופה), אך CDN עדיין מספק יתרונות משמעותיים: אופטימיזציית תמונות אוטומטית, דחיסת Brotli, הגנת DDoS, ו-HTTP/3 אוטומטי. Cloudflare, למשל, מציע תוכנית חינמית שכבר מספקת רוב היתרונות האלה.