List of performance tools
A Bash script to automate adaptive JPEG compression using common CLI tools
CSS selectors complexity and performance analyzer
A grunt plugin based on the nodejs module api-benchmark that takes a config.json file like this, makes some performance tests to your api, and creates an html export.
A small (1.5KB gzip) library for measuring things in your web app, annotating the DevTools timeline, and reporting the results to Google Analytics.
Augmented Traffic Control
Augmented Traffic Control (ATC) is a tool to simulate network conditions. It allows controlling the connection that a device has to the internet. Developers can use ATC to test their application across varying network conditions, easily emulating high speed, mobile, and even severely impaired networks.
Automated Chrome Profiling
barba.js is a small, flexible and dependency free library that helps you creating fluid and smooth transitions between your website's pages. It helps reducing the delay between your pages, minimizing browser HTTP requests and enhancing your user's web experience.
A robust benchmarking library that supports high-resolution timers & returns statistically significant results. As seen on jsPerf.
Benchpress allows creation and sampling of macro benchmarks to compare performance of real world web applications. The project is built and maintained by the Angular team, and is used to test performance of AngularJS and AngularDart, but is not limited to testing with these frameworks.
Blackfire Profiler: Fire up your PHP Apps Performance
Is a NodeJS based tool or measuring browser performance metrics (like layout, paint, dom load or frame times). It collects the metrics from sources like about:tracing, Chrome Devtools timeline, IE UI Responsiveness tab, Xperf, etc.
Fetch timings (Navigation Timing API and User Timing) and other data from your browser!
Keep your bundle size in check. An open-source CI job that will fail when the size of a specified bundle goes above the configured threshold.
Continuous website quality and performance telemetry
Check if all your defined CSS classes are used in your HTML files and vice versa.
Test driven benchmarking.
Clean-css is a fast and efficient Node.js library for minifying CSS files. According to tests it is one of the best available.
Combine matching media queries into one media query definition. Useful for CSS generated by preprocessors using nested media queries.
Testing distributed systems under hard failures like network partitions and instance termination is critical, but it's also important we test them under less catastrophic conditions because this is what they most often experience. Comcast is a tool designed to simulate common network problems like latency, bandwidth restrictions, and dropped/reordered/corrupted packets.
Make it easier to find regressions by comparing your HAR files.
SaaS-based monitoring of server metrics, page load times, and custom metrics and events. Use of anomaly detection to detect performance issues.
Critical extracts & inlines critical-path (above-the-fold) CSS from HTML.
Finds the Above the Fold CSS for your page, and outputs it into a file
CSS delivery tool
This tool examines how a webpage uses CSS. Checks internal and external use of CSS.
Grunt task to analyse css files and log simple metrics.
CSS minifier - Because CSS is on the critical path to rendering pages. It must be small! Or else!
A css sprite generator that generates sprites and proper css files out of a directory of images.
cssstats.com is a css visualizer.
Ever wondered what work different CSS properties trigger? Wonder no more!
csscss will parse any CSS files you give it and let you know which rulesets have duplicated declarations.
This Chrome Extension looks for stylesheets and style blocks on the webpage it's run against and groups declarations together for easy inspection. For example, you can see how many colors are used and how often. This can help you consolidate your styles and help with refactors.
A modular minifier, built on top of the PostCSS ecosystem.
CSSO (CSS Optimizer) is a CSS minimizer unlike others. In addition to usual minification techniques it can perform structural optimization of CSS files, resulting in smaller file size compared to other minifiers.
Convert your images to WebP format.
HTTP/2 Website Speed Test by DareBoost
How faster is your website thanks to HTTP/2? Dareboost works for sites which already have enabled HTTP/2. It runs 2 speed tests, using a real Chrome browser. HTTP/2 protocol is disabled for the second speed test. (Only one test for free, or 5 per month after free registration.)
DareBoost offers performance analysis and monitoring (real browsers). It integrates Google Page Speed, YSlow, W3C validators and its own best practices, with tailor-made tips on specific technologies like jQuery, WordPress, etc
Front-end performance monitoring based on Lighthouse. Get an alert when something goes wrong, and access the information you need to fix the problem.
Fast, on-demand resizing, optimizing and conversion of high-resolution images. Balances quality with file size. Works with existing storage and CMS solutions.
Analyze the impact of a browser extension on web performance.
Flood IO lets you run distributed load tests across the globe with JMeter or Gatling. Use our On Demand infrastructure or Host Your Own cloud.
Glue is a simple command line tool to generate CSS sprites
Utility to automatically subset fonts for serving on the web.
Website performance intelligence sent daily to your team. GoFaster.io combines real user monitoring (RUM) performance data from your users browsers with our server performance monitoring data to give you actionable reporting about your site's performance.
This plugin is intendent to be used as loading and rendering performance measuring tool for web applications development.
grunt-phantomas is a Grunt.js task that aggregates Phantomas data and produces graphs so you can easily track performance trends. It is extremely configurable and allows you to show as little or much of the Phantomas data as you want. It also allows you to visualize any assertions you've set, to help track performance budgets.
grunticon takes a folder of SVG/PNG files (typically, icons that you've drawn in an application like Adobe Illustrator), and outputs them to CSS in 3 formats: svg data urls, png data urls, and a third fallback CSS file with references to regular png images, which are also automatically generated and placed in a folder.
Homebrew web font tools
Homebrew formulae for font tools to create and transform web fonts to get the smallest result possible.
curl statistics made simple.
HTTP/2 Test by KeyCDN
Online tool to verify if your server or CDN supports HTTP/2.
A Go service for buffering HTTP requests and processing them asynchronously
A command line tool to measure the efficiency of your responsive image markup across viewport sizes and device pixel ratios.
Minify images seamlessly with Node.js.
Resizing images made easy - thanks to imagemagick.
Automates ImageOptim, ImageAlpha, and JPEGmini for Mac to make batch optimisation of images part of your automated build process.
ImageOptim is a GUI for lossless image optimization tools: PNGOUT, AdvPNG, Pngcrush, OptiPNG, JpegOptim, jpegrescan, jpegtran, and Gifsicle.
ImgBot crawls all your image files in GitHub and submits pull requests after applying a lossless compression. This will make the file size go down, but leave the dimensions and quality just as good.
imgix solves images. We tackle the complexity of responsive imagery to help you deliver the highest value image to the right device, at the right time, every time. On-demand image processing, optimization and delivery.
Inline critical-path css and load the existing stylesheets asynchronously. Existing link tags will also be wrapped in <noscript> so the users with javscript disabled will see the site rendered normally.
inspectIT is your Open Source Application Performance Management solution for monitoring and analyzing Java-based applications. The Java agent turns on the light in your application's black box and you can see why the application is slow or not available. A central data repository has all the performance metrics you really need available anytime so that you can stop running around to obtain your information. Import and export functionality of monitoring data allows you to smash the silos in your organization and to improve the information flow between operators and developers.
iSpySpeed is a free tool that helps marketers determine the page load speed of their competitors.
JiffyLoad performs website speed analysis in real browsers, integrating Google Page Speed and YSlow. Service captures video and screenshots of loaded pages and provides tips to improve overall performance.
Utility to optimize/compress JPEG files
With JPEGmini you can reduce the file size of your photos by up to 5x, while keeping their original quality and JPEG format
JPEGrescan is a perl script that uses jpeg tools to optimize jpeg compression by micro-managing some of the compression math based on research into some of the most common parameters.
Inline your CSS properties into the style attribute in an html file. Useful for emails.
Justice will create an on page widget that displays various performance metrics, including a streaming fps meter.
Tool to integrate multiple performance indicators. Allowing to manage the history of changes in these indicators during the development cycle of the application. The main indicators will be page loading time, page size, and score related to pagespeed and yslow.
Kraken is a robust, ultra-fast image optimizer and compressor with best-in-class algorithms. It'll save you bandwidth and storage space and will dramatically improve your website’s load times.
Lazy loading boosts page speed by deferring the loading of images until they're in (or near) the viewport. This library makes it completely painless - maximizing speed by keeping options to a minimum.
Leanify is a lightweight lossless file minifier/optimizer. It removes unnecessary data (debug information, comments, metadata, etc.) and recompress the file to reduce file size. It will not reduce image quality at all.
Lighthouse analyzes web apps and web pages, collecting modern performance metrics and insights on developer best practices.
A function for loading CSS asynchronously.
Load Impact (Paid)
Performance and load testing for Apps and APIs. 1 test for free without account. 5 free tests a month after registration. With the paid version, With Load Impact, you can create a load test which simulates different browsers, network conditions and visitor behaviors.
Performant lazy loader using IntersectionObserver API
Minimal monitor for JS Heap Size via performance.memory
Monitor your asset size over time, in your browser, or using the provided HTTP API.
Displays network quality as reported by Network Information API.
New Relic (Paid)
New Relic gets you immediate code-level visibility to build faster software, create better products, and delight your customers.
Little utility to show stats about your page's angular digest/watches.
A web performance tool aimed to help developers find critical performance issues.
A diagnoses tool for your Node.js performance issues
PageSpeed Insights products will help you identify performance best practices that can be applied to your site, and PageSpeed optimization tools can help you automate the process.
A very simple bookmarklet that analyses the pagespeed of the current page in the browser.
Parker is a stylesheet analysis tool. It runs metrics on your stylesheets and will report on their complexity.
Performance Co-Pilot (PCP) provides a framework and services to support system-level performance monitoring and management. It presents a unifying abstraction for all of the performance data in a system, and many tools for interrogating, retrieving and processing that data.
Penthouse is a tool generating critical path css for your web pages and web apps in order to speed up page rendering. Supply the tool with your site's full CSS, and the page you want to create the critical CSS for, and it will return all the CSS needed to render the above the fold content of the page.
grunt-perfbudget is a Grunt.js task for enforcing a performance budget (more on performance budgets). It uses the wonderful webpagetest.org and the WebPagetest API Wrapper for NodeJS created by Marcel Duran.
A bookmarklet and Chrome extension to create a front-end performance heatmap of resources loaded in the browser using the Resource Timing API.
PerfMonkey makes it very simple to keep track of your website's rendering performance.
This is an npm package to display statistics about your web pages, information such as CSS resources count, Google PageSpeed Insights score, information on how to fix performance issues, HTML errors and more in one custom web page.
Simple way to collect and look at your website performance metrics quickly, that supports budgeting and adding custom metrics.
PerfJankie uses browser-perf to measure browser rendering performance metrics and tabulate the results in a CouchDB database. It is a node module available as perfjankie and can be integrated into any continuous integration system.
Bookmarklet, Chrome extension and Firefox add-on to analyze the current page through the Resource, Navigation and User Timing API - requests by type, domain, load times, marks and more. Sort of a light live WebPageTest.
Web Performance Timing API Google Chrome Extension.
Highly accurate performance measurements. Site crawls. Identify fastest and slowest pages. A range of reports to help you find and fix performance issues.
PerfWars is a fun and useful way to compare the website performance of two URLs.
PhantomJS-based modular web performance metrics collector.
This is designed to make benchmarking PHP easy.
A responsive image workflow for optimizing and resizing your images
PHPench creates a graphical output for a PHP benchmark. Plot the runtime of any function in realtime with GnuPlot and create an image out of the result.
A responsive image polyfill for
Everything you need to monitor your website. With Pingdom’s website monitoring you’ll be the first to know when your website is down, and you’ll stay on top of your website’s performance. Monitoring your websites and servers is a smart decision.
Pngmini - ImageAlpha
ImageAlpha greatly reduces file sizes of 24-bit PNG files (including alpha transparency) by applying lossy compression and conversion to a more efficient PNG8+alpha format. Such images are compatible with iOS, all browsers, and even degrade well in IE6.
Provide a gradient fallback for an image that loosely resembles the original.
CLI tool and lib to gather performance metrics via Lighthouse
Middleware that displays speed badge for every html page. Designed to work both in production and in development.
Request Map Generator
Greates a detailed graph of the domains called by your site. E.g. third-party requests.
respimage is a fast, lightweight and robust responsive images polyfill, that saves the users bandwidth by utilizing smart resource selection algorithm. It implements the srcset/sizes attributes as also the picture element. Unlike other responsive images polyfills respimage plays nicely with your graceful degradation / progressive enhancement strategy.
Responsive Images Extender
Extend HTML image tags with srcset and sizes attributes to leverage native responsive images.
Produce images at different sizes for responsive websites.
A Ruby based DSL for building JMeter test plans.
Performance testing for Responsive web design websites.
Shrinkray is the easiest way to optimize your images. Once you sign in with your Github account, you can optimize all of the images in your repos with a single click. Even large sites with hundreds of images can be optimized in minutes.
simplehttp2server serves the current directory on an HTTP/2.0 capable server
Sitespeed.io is an open source tool that helps you analyze your website speed and performance based on performance best practices and metrics. It collects data from multiple pages on your website, analyze the pages using the rules and output the result as HTML, TAP or JUnit XML.
Sloth - an extension to make you suffer, browsing the web. Build web faster being slow
Smush.it uses optimization techniques specific to image format to remove unnecessary bytes from image files. It is a “lossless” tool, which means it optimizes the images without changing their look or visual quality. After Smush.it runs on a web page it reports how many bytes would be saved by optimizing the page's images and provides a downloadable zip file with the minimized image files.
The source map explorer determines which file each byte in your minified JS came from. It shows you a treemap visualization to help you debug where all the code is coming from.
An Apps Script that polls Webpagetest weekly and puts the result into a Google Sheet.
Website performance reports for slack using performance.timing
Measure page asset download times, find unused CSS rules and find which CSS rules are in your critical rendering path with PhantomJS.
Website performance monitoring tool using WebPageTest
Monitor front-end performance. Beat the competition. Get continuous feedback on how your front-end code is affecting the performance of your website.
This site allows you to point Speedgun.js at any public facing website* to gather important web performance data.
With Speedrank you get detailed audits about your website. We check the speed for your visitors and recommend improvements. Check also the websites of your competitors and take off in the point speed.
Detects likely third-party single points of failure as you browse and allows you to Simulate 3rd party resources being unavailable.
See what will happen to your site when a third-party provider goes down!
Generates sprites from images referenced in a stylesheets. Updates references with the generated sprites and positions.
Utility that takes sprites and converts them into a stylesheet and its coordinates.
Squoosh is an image compression web app that allows you to dive into the advanced options provided by various image compressors.
This script provides a simple info box that will help you monitor your code performance.
A module to do some logic on the `onscroll` event without performance regressions in a @media-query like conditions.
This project is a bookmarklet for stress testing the CSS on any given webpage. It indexes all the elements and their classes, and then--class by class--it removes one, and times how long it takes to scroll the page. Selectors that save a considerable amount of time when removed indicate problem areas.
StyleStats is an evaluating tool for writing better CSS.
A command line tool to statically analyse your page in order to generate the most optimal web font subsets, then inject them into your page.
Micro-library for gathering frontend web page performance data.
SVG sprites & stacks galore — Node.js module that reads in a bunch of SVG files, optimizes them and creates SVG sprites in various flavours along with suitable stylesheet resources (e.g. CSS, Sass, LESS, Stylus, etc.)
SVGO is a Nodejs-based tool for optimizing SVG vector graphics files.
Combine svg files into one with <symbol> elements.
Timing.js is a small set of helpers for working with the Navigation Timing API to identify where your application is spending its time. Useful as a standalone script, DevTools Snippet or bookmarklet.
Smart JPEG compression - Compress JPEG files with a perfect balance in quality and file size.
Shrink PNG files - Advanced lossy compression for PNG images that preserves full alpha transparency.
TMI (too many images)
Discover your image weight on the web. Find out the image weight in your pages, compare to the HTTPArchive average and discover what images you can optimize further.
Treo is Lighthouse as a Service. It provides regression testing, geographical regions, custom networks, and integrations with GitHub & Slack. Treo is a paid product with plans for solo-developers and teams.
uCSS is made for crawling (large) websites to find unused CSS selectors.
Vector is an open source on-host performance monitoring framework which exposes hand picked high resolution system and application metrics to every engineer’s browser. Having the right metrics available on-demand and at a high resolution is key to understand how a system behaves and correctly troubleshoot performance issues.
Concatenate a set of Web Components into one file.
Web Font Loader
Web Font Loader gives you added control when using linked fonts via @font-face. It provides a common interface to loading fonts regardless of the source, then adds a standard set of events you may use to control the loading experience. The Web Font Loader is able to load fonts from Google Fonts, Typekit, Fonts.com, and Fontdeck, as well as self-hosted web fonts. It is co-developed by Google and Typekit.
Web Vitals Leaderboard
Web Vitals Leaderboard is the simplest way to understand how your website’s performance compares to other sites in your industry. The data comes from ChromeUXReport, the dataset collected from real-world users.
WebPagetest Charts Api
An Express application that runs, stores, and serves WebPagetest test results with a chart building focus. There is an example UI Charting application linked in the README.
Run a free website speed test from multiple locations around the globe using real browsers and at real consumer connection speeds. You can run simple tests or perform advanced testing including video capture, content blocking and more. Results will provide rich diagnostic information including a lot of suggestions for improvements.
Maps JSON result data from marcelduran/webpagetest-api into human-readable document formats.
At the moment this is a CLI tool for stashing a pagespeed insights score for each URL retrieved from a sitemap.
Web Performance Heat Map Generator
Submit a URL to generate a heat map of all of the page rendering to rapidly identify slow elements on your site.
WebPonize is a Mac OS App for converting PNG, JPEG, animated (or not) GIF images into WebP.
Website Speed Test
A site speed test that includes a waterfall breakdown and the website preview. Select any of the 10 test locations. Easly share the website speed test results with others.
Font compression modules (mainly TTF to WOFF2)
Simple but effective plugin allows you to extensively clean up your WordPress database and optimize it without doing manual queries.
WebPageTest Bulk Tester
Use Google Docs to test multiple URLs using WebPageTest. Each test uses one of a defined set of parameters (a scenario) so tests can either share the same parameters, or use different sets depending on need.
Yellow Lab Tools
YSlow for Command Line runs on Node.JS and requires a HAR file as input source in order to analyze page performance.
ZeroSprites is a CSS sprites generator aimed at area minimization using algorithms used in the field of VLSI floorplanning.
Bindings for Zopfli compressing lib. Compress gzip files 5% better than gzip. It is considerably slower than gzip (~100x) so you may want to use it only for static content and cached resources.
No results found