If you’re already on this page then you probably know that NitroPack.io is a cloud based website speed optimization service. It’s an all in one product for speed optimization and can provide a significant boost in speed to sites that have had zero optimization performed on them.

Full disclosure here: In a sense we’re an adjacent competitor to NitroPack so we’re probably a bit tougher on the tool than other reviews you read online. We also have deep experience in the speed optimization space and understand what NitroPack is doing under the bonnet (spoiler:it’s not magic, this Nitro article is a good explainer) and to a degree they are not being fully honest about how they’ve positioned themselves (see the Is NitroPack Blackhat section below)
If you’re leaning towards Nitro versus manual speed optimization our recommendation would be to give it a go BUT review your core web vitals data after 30 days in the CRUX dashboard (click here to make yours) and Google Search Console and make sure you’re getting a passing grade. (details further below)
CLICK HERE and use the coupon code WPSPEEDFIX to get 5% off your NitroPack subscription
It’d also be worth running a speed test in our tool SiteSpeedBot.com before making any changes as it will highlight key areas of optimization that NitroPack may not fix.
We also have a section below with some action items that will help you get more out of NitroPack if you do use it.
Table of Contents
What we like about NitroPack
Cons
- Can be expensive versus alternatives like Cloudflare & WPRocket
- Good for Pagespeed Insights score but not necessarily core web vitals (their own site doesn’t pass core web vitals)
- May impact third party tools and tracking negative – especially Callrail and other call tracking tools
- Cannot do important optimizations like WordPress database optimization, setup of Redis caching
- Like all cloud tools, image compression is not great as its better done inside WordPress so can’t fix huge page sizes
- Can easily break your site (see show video below with explainer)
- Can’t fix bad hosting
- Potential to hurt image SEO as assets are loading off 3rd party domain (same issue with all 3rd party CDN hostnames)
Pros
- Quick to implement
- Supports multiple CMS systems
- Relatively simple to implement
- Can be slow at times
- Can be slower than competing products if there is no server close to your visitors
- In a lot of cases not enough to pass core web vitals

Core Web Vitals 101
Google has formalized site speed into “web vitals” and three “core web vitals” which is what they are using as part of their ranking algorithm.
The data for these web vitals is pulled directly from Google Chrome users and is real world data versus the synthetic or lab data that you generate when testing your site in tools like Google Pagespeed Insights.
This is an important distinction or concept to understand because many marketers are focussed on Pagespeed scores but what ACTUALLY matters is the core web vitals metrics because that’s a reflection of real world speed.
The 3 Core Web Vitals Metrics Expalined
LCP or Largest Contentful Paint – this is when the largest piece of content on the page has loaded. Google wants 75%+ of your visitors to have an LCP under 2.5 seconds (here’s an article that talks specifically about LCP and reducing your LCP timing https://www.wpspeedfix.com/improve-largest-contentful-paint-lcp)
FID or First Input Delay – this is a measure of how responsive the page is (and how busy the web browser is when building the page) and measures how quickly the site responds to the first input the user has (e.g click, tap, scroll and so forth). Google wants a FID score of 100ms or below for 75% of visitors.
This is usually the easiest metric to optimize for and a large part of this work is optimizing and reducing the impact of javascript. You can’t measure FID in a speed test tool (as its a real world metric) so other metrics like total blocking time are used instead, here’s an article on reducing total blocking time – https://www.wpspeedfix.com/how-to-reduce-total-blocking-time/
CLS or Cummulative Layout Shift – CLS measures how stable the site is during the load process. We’ve all had that experience where a site is loading, we go to click on an element and the site moves around under the mouse and whatever we were about to click on has moved, thats layout shift.
This is a calculated number, not a time and Google wants this under 0.1
Core Web Vitals Reports
There’s two main ways to get core web vitals data on your site. The first is in Google Search Console under the Page Experience tab which will list pages that have an issue with core web vitals.
The second is CRUX dashboard reports. CRUX stands for Chrome User Experience and the CRUX report is an excellent way to see core web vitals and other web vitals performance over time.
If you click THIS LINK you can build your own CRUX report. **Note that you’ll need to enter the exact URL of your site and will need to have enough traffic in order to generate a report.
Short video below walking you through this process
Video transcript: NitroPack Review - How To Setup Your CRUX Dashboard Core Web Vitals Report
0:00The Quick Method for Creating a CrUX Dashboard
I'm going to show you how to create the CrUX dashboard report we talked about in our NitroPack review article. There are two ways to do it. The first is the quick and easy way. Rick Viscomi has created a tool that will create the report in one hit. I'll link you to that in our article, and at the bottom of this video if you're watching on YouTube, because it's kind of a funny GitHub link.
You basically go to this link and just type in your web address. It needs to be the full primary host name or primary web address of the website. If you type in HTTP or something different, it won't work, so it has to match exactly what the site is. I'll just do ours: https://www.wpspeedfix.com. Copy, paste it, whatever you want to do, then press enter. It will take 10 seconds and it will build that Google Data Studio report.
So that's one way to do it. This report will auto update on the second Tuesday of each month. You'll see at the bottom here it says that new datasets are released on the second Tuesday of each month. With this method of creating the reports, you won't be able to edit the report much or share it. I think you can share it, but you can't embed it. It's a little bit limited because it's building it off that API.
1:10The Longer Method: Editing, Renaming and Sharing the Report
If you want to build the report the long way and have the ability to share it, mess around with it, and change the title and so on, use this link, g.co/chromeuxdash. There are a couple of steps to doing it, but it's pretty straightforward. If you're doing this for clients, you probably want to use this longer methodology because it allows you to rename the report and share it. It will bring up a screen like this, so again just type in the web address. Same thing, it has to match exactly.
You also need to have enough traffic. If you don't have enough traffic to the site, this won't work. For a brand new website or brand new domain, you're not going to have any data, so it's pointless. If you've just recently switched the host name, that might be problematic as well, because it might not have enough data for that particular host name. If you click this button here, it will allow you to edit this report, so you can change the URL in the report, but for this short video I'll do that. I'm going to hit connect, and that will bring me to another step that allows me to edit some of the report parameters.
Just wait for this to catch up. I don't really care about any of this stuff here, so I'm just going to go create report, but if you do care about it, you can mess around with it. So create report, create report, and then it will do essentially the same thing. It creates the same report, but I have a bit more control over it, so I'm able to do more edits. I can change the name of the report here. If I click the edit button, I can change the name there, so you know, WP Speed Fix report, whatever. I can also share it, and I can do all sorts of stuff with sharing it with clients. You can also set this up to be emailed. Somewhere here there's an option to email it on a regular basis. I can't remember where it is, but you'll figure it out.
3:04Reading the Core Web Vitals, FCP and Device Tabs
There are a bunch of tabs here in the report. Just a quick walk-through: this is the overview with the three key Core Web Vitals metrics. You can also choose the date here, so as long as there's enough data, you can choose the date where you have enough traffic. If you don't have enough traffic, if you're borderline, it might skip a month, so if you're missing months or dates in here, it's because you didn't have enough traffic. You can also select by device, so you can have phone or desktop.
You can see the different Web Vitals metrics here in the sidebar. Some of the other metrics we actually care about are time to first byte, so we want that looking good. We want these green, as under half a second, so that's important, because that's going to reflect how responsive the user feels the website is. You can see here month on month, and I'm running this in December 2021, so you can see I've got data for last month.
FCP time is also important. That's how quickly the site starts to load, and green is under 1.8 seconds. This is really important, because the visitor wants to feel like the site is loading quickly. If this is poor, they'll be staring at a blank screen for some time. Even though it's not a Core Web Vital metric, it is an important metric for basically the feel of the site speed.
You can see here where we've actually developed some new optimizations to improve this. Earlier in this year our FCP time wasn't that good, because we didn't have these optimizations we created. We do have an article on optimizing FCP time where we talk about that as well, if you're looking to DIY. This onload metric here is the more traditional load time metric. It's probably not that important anymore in a Core Web Vitals world, but if that matters to you, it's there.
You can also see the breakdown of devices that are hitting the site. I'll just change this to both, because we're filtering it. You can see there that this has actually gone up. It used to only be 10%, but now 25 to 30% of our visitors are on a mobile device, which I think last year was only floating around 10 or 11%. So that's interesting.
4:58Running the Report for Competitors
You can also run this report for competitors. If you have competitors you want to keep an eye on and see what they're doing, you can actually get some of this data. We can get all of this data on them. You can run this on any website, so long as it has enough traffic. That's pretty much it. I think that's self-explanatory. Updates come on the second Tuesday of the month, thereabouts. Sometimes it's a little bit late, and you can create as many of these as you want.
I'll leave you to it. We would strongly recommend setting up this report and watching it on an ongoing basis if you do want to try NitroPack. Set up the report first, get a snapshot of where you are today, and then try NitroPack if you're kind of on the fence. Anyway, I hope you found this valuable.
NitroPack’s own website doesn’t pass core web vitals
You’ll see below that NitroPack’s own website doesn’t currently pass Core Web Vitals as the LCP time has to be “good” for 75% of more of your visitors. Only ~69% of their mobile users are getting a fast experience and on desktop they’re borderline passing with 75.9% of desktop users getting a fast experience.
Click here for their full Core Web Vitals report – if you click on the tabs on the left hand side of the report you’ll see some of their other web vitals metrics like TTFB and FCP are also quite poor. T

Is NitroPack Blackhat or Fake or Cheating?
There’s a lot of chatter on the web around NitroPack being “blackhat” – here’s some examples:: https://www.webwhim.co.uk/nitropack-black-hat-seo-speed-optimization/
and https://moz.com/community/q/topic/71000/is-nitropack-plugin-black-hat-seo-for-speed-optimization
Blackhat is a strong word and loaded with connotations. I wouldn’t necessarily call their methodology blackhat but they’re not being entirely honest about how their tool works and to a degree have cashed in on the idea of “get a 100 score in Google Pagespeed Insights”.
The problem is that they use techniques to make sites score well in Google Pagespeed Insights but this speed isn’t necessarily reflected in the real world.
You can see this in their own core web vitals reports where they don’t actually pass the core web vitals test themselves.
Some of their other speed metrics in that report like TTFB (time to first byte) also look horrible.
If you’re interested, there’s a blog post on their website here that explains in more detail how NitroPack works.
If you do decide to use NitroPack, here’s three things to be mindful of or do in advance:
- Be mindful of their javascript optimizations so that your site isn’t broken – section on how to check that below
- Be aware that they’ll boost your pagespeed score but won’t necessarily get you a passing grade in core web vitals. Setup a CRUX report in advance to track this
- Track your keywords rankings in a rank tracker so you can see any ranking fluctuations immediately
- Implement the other optimizations listed below to get the most out of NitroPack

How To Determine If NitroPack Is Breaking Your Site
Especially where a site is javascript heavy, speed optimizations can easily break functionality in a way that’s not immediately obvious. Common examples are optins, popups and menus on mobile devices.
A simple way to check for these errors is to open a page in Google Chrome, right click->Inspect Element->Click the Console Tab and then hold the shift key and refresh the page.
The console will show warnings in Yellow and Errors in Red. If you see an error it’s likely some functionality has broken.
Click play on the video below for a quick walkthrough.
Video transcript: NitroPack Troubleshooting - How to check for Javascript errors after enabling Nitro
0:00Checking the Console for JavaScript Errors After Enabling NitroPack
We're checking the developer tools for errors around JavaScript when you optimize with NitroPack. I've just gone and grabbed one of their customers from the NitroPack website and loaded up their website, DevRex. I'm on this page here. The way you use this is to right click and go to Inspect.
0:22Reloading the Page and Reading the Red Errors
The developer tools will open here, and we want to be on the Console tab. You can see that there are already some errors, so we clearly have an issue here, but I'm just going to reload it anyway. If you hold the Shift key and press the refresh button, that brings down a brand new copy of the page, so in a sense it flushes the cache. Now there's nothing here, but as soon as I move the mouse you'll see there are some errors.
That's one of the optimizations they're doing. They are pausing or delaying JavaScript until you use the mouse or interact with the site, which is a common optimization, and WP Rocket has a similar one as well. What we want to avoid are these red errors. Usually when there's a JavaScript error you'll see something like "Uncaught ReferenceError", which means the JavaScript is probably loading out of order or has some issue there. So there's definitely something wrong with this page, and it's causing a problem.
1:08Separating a NitroPack Problem From an Expired Plugin Account
There are also some issues here with OptinMonster. In this particular case I don't think NitroPack is the problem. It actually looks like they have a subscription to OptinMonster that's lapsed or is no longer active, so that's why these are throwing up some 404 errors. It would appear that this is a separate issue to the NitroPack one, related to an expired or an old OptinMonster account.
But that's what we want to avoid. Any time we see red in this Console tab it's a problem, and it needs some troubleshooting. If we click into these errors, it'll give us more information on what they are. You can click here to expand it. It's not really going to give us many insights here, because these are optimized JavaScript files from NitroPack. If we click into them, you can see the number after the colon on the end is usually the line number in the code that has the error. If I click that, it tells me it's this particular file here, and I'm pretty sure this file has to do with WordPress authentication.
So something is up there, and if users were logging into the website, which it doesn't look like they are here, that could create a problem. I think it's something to do with the password complexity bar or something like that, but that's just to highlight what we're looking for. If we're seeing red here after turning on NitroPack, then we've broken something, so we need to make sure that this doesn't happen. We might need to wind back and use less aggressive settings, or exclude those files from optimization.
I hope you found that useful. If you have any questions, just post in the comments below on this video and I'm happy to come back to you with more detail.
How To Get The Most Out Of Nitropack
As we’ve said above, NitroPack isn’t magic and can’t fix everything. If you do decide to use it make sure you’ve got these boxes checked too:
- Use good hosting – Cloudways is one of our preferred WordPress hosts, the hosts here are also good https://www.wpspeedfix.com/fastest-wordpress-hosting/
- Use a fast DNS host, e.g. Cloudflare ins DNS hosting only mode or one of the hosts on https://dnsperf.com
- Use https://instant.page plugin for just in time preloading – this will squeeze more juice out of NitroPack
- Compress images first using EWWW optimizer or Shortpixel
- Do a sitewide speed test using Screaming Frog SEO Spider to ensure no pages over 3mb – here’s a how to guide https://www.screamingfrog.co.uk/seo-spider/user-guide/configuration/#pagespeed-insights-integration
- Do NOT use multiple CDNs – using more than 1 CDN is a bad idea. If you use NitroPack turn off Cloudflare or any other CDNs you’re using
NitroPack Alternatives
We have a whole post discussing alternatives to Nitropack in more detail, click here for it . Our preferred speed optimization stack a combination of: