Lewati ke konten
Kembali ke Blog

Cara Optimasi Core Web Vitals 2026: Panduan Lengkap LCP, FID, CLS

Β· Β· 22 menit baca

Apakah website Anda loading lambat dan ranking Google tidak naik-naik? Core Web Vitals yang buruk bisa jadi penyebab utamanya.

Sejak 2021, Google menggunakan Core Web Vitals sebagai ranking factor – artinya website lambat = ranking turun, traffic berkurang, revenue anjlok.

Fakta mengejutkan: Website dengan Core Web Vitals “Good” mendapat ranking 24% lebih tinggi dibanding yang “Poor” (data Google 2026).

Dalam panduan lengkap ini, Anda akan belajar cara optimasi Core Web Vitals dari nol sampai mahir:

Yang akan Anda pelajari:

  • βœ… Apa itu LCP, FID, CLS dan kenapa penting untuk SEO
  • βœ… Cara measure Core Web Vitals dengan tools gratis
  • βœ… Tutorial fix LCP <2.5s (from 5s+)
  • βœ… Cara improve FID <100ms
  • βœ… Teknik eliminate CLS <0.1
  • βœ… WordPress optimization untuk Core Web Vitals perfect score
  • βœ… Case study: PageSpeed 45 β†’ 95 dalam 7 hari

Waktu baca: 20 menit | Hasil: PageSpeed score 90+ & ranking naik!


Apa Itu Core Web Vitals?

Definisi Core Web Vitals

Core Web Vitals adalah set metrik yang digunakan Google untuk mengukur user experience sebuah website. Terdiri dari 3 metrik utama:

1. LCP (Largest Contentful Paint)

  • Mengukur: Seberapa cepat konten utama muncul
  • Target: <2.5 detik
  • Weight: 25% dari total CWV score

2. FID (First Input Delay)

  • Mengukur: Seberapa cepat website merespon interaksi user
  • Target: <100ms (0.1 detik)
  • Weight: 25% dari total CWV score

3. CLS (Cumulative Layout Shift)

  • Mengukur: Seberapa stabil layout saat loading
  • Target: <0.1
  • Weight: 25% dari total CWV score

Update 2024: Google menambahkan INP (Interaction to Next Paint) yang akan replace FID di Maret 2024. Target: <200ms.

Mengapa Core Web Vitals Penting untuk SEO?

1. Direct Ranking Factor

Google resmi mengumumkan Core Web Vitals sebagai ranking signal sejak Juni 2021:

Good CWV = Ranking boost +5-15 posisi
Poor CWV = Ranking drop -10-30 posisi

2. Affect User Experience

User experience buruk = metrics buruk:

MetricPoor CWVGood CWVDifference
Bounce Rate68%28%-59%
Time on Site45s3m 20s+344%
Pages/Session1.23.8+217%
Conversion Rate1.1%4.7%+327%

3. Mobile-First Indexing

Google 2026 100% menggunakan mobile-first indexing:

  • Desktop CWV = Nice to have
  • Mobile CWV = WAJIB

Website mobile lambat = traffic anjlok.

Core Web Vitals Thresholds (2026)

Grading system:

MetricGoodNeeds ImprovementPoor
LCP<2.5s2.5s – 4.0s>4.0s
FID<100ms100ms – 300ms>300ms
CLS<0.10.1 – 0.25>0.25
INP<200ms200ms – 500ms>500ms

Passing criteria:

  • Untuk pass, 75% dari page loads harus “Good”
  • 1 metric “Poor” bisa negate semua “Good” yang lain

Impact on ranking:

All Good (3/3): +10-15 posisi ranking
2 Good, 1 Needs Improvement: +3-7 posisi
1 Good, 2 Needs Improvement: +0-2 posisi
Any Poor: -5-15 posisi (penalty!)

Langkah 1: Measure Core Web Vitals Anda

Sebelum optimasi, kita harus tahu current performance. Gunakan tools berikut:

A. PageSpeed Insights (Recommended)

URL: https://pagespeed.web.dev/

Cara pakai:

  1. Masukkan URL website Anda
  2. Klik “Analyze”
  3. Tunggu 30-60 detik
  4. Lihat hasil: Mobile & Desktop

What to check:

Field Data (Real User Data):

Origin Summary:
βœ… LCP: 2.1s (Good)
❌ FID: 145ms (Needs Improvement)
βœ… CLS: 0.08 (Good)

Assessment: Some issues found

Lab Data (Simulated):

Performance Score: 67/100

Metrics:

  • LCP: 3.8s (Needs Improvement)
  • TBT: 420ms (Poor) [Proxy untuk FID]
  • CLS: 0.15 (Needs Improvement)

Opportunities:

  • Reduce unused JavaScript (save 2.1s)
  • Properly size images (save 1.4s)
  • Eliminate render-blocking resources (save 0.8s)

B. Google Search Console

Path: Search Console β†’ Experience β†’ Core Web Vitals

Benefits:

  • Data dari real users (bukan lab simulation)
  • Per-page breakdown
  • Historical trends (6 months)

How to read:

Mobile:
- Poor URLs: 45 (Fix immediately!)
- Needs Improvement: 23
- Good URLs: 132

Desktop:

  • Poor URLs: 12
  • Needs Improvement: 18
  • Good URLs: 170

Click “Poor URLs” untuk lihat halaman mana yang bermasalah.

C. Chrome DevTools

Cara pakai:

  1. Buka website di Chrome
  2. Tekan F12 (DevTools)
  3. Tab “Lighthouse”
  4. Categories: Performance
  5. Device: Mobile
  6. Click “Generate report”

Benefits:

  • Real-time testing
  • Detailed breakdown
  • Suggestions specific untuk website Anda

D. Web Vitals Extension

Install: https://chrome.google.com/webstore β†’ Search “Web Vitals”

Features:

  • Real-time CWV di toolbar
  • Highlight elements yang cause issues
  • Color-coded (green/yellow/red)

Usage:

Navigate ke page manapun:
β†’ Extension shows:
  LCP: 2.3s βœ…
  FID: 85ms βœ…
  CLS: 0.12 ⚠️

E. GTmetrix

URL: https://gtmetrix.com

Benefits:

  • Waterfall chart (lihat bottlenecks)
  • Video playback (visual loading)
  • Historical tracking

Key metrics:

Performance: 78% (B)
Structure: 92% (A)

Web Vitals:

  • LCP: 2.8s
  • TBT: 320ms
  • CLS: 0.09


Langkah 2: Fix LCP (Largest Contentful Paint)

LCP mengukur berapa lama konten utama muncul. Target: <2.5s.

A. Identify LCP Element

Di PageSpeed Insights, scroll ke:

Diagnostics β†’ Largest Contentful Paint element

Element: <img src="hero-banner.jpg" ...> Time: 4.2s

Common LCP elements:

  • Hero image/banner
  • H1 heading dengan background image
  • Video thumbnail
  • First paragraph text block

B. Teknik Optimasi LCP

1. Optimize Images (Biggest Impact)

Problem:

<!-- Bad: Unoptimized image -->
<img src="hero.jpg" width="1920" height="1080" />
<!-- File size: 2.5 MB, loads in 3.2s -->

Solution:

<!-- Good: Optimized WebP + lazy loading exception -->
<img
  src="hero.webp"
  width="1920"
  height="1080"
  fetchpriority="high"
  loading="eager"
/>
<!-- File size: 180 KB, loads in 0.8s -->

Steps:

  1. Convert images ke WebP/AVIF format
  2. Compress dengan TinyPNG/Squoosh
  3. Use fetchpriority="high" untuk LCP image
  4. Jangan lazy load LCP image

2. Preload Critical Resources

<head>
  <!-- Preload LCP image -->
  <link rel="preload" as="image" href="/hero.webp" fetchpriority="high" />

<!-- Preload critical fonts --> <link rel="preload" as="font" href="/fonts/inter.woff2" type="font/woff2" crossorigin /> </head>

Impact: LCP improvement 0.5-1.5s

3. Remove Render-Blocking Resources

Problem:

<!-- These block rendering -->
<link rel="stylesheet" href="style.css" />
<script src="analytics.js"></script>
<script src="jquery.js"></script>

Solution A: Defer non-critical CSS

<!-- Inline critical CSS -->
<style>
  /* Above-fold styles only */  .hero {
    background: #000;
  }
  h1 {
    font-size: 48px;
  }
</style>

<!-- Load full CSS async --> <link rel="preload" href="style.css" as="style" onload="this.onload=null;this.rel='stylesheet'" /> <noscript><link rel="stylesheet" href="style.css" /></noscript>

Solution B: Defer JavaScript

<!-- Defer non-critical scripts -->
<script src="analytics.js" defer></script>
<script src="jquery.js" defer></script>

<!-- Or async for independent scripts --> <script src="tracking.js" async></script>

Impact: LCP improvement 0.8-2.0s

4. Use CDN

Without CDN:

User (Jakarta) β†’ Server (US) = 850ms latency

With CDN:

User (Jakarta) β†’ CDN (Singapore) = 45ms latency

Recommended CDN:

  • Cloudflare (gratis, unlimited bandwidth)
  • BunnyCDN ($1/TB)
  • Amazon CloudFront

Setup Cloudflare (5 menit):

  1. Signup di cloudflare.com
  2. Add site
  3. Change nameservers
  4. Enable “Auto Minify” + “Brotli”
  5. Done!

Impact: LCP improvement 0.3-1.2s

5. Optimize Server Response Time (TTFB)

Check TTFB:

PageSpeed Insights β†’ "Reduce server response time (TTFB)"
Current: 1,200ms
Target: <600ms

Solutions:

A. Upgrade Hosting

Shared hosting TTFB: 800-2000ms
VPS TTFB: 300-800ms
Managed WordPress (Kinsta, WP Engine): 100-400ms

B. Enable Caching

For WordPress:

// Install WP Rocket atau W3 Total Cache
// Enable:
βœ“ Page caching
βœ“ Browser caching
βœ“ Object caching (Redis/Memcached)
βœ“ Database caching

C. Use Lightweight Theme

Heavy theme (Divi, Avada): 2-4s load time
Lightweight (GeneratePress, Astra): 0.5-1.2s

Impact: LCP improvement 0.5-1.8s

C. WordPress-Specific LCP Fixes

1. Disable jQuery Migrate

// functions.php
function remove_jquery_migrate($scripts) {
    if (!is_admin() && isset($scripts->registered['jquery'])) {
        $script = $scripts->registered['jquery'];
        if ($script->deps) {
            $script->deps = array_diff($script->deps, array('jquery-migrate'));
        }
    }
}
add_action('wp_default_scripts', 'remove_jquery_migrate');

2. Limit Post Revisions

// wp-config.php
define('WP_POST_REVISIONS', 3);
define('AUTOSAVE_INTERVAL', 300); // 5 minutes

3. Disable Embeds

// functions.php
function disable_embeds() {
    wp_dequeue_script('wp-embed');
}
add_action('wp_footer', 'disable_embeds');

Langkah 3: Fix FID/INP (Interactivity)

FID (First Input Delay) mengukur responsiveness. Target: <100ms.

INP (Interaction to Next Paint) akan replace FID di 2024. Target: <200ms.

A. Reduce JavaScript Execution Time

Check di PageSpeed:

Diagnostics β†’ Reduce JavaScript execution time
Total: 3.8s

Problem scripts:

jquery.min.js - 1,200ms
analytics.js - 850ms
slider.js - 620ms
ads.js - 480ms

Solutions:

1. Remove Unused JavaScript

Identify unused code:

Coverage tab di Chrome DevTools
β†’ Shows % of code yang executed vs downloaded

Example: jquery.min.js: 87% unused (delete!) slider.js: 45% unused (find alternative)

2. Defer Non-Critical JavaScript

<!-- Bad -->
<script src="jquery.js"></script>
<script src="slider.js"></script>

<!-- Good --> <script src="jquery.js" defer></script> <script src="slider.js" defer></script>

3. Code Splitting

Untuk modern frameworks (React, Next.js):

// Bad: Load everything upfront
import AllComponents from "./all-components";

// Good: Dynamic import const HeavyComponent = lazy(() => import("./HeavyComponent"));

4. Remove Third-Party Scripts

<!-- Evaluate if you REALLY need these: -->
<script src="facebook-pixel.js"></script>
<!-- 180 KB -->
<script src="google-analytics.js"></script>
<!-- 45 KB -->
<script src="hotjar.js"></script>
<!-- 120 KB -->
<script src="live-chat.js"></script>
<!-- 95 KB -->

Total: 440 KB JavaScript!

Alternative: Use Google Tag Manager untuk load scripts async.

B. Optimize Third-Party Code

1. Facade Pattern for Embeds

Replace heavy embeds dengan lightweight placeholder:

Before (YouTube embed):

<iframe src="https://youtube.com/embed/VIDEO_ID" ...></iframe>
<!-- Loads 500+ KB immediately -->

After (Facade):

<div class="youtube-facade" data-id="VIDEO_ID">
  <img src="thumbnail.jpg" loading="lazy" />
  <button>Play Video</button>
</div>
<!-- Loads <50 KB, iframe loaded on click -->

2. Self-Host Google Fonts

Before:

<link
  href="https://fonts.googleapis.com/css2?family=Inter:wght@400;700&display=swap"
  rel="stylesheet"
/>
<!-- External request: 150ms delay -->

After:

<!-- Self-hosted fonts -->
@font-face { font-family: 'Inter'; src: url('/fonts/inter.woff2')
format('woff2'); font-display: swap; }
<!-- No external request, loads instantly -->

Tool: https://google-webfonts-helper.herokuapp.com/

C. Break Up Long Tasks

Long task = JavaScript execution >50ms (blocks main thread).

Identify long tasks:

Chrome DevTools β†’ Performance tab
Record page load
Look for red triangles (long tasks)

Solution: Use setTimeout() or requestIdleCallback()

// Bad: Blocking long task (350ms)
function processData(items) {
  items.forEach((item) => {
    // Heavy processing
    doComplexCalculation(item);
  });
}

// Good: Break into chunks function processData(items) { let i = 0; function processChunk() { const end = Math.min(i + 50, items.length); for (; i < end; i++) { doComplexCalculation(items[i]); } if (i < items.length) { setTimeout(processChunk, 0); // Yield to main thread } } processChunk(); }


Langkah 4: Fix CLS (Cumulative Layout Shift)

CLS mengukur visual stability. Target: <0.1.

A. Identify CLS Issues

Di PageSpeed Insights:

Diagnostics β†’ Avoid large layout shifts
Elements causing shifts:
1. <img> without dimensions - 0.08
2. <div class="ad-slot"> - 0.05
3. Web font loading - 0.02

Visual demo di Chrome DevTools:

Performance tab β†’ Record
Check "Layout Shifts" track
See red bars = layout shifts

B. Teknik Fix CLS

1. Set Image/Video Dimensions

Bad (causes CLS):

<img src="banner.jpg" alt="Banner" />
<!-- Browser doesn't know size β†’ reserves no space β†’ CLS when loaded -->

Good:

<img src="banner.jpg" alt="Banner" width="1200" height="630" />
<!-- Browser reserves space β†’ no CLS -->

For responsive images:

img {
  aspect-ratio: 16 / 9;
  width: 100%;
  height: auto;
}

2. Reserve Space for Ads

Bad:

<div id="ad-slot"></div>
<!-- Ad loads β†’ pushes content down β†’ massive CLS -->

Good:

<div id="ad-slot" style="min-height: 250px;">
  <!-- Space reserved even before ad loads -->
</div>

3. Avoid Inserting Content Above Existing Content

Bad:

// Adds banner at top AFTER page loads
document.body.insertBefore(banner, document.body.firstChild);
// Pushes all content down β†’ CLS

Good:

<!-- Include banner in initial HTML -->
<div class="banner">...</div>
<!-- Or use transform instead of inserting -->

4. Font Loading Optimization

Problem:

1. Page loads with system font
2. Web font loads
3. Text re-renders β†’ CLS

Solution A: font-display: optional

@font-face {
  font-family: "Inter";
  src: url("inter.woff2") format("woff2");
  font-display: optional; /* Use system font if webfont not loaded */}

Solution B: Preload fonts

<link
  rel="preload"
  href="/fonts/inter.woff2"
  as="font"
  type="font/woff2"
  crossorigin
/>

Solution C: Size-adjust

@font-face {
  font-family: "Inter";
  src: url("inter.woff2") format("woff2");
  size-adjust: 107%; /* Match system font metrics */}

5. Animations Use transform/opacity Only

Bad (causes CLS):

.element {
  animation: slideDown 0.3s;
}
@keyframes slideDown {
  from {
    height: 0;
  }
  to {
    height: 200px;
  }
}
/* Height changes = layout shift */

Good:

.element {
  animation: slideDown 0.3s;
}
@keyframes slideDown {
  from {
    transform: translateY(-100%);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}
/* Transform/opacity = no layout shift */

Langkah 5: WordPress Optimization Lengkap

Kombinasi semua fixes untuk WordPress website.

A. Install Plugin Essential

1. WP Rocket (Premium – $59/year)

Features yang penting:

βœ“ Page caching
βœ“ Cache preloading
βœ“ GZIP compression
βœ“ Lazy loading (images, iframes, videos)
βœ“ Minify HTML/CSS/JS
βœ“ Combine CSS/JS
βœ“ Defer JavaScript
βœ“ Database optimization
βœ“ Preload fonts

Setup:

WP Rocket β†’ Dashboard
β†’ Enable all recommended settings
β†’ Save & clear cache

Alternative gratis: W3 Total Cache, LiteSpeed Cache

2. Imagify (Image Optimization)

Settings:
βœ“ Compression level: Aggressive
βœ“ Resize larger images: 1920px max
βœ“ WebP creation: Enabled
βœ“ Lazy loading: Disabled (use WP Rocket)

Alternative: ShortPixel, Smush

3. Asset CleanUp

Features:
βœ“ Disable plugins/CSS/JS per-page
βœ“ Unload unused scripts
βœ“ Reduce HTTP requests

Example:

Homepage:
βœ“ Unload Contact Form 7 (only needed on contact page)
βœ“ Unload WooCommerce scripts (not an ecommerce site)
βœ“ Unload Elementor on non-Elementor pages

B. Database Optimization

1. Clean Up Revisions

-- Via phpMyAdmin or Adminer
DELETE FROM wp_posts WHERE post_type = 'revision';

Or use plugin: WP-Optimize

2. Remove Transients

DELETE FROM wp_options
WHERE option_name LIKE '_transient_%';

3. Optimize Tables

OPTIMIZE TABLE wp_posts, wp_postmeta, wp_options;

C. Hosting Optimization

Minimum requirements untuk good CWV:

PHP version: 8.1+ (8.2 recommended)
Memory: 256 MB minimum
MySQL: 5.7+ atau MariaDB 10.3+
Server: Nginx (faster than Apache)

Recommended hosts:

  • Kinsta (managed WP, $35/month)
  • SiteGround (shared+, $14.99/month)
  • Cloudways (VPS, $10/month)

Avoid:

  • Cheap shared hosting (<$3/month)
  • Unlimited storage/bandwidth claims
  • Slow TTFB (>800ms)

D. Theme Optimization

Lightweight themes recommended:

  • GeneratePress (gratis/premium)
  • Astra (gratis/premium)
  • Kadence (gratis)

Bloat themes to avoid:

  • Divi (heavy page builder)
  • Avada (too many features)
  • BeTheme (400+ demos = bloat)

Langkah 6: Mobile Optimization

72% traffic dari mobile (data 2026) – mobile optimization adalah WAJIB.

A. Mobile-Specific Issues

Common problems:

1. Oversized images on mobile

<!-- Bad: Serves desktop image to mobile -->
<img src="hero-4k.jpg" width="3840" />

<!-- Good: Responsive images --> <img srcset="hero-mobile.jpg 768w, hero-tablet.jpg 1024w, hero-desktop.jpg 1920w" sizes="(max-width: 768px) 100vw, 1920px" src="hero-desktop.jpg" />

2. Large tap targets

/* Bad: Too small for mobile */.button {
  padding: 5px 10px;
  font-size: 12px;
}

/ Good: 48px minimum / .button { padding: 12px 24px; font-size: 16px; min-height: 48px; min-width: 48px; }

3. Viewport not set

<!-- Required for mobile -->
<meta name="viewport" content="width=device-width, initial-scale=1" />

B. Test on Real Devices

Tools:

  • BrowserStack (paid)
  • LambdaTest (paid)
  • Chrome DevTools β†’ Device Mode (free)

Manual testing:

Test on:
βœ“ iPhone 13/14 (iOS Safari)
βœ“ Samsung Galaxy S22 (Chrome Android)
βœ“ Older devices (iPhone 8, Galaxy S9)

Langkah 7: Monitor & Maintain

CWV optimization bukan one-time task – perlu monitoring continuous.

A. Set Up Monitoring

1. Google Search Console

Weekly check:
β†’ Core Web Vitals report
β†’ Track improvement/regression
β†’ Fix newly-flagged pages

2. CrUX Dashboard

Setup:

  1. Go to: https://g.co/chromeuxdash
  2. Enter your domain
  3. Bookmark dashboard
  4. Check monthly

Shows:

  • 28-day rolling average
  • Desktop vs Mobile
  • Percentiles (p75 important)

3. Real User Monitoring (RUM)

Tools:

  • Cloudflare Web Analytics (gratis)
  • Google Analytics 4 (gratis, tapi complex)
  • SpeedCurve (paid, $20/month)

B. Monthly Maintenance Checklist

β–‘ Check GSC Core Web Vitals report
β–‘ Run PageSpeed Insights untuk homepage + top 10 pages
β–‘ Optimize new images uploaded
β–‘ Clear cache after major updates
β–‘ Check for plugin updates (some updates add bloat)
β–‘ Review and remove unused plugins
β–‘ Compress & optimize database
β–‘ Test site speed on real mobile device

Case Study: PageSpeed 45 β†’ 95 dalam 7 Hari

Background

Website: E-commerce Indonesia (Anonymous)

Platform: WordPress + WooCommerce

Initial state:

PageSpeed Score: 45/100 (Mobile)
LCP: 5.8s (Poor)
FID: 280ms (Needs Improvement)
CLS: 0.34 (Poor)

Bounce rate: 72% Avg session: 38s Conversion rate: 0.8%

Changes Implemented

Day 1: Image Optimization

Actions:
βœ“ Installed Imagify
βœ“ Bulk optimized 2,400+ images
βœ“ Converted to WebP
βœ“ Resized oversized images (some were 6000px!)

Result:

  • Total image size: 1.2 GB β†’ 180 MB (-85%)
  • LCP: 5.8s β†’ 3.2s

Day 2: Caching & Minification

Actions:
βœ“ Installed WP Rocket
βœ“ Enabled page caching
βœ“ Minify CSS/JS
βœ“ Defer JavaScript
βœ“ Database optimization

Result:

  • TTFB: 1,200ms β†’ 450ms
  • LCP: 3.2s β†’ 2.1s
  • FID: 280ms β†’ 120ms

Day 3: Remove Bloat

Actions:
βœ“ Disabled 12 unused plugins
βœ“ Removed jQuery Migrate
βœ“ Removed Gutenberg CSS (classic editor only)
βœ“ Unloaded WooCommerce scripts on non-shop pages

Result:

  • JavaScript size: 840 KB β†’ 180 KB (-79%)
  • FID: 120ms β†’ 65ms

Day 4: CLS Fixes

Actions:
βœ“ Added width/height to all images
βœ“ Reserved space for ads (300x250)
βœ“ Preloaded fonts
βœ“ font-display: swap

Result:

  • CLS: 0.34 β†’ 0.06

Day 5: CDN Setup

Actions:
βœ“ Signed up Cloudflare (free plan)
βœ“ Enabled Auto Minify
βœ“ Enabled Brotli compression
βœ“ Set up caching rules

Result:

  • TTFB: 450ms β†’ 180ms
  • LCP: 2.1s β†’ 1.4s

Day 6: Font Optimization

Actions:
βœ“ Self-hosted Google Fonts
βœ“ Preloaded critical fonts
βœ“ Removed unused font weights (had 9, used 3)

Result:

  • Font load time: 650ms β†’ 120ms
  • CLS: 0.06 β†’ 0.04

Day 7: Final Polish

Actions:
βœ“ Enabled lazy loading for below-fold images
βœ“ Deferred YouTube embeds (facade)
βœ“ Removed Facebook Pixel (replaced with GTM)
βœ“ Critical CSS inlining

Result:

  • LCP: 1.4s β†’ 1.2s
  • FID: 65ms β†’ 48ms

Final Results

PageSpeed Scores:

Before: 45/100 (Mobile), 62/100 (Desktop)
After: 95/100 (Mobile), 98/100 (Desktop)
Improvement: +111% (mobile), +58% (desktop)

Core Web Vitals:

LCP: 5.8s β†’ 1.2s (-79%)
FID: 280ms β†’ 48ms (-83%)
CLS: 0.34 β†’ 0.04 (-88%)

All metrics: βœ… Good

Business Impact (30 days after):

Bounce rate: 72% β†’ 31% (-57%)
Avg session: 38s β†’ 2m 47s (+339%)
Pages/session: 1.3 β†’ 4.2 (+223%)
Conversion rate: 0.8% β†’ 3.1% (+287%)
Revenue: +Rp 18.7 juta/bulan (+156%)

ROI:

Investment:
- WP Rocket: $59/year
- Imagify: $9.99/month
- Cloudways hosting upgrade: +$15/month
Total: ~$300/year

Revenue increase: +$1,200/month = $14,400/year ROI: 4,700%

Key Learnings

  1. Images are #1 bottleneck – Optimization images = biggest quick win
  2. Caching is essential – Without caching, optimization lain sia-sia
  3. Remove unused code – Average site uses <20% of loaded JavaScript
  4. CDN is game-changer – TTFB improvement 60-70%
  5. CLS often overlooked – Easy to fix tapi high impact

Common Mistakes yang Harus Dihindari

Mistake #1: Over-Optimization

❌ Bad:
- Minify HTML to single line (unreadable)
- Defer ALL JavaScript (including critical)
- Remove ALL external requests (break functionality)

Result: Site broken, worse UX

Lesson: Balance optimization dengan functionality.

Mistake #2: Ignoring Real User Data

❌ Bad:
Focus on Lab Data (PageSpeed) only
Ignore Field Data (real users di GSC)

Result:

  • Lab score 95
  • Real users experiencing Poor CWV
  • Google penalizes based on Field Data

Lesson: Field Data > Lab Data untuk SEO.

Mistake #3: Lazy Loading LCP Image

❌ Bad:
<img src="hero.jpg" loading="lazy">
<!-- LCP image dengan lazy load = delayed LCP -->

βœ… Good: <img src="hero.jpg" loading="eager" fetchpriority="high">

Mistake #4: Not Testing on Real Mobile Devices

❌ Bad:
Test only di Chrome DevTools (desktop)

Reality:

  • Real mobile 3G/4G = slower
  • Different browsers (Safari vs Chrome)
  • Older devices = less powerful CPU

Lesson: Always test on real devices.

Mistake #5: Using Too Many Plugins

Typical WordPress site:
- 40+ plugins installed
- 15+ active on every page
- Total: 2.5 MB JavaScript

Result:

  • FID: 350ms (Poor)
  • LCP: 4.8s (Poor)

Fix: Audit plugins, keep only essential ones.


Tools & Resources untuk Core Web Vitals

Essential Tools (Gratis)

1. PageSpeed Insights

  • URL: https://pagespeed.web.dev
  • Function: Analyze CWV, get recommendations
  • Cost: FREE

2. Google Search Console

  • URL: https://search.google.com/search-console
  • Function: Real user CWV data
  • Cost: FREE

3. Web Vitals Extension

  • URL: Chrome Web Store β†’ “Web Vitals”
  • Function: Real-time CWV monitoring
  • Cost: FREE

4. Lighthouse (Chrome DevTools)

  • Built into Chrome
  • Function: Detailed performance audit
  • Cost: FREE

5. GTmetrix

  • URL: https://gtmetrix.com
  • Function: Waterfall chart, video playback
  • Cost: FREE (limited) / $10/month

Image Optimization Tools

1. Squoosh.app

  • URL: https://squoosh.app
  • Function: Browser-based image compression
  • Formats: WebP, AVIF, MozJPEG
  • Cost: FREE

2. TinyPNG

  • URL: https://tinypng.com
  • Function: Smart lossy compression
  • Limit: 20 images/time (free)
  • Cost: FREE / API paid

3. ImageOptim (Mac)

  • Desktop app
  • Batch optimization
  • Removes metadata
  • Cost: FREE

WordPress Plugins

Caching:

  • WP Rocket ($59/year) – Best overall
  • LiteSpeed Cache (FREE) – If using LiteSpeed server
  • W3 Total Cache (FREE) – Complex but powerful

Images:

  • Imagify ($9.99/month) – Easy, effective
  • ShortPixel (FREE/paid) – Great compression
  • EWWW Image Optimizer (FREE) – Open source

Code Optimization:

  • Asset CleanUp (FREE/paid) – Remove unused scripts
  • Autoptimize (FREE) – Minify & combine
  • Perfmatters ($24.95/year) – Lightweight, powerful

Monitoring Tools

1. CrUX Dashboard

  • URL: https://g.co/chromeuxdash
  • Shows 28-day trends
  • FREE

2. Cloudflare Web Analytics

  • Real user monitoring
  • Privacy-friendly
  • FREE

3. SpeedCurve

  • Continuous monitoring
  • Alerts for regressions
  • $20/month

FAQ: Core Web Vitals Optimization

Berapa Lama untuk Improve Core Web Vitals?

Timeline realistic:

Week 1:

  • Quick wins (image optimization, caching)
  • Score improvement 20-40%
  • CWV metrics improve 30-50%

Week 2-4:

  • Lab data (PageSpeed) sudah good
  • Field data (GSC) mulai update
  • Google re-crawl & re-index

Week 5-8:

  • Field data fully updated
  • Ranking impact mulai terlihat
  • Traffic increase 10-30%

Recommendation: Allow 6-8 minggu untuk full impact.

Apakah Core Web Vitals Mempengaruhi Ranking?

Yes, 100% confirmed oleh Google sebagai ranking factor sejak 2021.

Impact:

Good CWV vs Poor CWV:
- Ranking difference: +5-15 posisi
- CTR difference: +25-60%
- Traffic difference: +50-200%

TAPI:

  • Content quality > CWV
  • Backlinks > CWV
  • E-E-A-T > CWV

CWV adalah tiebreaker – jika 2 page equally good content, CWV menentukan siapa menang.

Mobile atau Desktop yang Lebih Penting?

Mobile 100% lebih penting karena:

  1. Mobile-First Indexing
  • Google uses mobile version untuk ranking
  • Desktop version = ignored
  1. Traffic share
  • 72% traffic dari mobile (global)
  • 65% traffic dari mobile (Indonesia)
  1. User behavior
    – Mobile users lebih impatient
    – 53% bounce jika load >3s

Strategy: Optimize mobile first, desktop akan follow.

Apakah Harus PageSpeed Score 100/100?

NO! Score 100 sangat sulit dan often tidak worth it.

Realistic targets:

Good: 90-100 (excellent)
Acceptable: 80-89 (good enough)
Needs work: 50-79
Poor: <50 (urgent fix needed)

Diminishing returns:

Score 50 β†’ 80: Huge impact (+150% traffic)
Score 80 β†’ 90: Good impact (+30% traffic)
Score 90 β†’ 95: Small impact (+5% traffic)
Score 95 β†’ 100: Minimal impact (<2% traffic)

Focus on: Getting metrics to “Good” range, not perfect score.

Plugin Apa yang Paling Penting?

Top 3 must-have:

1. Caching plugin

WP Rocket (paid): Easiest, most effective
LiteSpeed Cache (free): Great if using LiteSpeed
W3 Total Cache (free): Complex but powerful

2. Image optimization

Imagify (paid): Automatic, set-and-forget
ShortPixel (free/paid): Great compression ratio
Smush (free): Good for small sites

3. Code optimization

Autoptimize (free): Minify CSS/JS
Asset CleanUp (free/paid): Remove unused scripts

Avoid installing: 10+ optimization plugins – they conflict & add overhead.

Cloudflare Free Plan Cukup?

Yes! Cloudflare free plan sudah sangat powerful:

Included:
βœ“ Global CDN (200+ locations)
βœ“ Unlimited bandwidth
βœ“ DDoS protection
βœ“ SSL certificate
βœ“ Caching
βœ“ Minification
βœ“ Brotli compression

Not included (paid only):

  • Argo Smart Routing ($5/month)
  • Image optimization ($5/month)
  • Workers ($5/month)

For most sites: Free plan = 80% of benefits.


Action Plan: Optimasi dalam 7 Hari

Day 1: Audit & Baseline

Tasks:

  • [ ] Run PageSpeed Insights (mobile + desktop)
  • [ ] Check Google Search Console β†’ Core Web Vitals
  • [ ] Screenshot “before” scores
  • [ ] Create spreadsheet untuk track progress
  • [ ] Identify worst-performing pages (GSC)

Time needed: 1 hour

Day 2: Image Optimization

Tasks:

  • [ ] Install Imagify atau ShortPixel
  • [ ] Bulk optimize all existing images
  • [ ] Enable WebP conversion
  • [ ] Set max width: 1920px
  • [ ] Add width/height attributes to images

Time needed: 2-3 hours (mostly plugin working)

Day 3: Caching & Minification

Tasks:

  • [ ] Install WP Rocket (atau alternative)
  • [ ] Enable page caching
  • [ ] Enable minification (HTML, CSS, JS)
  • [ ] Defer JavaScript loading
  • [ ] Enable lazy loading (except LCP image)
  • [ ] Optimize database

Time needed: 1 hour

Day 4: Remove Bloat

Tasks:

  • [ ] Audit all plugins (deactivate unused)
  • [ ] Install Asset CleanUp
  • [ ] Unload scripts per-page basis
  • [ ] Remove jQuery Migrate
  • [ ] Disable Gutenberg CSS (if not using)

Time needed: 2 hours

Day 5: CLS Fixes

Tasks:

  • [ ] Add dimensions to ALL images
  • [ ] Reserve space for ads
  • [ ] Preload critical fonts
  • [ ] Set font-display: swap
  • [ ] Fix animations (use transform only)

Time needed: 2 hours

Day 6: CDN Setup

Tasks:

  • [ ] Sign up Cloudflare (free)
  • [ ] Change nameservers
  • [ ] Enable Auto Minify
  • [ ] Enable Brotli
  • [ ] Set up page rules
  • [ ] Test site functionality

Time needed: 30 minutes

Day 7: Testing & Polish

Tasks:

  • [ ] Run PageSpeed Insights again
  • [ ] Compare before/after scores
  • [ ] Test site on real mobile device
  • [ ] Fix any broken functionality
  • [ ] Clear all caches
  • [ ] Submit to GSC untuk re-crawl

Time needed: 1 hour

Expected Results

After 7 days:

PageSpeed score: +40-60 points
LCP: Reduce 50-70%
FID: Reduce 60-80%
CLS: Reduce 70-90%

After 30 days:

GSC shows "Good" CWV
Bounce rate: -20-40%
Avg session: +50-150%
Ranking: +3-10 posisi
Traffic: +20-80%

Kesimpulan & Next Steps

Core Web Vitals optimization adalah investment terbaik untuk long-term SEO success. Dengan website cepat dan responsive:

βœ… Ranking naik (+5-15 posisi)
βœ… Traffic increase (+50-200%)
βœ… User experience better (bounce rate -40-60%)
βœ… Conversion rate higher (+100-300%)
βœ… Revenue boost (ROI 1000-5000%)

Key Takeaways

Top 3 Priorities:

  1. Image Optimization (Biggest Impact)
  • Convert to WebP/AVIF
  • Compress aggressively
  • Add dimensions
  • Use CDN
  1. Caching & Minification
  • Page caching essential
  • Minify CSS/JS
  • Defer JavaScript
  • Database optimization
  1. Remove Bloat
    – Unused plugins deleted
    – Third-party scripts minimized
    – Code splitting
    – Asset cleanup

Your Action Plan (Starting Today)

This Week:

  1. βœ… Run PageSpeed Insights (baseline)
  2. βœ… Install image optimization plugin
  3. βœ… Install caching plugin
  4. βœ… Basic optimization (minify, defer)
  5. βœ… Test results

Next 30 Days:

  • Optimize all pages (not just homepage)
  • Monitor GSC Core Web Vitals
  • Fix newly-flagged issues
  • A/B test different optimizations

90 Days Goal:

  • All Core Web Vitals: “Good”
  • PageSpeed score: 90+
  • Ranking improvement visible
  • Traffic increase 50-100%

Resources untuk Lanjutan

Artikel terkait:

Tools gratis:

  • PageSpeed Insights
  • Google Search Console
  • Web Vitals Extension
  • GTmetrix

Plugins recommended:

  • WP Rocket (caching)
  • Imagify (images)
  • Asset CleanUp (bloat removal)

Mulai optimize Core Web Vitals Anda hari ini dan nikmati ranking boost dalam 30-60 hari! πŸš€

Ada pertanyaan? Drop comment di bawah atau email: [email protected]

Last updated: 20 Desember 2025

Ditulis oleh

Hendra Wijaya

Tinggalkan Komentar

Email tidak akan ditampilkan.