If you’re working on site speed and wonder if your Journey ads are having an impact, you’ve come to the right place!
Some important notes before we dive in:
- We recommend testing site speed with Google PageSpeed Insights because they account for how our ads are lazy loaded, which will provide a more accurate view of your site speed. Plus, it’s what Google uses for ranking purposes, and most of your traffic likely comes from Google.
- Speaking of rankings, it’s important to keep in mind that Google doesn’t care about the actual speed score number. Passing Core Web Vitals is the only thing Google uses for rankings at the moment.
- The way that we've always worked with speed tests is as a starting point to investigate and evaluate a script's necessity. Even the Opportunities and Diagnostics sections of Google PageSpeed Insights come with the caveat that they don't necessarily have a direct impact on the Performance score.
Are ads slowing down my site?
Let’s get to the most important question first: are ads the reason that your site is slow or failing Core Web Vitals?
The short answer is no - Journey ads should never be the culprit of failing Core Web Vitals and have a negligible impact on site speed.
While ultimately a site without ads will always be faster than one with ads – no matter what your setup is – Journey follows Mediavine technology and it is the fastest in the industry, we've built it with page speed at top of mind. What does this mean?
First, all our ads are lazy loaded and the associated scripts are asynchronous, meaning they don’t slow down the initial page load of the site or block the main thread. We also reserve space ahead of time throughout a post’s HTML and load ads in ad boxes with a specified width and height so they don’t cause any layout shifts.
For these reasons, a well-optimized site on a lightweight theme shouldn’t have issues with speed performance or with passing Core Web Vitals while running Journey ads.
Are external scripts from ads slowing down my site?
When you’re running any ads, Journey, Mediavine or otherwise, you might notice a lot more external scripts and requests in speed tests or your console log.
These scripts and requests are all part of the ad bidding process, and are needed assets in order for ads to load on a site.
However, since the ads are lazy loaded, this bidding doesn't take place until the user scrolls near an ad placement. This means that even though there are a lot of requests happening under the hood, they have a very minimal impact on site speed.
Why do I see console errors pertaining to ads and are they slowing down my site?
Seeing a variety of console errors and ad chatter in the console is perfectly normal, and as long as your ads are loading normally, they’re nothing to worry about and aren’t slowing down your site.
Of the console errors we typically see associated with programmatic ads, CORS, 404 errors, and scripts failing to execute or load are common and no cause for any alarm. They can indicate an ad partner is trying to serve an improperly coded ad, or that an ad is trying to retrieve assets or communicate with resources that are unavailable.
There isn't anything we can do about these console errors because they come from third party scripts from our ad partners, but it’s expected ad bidding chatter that won’t hurt your site or site speed.
Why are Journey scripts showing up in speed tests?
There are many different sections related to javascript in Google PageSpeed Insights and speed tests in general, and it’s normal for ad scripts to show in any of them since ads and the bidding process require a lot of scripts and it’s all third party code. This isn’t a cause for concern though, and doesn’t mean that these scripts are the culprit for failing Core Web Vitals or slower site speed.
Below are a few of the common places you might see our script in Google PageSpeed Insights, and what they actually mean for your site’s performance.
Remove unused Javascript
This diagnostic points out any javascript Google perceives as being “unused” on a specific post or page.
Our technology “chunks” our script, which means that when our initial scripts load, we only load what is absolutely essential to what’s needed on the specific post or page. Then, based on a site’s settings, we load separate “chunked” scripts for any additional functionality specific to the site.
Since we only ever load what will need to be executed, if you see our script under “Remove unused Javascript”, this can safely be ignored and you can assume all of these scripts are being used and necessary for ads to load on your site.
Reduce the impact of third-party code
All ad scripts are third party code. Other good examples of third party code are tracking codes (like Google Analytics) or email marketing tools like subscription pop ups.
You might see our script in this section, which is completely normal and shouldn’t be the cause for poor performance or failing Core Web Vitals.
As an example, below you can see the Main-Thread Blocking Time of Journey scripts in the “Reduce the impact of third-party code” section is under 250ms. To put that into perspective, the average duration of the blink of an eye is between 100ms-400ms.
Every site is different, so this thread blocking time will vary greatly depending on a wide range of factors, from other scripts running on the site to the length of the post.
Ultimately, ads require a lot of scripts to work, which will always have some sort of impact on performance and possibly show up in speed tests. But our scripts are as optimized as they possibly can be, and they will have a minimal impact on speed and won’t prevent you from passing Core Web Vitals as long as you have our recommended optimization settings enabled on a well-optimized site.
Why do I see variance in the impact of ads in speed tests?
Your site speed score can vary quite a bit from test to test because there are a lot of factors that can influence it, and this is completely normal!
As far as ads are concerned, XHR requests, DNS lookups, the Google PageSpeed Insights server relative to one of our CDNs, A/B testing, and even geo-specific requests from our script can all result in variance in site speed reports. So seeing fluctuations is not out of the ordinary, and doesn't necessarily correlate to a script not performing to standards.
Even without ads, variance in speed tests is also completely normal. Google has a great article here that explains why page speed can vary so much between tests as well as strategies for dealing with this variance. Some other reasons for variance include if ad A/B tests – which we run every day – are happening when you test, or if you’re testing on different devices with different performance levels.
Why some posts score better than others
It’s also important to note that variance can happen between different posts and pages, which is why you might be passing Core Web Vitals on some posts but not others. Usually, this is due to extra scripts embedded on the specific post or if it’s a longer post.
Post length matters quite a bit because the more content there is for our script and other scripts to parse through, the more impact there will be on site speed. If you see the “Avoid an excessive DOM size” diagnostic in a GPSI test, you might notice the post is less performant or has more variance between tests, which is to be expected. Similarly, if you have a post with several Youtube embeds or Map embeds, these posts won’t be as performant as a post without these embeds.
Can I optimize the Journey script?
No – we strongly discourage optimizing your Journey ad script through a plugin or using any implementation for the script other than adding it to the <head> section of your site.
This is because optimizing the ad script, whether it be by delaying it, deferring it, or otherwise, can lead to revenue impacting issues such as ads not loading on the site. Even if you optimize the script and ads look fine at the time, we’re always adapting our script wrapper and running A/B tests, so this optimization could present a conflict at any point in the future.
Our ad script is already loaded asynchronously and as optimized as it possibly can be for revenue and performance, so any additional optimizations would likely be redundant at best or performance impacting at worst.
If you’re running an optimization plugin, we recommend excluding our script from any javascript settings, and luckily this is super easy to do! Here’s a quick article on how to exclude the ad script in the most popular optimization plugins.
Bottom line
Your site is your business, and every business has to make important decisions. When it comes to ads, you’re deciding to monetize your site, which will ALWAYS come with some sort of impact on site speed since so many scripts are required for ads to load. But with our ads, you’re getting the fastest and most optimized technology in the industry. Our engineers are constantly running A/B tests and working to further optimize our scripts (even if it saves just a millisecond!).
Suffice it to say, we’re a little bit obsessed with optimizing sites for performance, be that ad performance or speed performance, and can assure you site speed is always top of mind with any decisions we make and we do everything in our power to ensure a well-optimized, lightweight site can still easily pass Core Web Vitals and achieve great site speed scores while running our ads.
With all of that said, if you’re looking for ways to improve site speed, below are some great resources to get you started!