WordPress performance is not lost to big files. It is lost to the number of round trips. JCSSMM merges every enqueued CSS on a page into a single request. Same bytes. Fraction of the latency.
20 files of 1 KB each take far longer than 1 file of 20 KB. Every request pays a fixed cost: DNS, TCP, TLS, HTTP header, server response. Those costs multiply by request count.
Every feature exists because a real WordPress site needed it.
Combines every enqueued local CSS into a single merged file. Order preserved. Media queries intact.
coreFont Awesome, Elementor Icons, Dashicons, IcoMoon, Ionicons and more are auto-excluded. No missing glyphs.
safetyEach URL gets its own merged file, hashed by the exact CSS it loads. No cross-page contamination.
precisionPurge This Page or Purge All from the toolbar on any page. No need to visit the settings screen.
workflowAuto-purges on post save, theme switch, plugin update, menu change, widget update. No manual management.
automaticEvery url() inside merged CSS is rewritten to an absolute path. Background images never 404.
reliableDoes not touch any script. No defer, no async, no lazy. jQuery and Elementor JS load exactly as before.
non-invasiveAuto-detects Jacker OneWebP and rewrites background URLs to .jo.webp when a matching file exists.
integrationSame CSS bytes. Same visual result. One network round trip instead of twenty.
Two screens and one toolbar menu. That's the entire plugin. Click the tabs to explore.
Each page has its own merged file. Purge one page without touching any other.
| Page URL | File | Size | Action |
|---|---|---|---|
| / | merged-eb79f7557b91.css | 27.62 KB | Purge this page |
| /about/ | merged-a3f8b2c1d4e5.css | 24.18 KB | Purge this page |
| /contact/ | merged-b8c9d0e1f2a3.css | 22.45 KB | Purge this page |
| /blog/ | merged-f2a3b4c5d6e7.css | 26.03 KB | Purge this page |
| /product/example/ | merged-1a2b3c4d5e6f.css | 31.87 KB | Purge this page |
No configuration. No server changes. No API keys.
Get the ZIP from GitHub releases.
WordPress → Plugins → Add New → Upload Plugin.
Activate. Merging starts automatically on the next page load.
Straight answers, no marketing fluff.
No. The plugin only reorganizes <link> tags. It never modifies CSS content, never touches JavaScript, never adds inline styles. Icon font libraries are auto-excluded. If anything looks wrong, deactivate the plugin and everything returns to normal instantly.
Critical CSS solves "the first screen only needs a small part of the stylesheet." Your real problem is different: many small CSS files, each one a network round trip. Merging directly reduces request count, which is where the seconds are actually lost.
No. The merged CSS still blocks in <head> — same loading behavior as before, just one file instead of twenty. The browser waits for the merged file, then paints once. No FOUC, no layout shift.
Font Awesome, Elementor Icons, Dashicons, IcoMoon, Ionicons and several others are automatically excluded. They load as separate files exactly as before, so no icons go missing.
Yes. All three are fully supported. Elementor's per-page CSS, WooCommerce product styles and Gutenberg block styles are merged into one request without breaking layout.
Each URL gets its own merged file, hashed by the exact CSS it loads. Purging one page does not affect any other page. New pages regenerate on first visit. Content updates auto-purge via WordPress hooks.
Yes. JCSSMM auto-detects Jacker OneWebP. When active, it rewrites background-image URLs inside merged CSS to point at the .jo.webp files Jacker OneWebP generated. Both plugins work independently and integrate cleanly.
Yes. GPL-2.0+, no premium version, no API calls, no server requirements. Free forever.
If JCSSMM saves you hours, consider keeping the project alive.