Automatically improve, monitor and track your website performance over time, and get tips on what to improve.
Improve your website pagespeed with our WordPress performance plugin – WP Lighthouse
Increased my speed by 100%, to increase even more use in combination with other plugins (w3) and learn about JS minify, use CDN and image size reducer plugin, and you will have excellent results.
WP Lighthouse user
Very good cache and compression! (other options are great, too!) I combined this with WP Speed of Light and get a great performance by this. Hope you keep on the great work! ❤
WP Lighthouse user
Makes a huge difference. Reduced number of queries and increased speed by over 20%.
WP Lighthouse user
Learn JavaScript
Learn JavaScript by example
Read the Blog
Why, how-to & code snippets and tutorials
Find a WordPress Plugin
Free and premium WordPress plugins
Professional, high-quality plugins for WordPress, WooCommerce, Gravity Forms, Analytics, Site Speed and more. Page speed optimization plugins, SEO plugins, image gallery plugins, eCards, Lighthouse and more.
Also Read
Using Resource Hints to Optimize WordPress Performance
An Extreme Approach to Speeding Up WordPress
How to Optimize WordPress’ Native Settings for Performance
Quick Links
Featured
Securing Your WordPress Site: A Guide to Limiting Login Attempts Without a Plugin
Brute-force login attacks pose a significant threat to the security of WordPress websites. This type of attack involves repeatedly guessing a user’s login credentials to gain access to the admin panel. To combat this, many WordPress users install a plugin that limits login attempts. However, it is also possible to secure your WordPress site without
Featured JavaScript Articles
StackGrid – A Light Vanilla JavaScript Masonry Grid
Introducing the lightest and most efficient Masonry grid available – StackGrid – powered by pure vanilla JavaScript, no dependencies required. This grid is perfect for those who want a lightweight and easy-to-implement…
How to Open Only One Details/Summary Element at a Time
Let’s suppose you want to build a simple accordion or a help section, and you want to use a <details> element and only have one open at a time. Here is how…
Canvas – A Simple Drawing Application
This is a simple drawing application that allows the user to select a colour and thickness for their brush and draw on a canvas element. The user can also save and clear…
Canvas Bézier Curves
This is a demo for the Canvas: An Awesome Introduction article. This demonstration shows how Bézier curves can be drawn on a canvas element. Drag the line ends, or the control points…
Code Golfing Tips & Tricks: How to Minify your JavaScript Code
JavaScript golfing is the process of writing the smallest amount of JavaScript code to do something awesome.
The Complete JavaScript Strings Reference
JavaScript strings are deceptively complex constructs. There are actually two different types of strings – string Literals and string Objects – and they both behave somewhat differently, even while trying to masquerade…
How to code your own JavaScript de-duplicator
I have a new tool on getButterfly: a data de-duplicator for emails, URLs, IDs, names and more. It's written in JavaScript, with no external (or server-side) dependencies.
JavaScript Form Validation
This JavaScript code snippet adds inline validation to any form field (input, select and textarea). Feel free to customise it as you see fit.
How to get content from another website using JavaScript
Here’s the scenario: One of my websites is static, and I need to maintain a changelog both on the website and on GitHub Pages. The solution is a simple JavaScript function to…
Why I removed my dark theme switcher
How I implemented a dark/light theme switcher using JavaScript and CSS for both WordPress and static websites.
Featured Plugin

Active Analytics (WordPress 5+, WordPress 6+, PHP 7+, PHP 8+, Automatic Updates)
WordPress Plugin
€29.99 €16.99
Popular Articles
Generate HTML List From JavaScript Array
Client-Side JavaScript Pagination
How to Get and Set Query Parameters From URL
How to show an outdated browser alert on Internet Explorer 11
How to Create a Price Range Slider Using Vanilla JavaScript
How to Build a Vanilla JavaScript Slider in Less Than 100 Lines
Google Sans
How to Change Page Title Using JavaScript
The Ultimate Post-Launch Checklist for Your New WordPress Website
Custom Events in JavaScript MVC
Thursday, January 19, 2023
Securing Your WordPress Site: A Guide to Limiting Login Attempts Without a Plugin
Brute-force login attacks pose a significant threat to the security of WordPress websites. This type of attack involves repeatedly guessing…
Tuesday, January 10, 2023
StackGrid – A Light Vanilla JavaScript Masonry Grid
Introducing the lightest and most efficient Masonry grid available – StackGrid – powered by pure vanilla JavaScript, no dependencies required.…
Tuesday, December 27, 2022
How to Open Only One Details/Summary Element at a Time
Let’s suppose you want to build a simple accordion or a help section, and you want to use a <details>…
Tuesday, December 27, 2022
Canvas – A Simple Drawing Application
This is a simple drawing application that allows the user to select a colour and thickness for their brush and…
Thursday, November 24, 2022
Analysis of a WordPress Analytics Plugin
A few weeks ago, I was about to take over an abandoned analytics plugin. The deal didn’t go through, but…
Monday, November 21, 2022
My WordPress Plugins Are Exclusively on CodeCanyon
In the past 6 months, I’ve been bouncing between several online marketplaces and my own website – getButterfly.com – for…
Thursday, November 10, 2022
Breaking Changes for Active Analytics
If you are looking for a WordPress analytics plugin, look no further. Active Analytics is a lightweight plugin which stores…
Thursday, October 27, 2022
Active Analytics Tracking Update
Active Analytics has reached version 2.3. As part of an ongoing speed improvement initiative, we decided to switch to asynchronous…
Thursday, September 29, 2022
Fast and accessible CSS-only client logo carousel
Fast and accessible CSS-only client logo carousel. One in two sites requires some kind of client/provider logo carousel.
Tuesday, September 27, 2022
SEO Tools, Skills, and Experience
🌟 Where does my SEO experience come from? ✅ Developing optimization strategies based on competition research and current website traffic…
Tuesday, September 27, 2022
8 Things SEO is Not
Here’s X things SEO is not and quick breakdown of each point: SEO is not a one-month job SEO is…
Monday, September 26, 2022
BOTS v2: Development Update
Introduction This year I have coded and launched a small app (available on Google Play Store and as a PWA),…
Thursday, September 15, 2022
What is an Influencer Marketing Strategy?
Influencer marketing has come along in leaps and bounds over the last few years, with the rise of social media…
Thursday, September 15, 2022
Canvas Bézier Curves
This is a demo for the Canvas: An Awesome Introduction article. This demonstration shows how Bézier curves can be drawn…
Thursday, September 15, 2022
Python Application SDKs For File Uploading
In this article, we will be looking at SDKs that can be used for file uploading in python applications. These…
Thursday, September 15, 2022
9 monthly SEO tasks to add to your digital marketing strategy
SEO is hard work. It takes a consistent, regular effort to pay off. In fact, some SEO tasks are better suited for…
Wednesday, August 17, 2022
The Google Plugin strategy – your secret SEO weapon
Do you want to win in SEO? Well, then this new system is for you. I call it the “Google…
Thursday, September 15, 2022
Why You Need to Think About SEO When Selling a Home
You’ve created a property listing with your estate agent, and you think it’s looking pretty great. You’ve got professional images,…
Monday, August 8, 2022
Compress Your Images for Faster Page Speed and Better SEO
We have recently launched an image compressor aimed at web designers, web developers and bloggers in general to help optimizing…
Monday, August 8, 2022
How to fix Open Graph URL not matching canonical when using Yoast SEO
I have recently run into an issue with the Yoast SEO plugin, as reported by an Ahrefs audit. Basically, the…
Monday, August 29, 2022
Code Golfing Tips & Tricks: How to Minify your JavaScript Code
JavaScript golfing is the process of writing the smallest amount of JavaScript code to do something awesome.
Tuesday, August 9, 2022
The Complete JavaScript Strings Reference
JavaScript strings are deceptively complex constructs. There are actually two different types of strings – string Literals and string Objects…
Monday, August 8, 2022
The Complete Property Marketing Guide to Getting More Vendors
Vendors are the lifeline of an estate agency business. It’s no wonder then that so many estate agents cite their…
Monday, August 8, 2022
The Step-by-Step Guide to Local SEO
Local SEO is important. In fact, 46% of all searches on Google are local. That means if you’re a local…