NaveenCodes Core Web Vitals

Description

NaveenCodes Core Web Vitals is the most complete free performance plugin for WordPress. It measures Core Web Vitals from your actual visitors, shows you exactly which pages are slow and why, and gives you the tools to fix every issue — from CSS minification to database cleanup.

Real User Monitoring (RUM):
Unlike lab tools (Lighthouse, PageSpeed Insights), this plugin measures from your real visitors on real devices and networks — the same signal Google uses for Search ranking.

Metrics collected from every visitor:
* LCP (Largest Contentful Paint) — loading performance
* CLS (Cumulative Layout Shift) — visual stability
* INP (Interaction to Next Paint) — responsiveness
* FCP (First Contentful Paint) — time to first render
* TTFB (Time to First Byte) — server response speed

Slow Request Detection:
The collector uses the browser’s Resource Timing API to identify the slowest network requests on each page — scripts, stylesheets, images, fonts — and surfaces them in the Assets page with load time, file size and render-blocking status.

Page Analysis:
* See every published post and page with its real CWV scores
* Per-page issues with specific fix suggestions
* Quick Fix button — automatically enables the right optimizer settings
* Per-page overrides — exclude specific scripts/styles on individual pages
* Preload a specific URL (hero image, font) for a page

Built-in Speed Optimizer — 13 one-click fixes:

Images:
* Lazy Load Images (LCP)

Resources:
* Preconnect hints for Google Fonts (FCP)
* Defer non-critical JavaScript (LCP)
* Remove version query strings

WordPress Cleanup:
* Remove emoji scripts (-33 KB)
* Disable Dashicons for guests (-30 KB)
* Disable self-pingbacks

Minification:
* Minify CSS files — local files with cache
* Minify JavaScript files — local files with cache
* Minify HTML output

Advanced Resources:
* Google Fonts — non-blocking async load (FCP)
* DNS prefetch for external domains (TTFB)
* Preload theme stylesheet (FCP)

Database Optimizer:
* Clean post revisions
* Remove spam comments
* Delete trashed posts and comments
* Remove expired transients
* Delete auto-draft posts
* Remove orphaned post meta
* OPTIMIZE TABLE — defragment and reclaim disk space
* Visual table size breakdown

Dashboard:
* Per-metric traffic-light status (Good / Needs Work / Poor)
* 7-day trend sparklines
* Slowest pages table
* Device filter (mobile / tablet / desktop)

Privacy & Architecture:
* No external service — all data in your WordPress database
* Configurable sampling rate (1–100%)
* Configurable data retention (7–365 days)
* Exclude specific URLs or logged-in users
* Automatic daily cleanup cron

This plugin is 100% free — no premium tier, no ads, no upsells. Made with love by MAA Labs in memory of Maa ❤️

Installation

  1. Upload the plugin folder to /wp-content/plugins/ or install via Plugins Add New.
  2. Activate the plugin.
  3. Go to Core Web Vitals Dashboard.
  4. Visit a few pages — data appears within minutes.
  5. Enable optimizations under Core Web Vitals Optimizer.
  6. Check Core Web Vitals Page Analysis for per-page issues.
  7. Use Core Web Vitals Database to clean up your database.

FAQ

How long until I see data?

Data appears within minutes of activation. Visit a few pages on your site, then check the Dashboard.

Does this affect page load speed?

The collector script is tiny (~3 KB), non-blocking, and sends data on page unload using navigator.sendBeacon. Zero impact on your Core Web Vitals scores.

How does CSS/JS minification work?

Local CSS and JS files are read, minified using a pure-PHP minifier, and cached in uploads/ncwv-min/. The cached version is served instead of the original. Clear the cache from the Assets page after updating your theme.

Is data sent to an external server?

No. All data is stored locally in your WordPress database.

What does the Database Optimizer do?

It finds and removes post revisions, spam comments, trashed items, expired transients, auto-draft posts and orphaned post meta. It also runs OPTIMIZE TABLE to reclaim disk space.

Can I exclude certain pages or scripts?

Yes — use Page Analysis Settings to exclude specific script/style handles on individual pages. Use Settings Exclude URLs to skip pages from CWV collection.

Reviews

There are no reviews for this plugin.

Contributors & Developers

“NaveenCodes Core Web Vitals” is open source software. The following people have contributed to this plugin.

Contributors

Changelog

1.5.0

  • Fix: Resolved all Plugin Check (PHPCS) warnings for WP.org submission — escape output, nonce ignore blocks, WP_Filesystem for rmdir, prefixed globals in uninstall, load_plugin_textdomain removed, table name interpolation safety

1.4.0

  • Fix: Added output buffer flush at the start of every AJAX handler — clears any stray PHP output from other plugins before sending JSON, resolving “Error. Try again.” across all pages despite HTTP 200 responses

1.3.0

  • Fix: Removed $.ajaxPrefilter that caused jQuery 3 parseerror on all AJAX responses, breaking every button sitewide
  • Fix: Removed global ob_start/ob_end_clean in wp_die_ajax_handler filter that disrupted PHP output buffers
  • Fix: Load Hooks no longer causes PHP fatal — WP_Hook iterator accessed via ->callbacks directly
  • Fix: Plugin Impact analyzer uses shallow glob scan to avoid memory exhaustion on large plugins (WooCommerce etc.)

1.2.0

  • New: Script Manager — scan any URL to see every script/style loaded, handles, async/defer status, render-blocking indicator
  • New: CSS Coverage — compare CSS class selectors in each stylesheet vs classes actually used in page HTML; reports unused %
  • New: Global Script/Style Disable — sitewide dequeue of any handle by name, stored in settings, applied at priority 999
  • New: Plugin Impact Analyzer — scan active plugins for hook count, script/style count, PHP files and size; ranked by footprint score
  • New: Conflict Detector — detects multiple cache plugins, SEO plugins, analytics scripts, jQuery Migrate, double minification
  • New: Hook Inspector — shows all registered WordPress actions/filters (top 150 by callback count) with live filter search
  • New: Image Audit — page scanner reports images missing width/height (CLS risk) and images without lazy loading
  • Improvement: Optimizer now applies globally disabled handles via wp_dequeue_script/wp_dequeue_style at priority 999
  • Improvement: Admin tabs updated with Script Manager and Plugins & Hooks pages

1.1.0

  • New: Page Analysis — all pages with per-page CWV scores, issues and Quick Fix
  • New: Per-page settings — exclude scripts/styles and add preload hints per page
  • New: Assets page — slow resource audit from Resource Timing API
  • New: Database Optimizer — revisions, spam, transients, orphaned meta, OPTIMIZE TABLE
  • New: CSS minification with file cache
  • New: JavaScript minification with file cache
  • New: HTML minification via output buffer
  • New: Google Fonts async (non-render-blocking) loader
  • New: DNS prefetch hints for external domains
  • New: Preload theme stylesheet hint
  • New: Resources REST endpoint — collector now sends slow resource data
  • New: ncwv_resources table in database
  • Improvement: Cron now cleans old resource records
  • Improvement: Clear Data also clears resource table

1.0.0

  • Initial release
  • Real-user LCP, CLS, INP, FCP, TTFB collection
  • Dashboard with metric cards, sparklines, worst-pages table
  • Real Users per-page metrics table with device filter
  • Built-in Speed Optimizer with 7 optimizations
  • Daily cron cleanup, WP.org review notice