The resource show_ads_impl.js was preloaded – a simple explanation

Did you see this error in the Chrome developer tools?

The resource https://pagead2.googlesyndication.com/pagead/js/r20190624/r20190131/show_ads_impl.js was preloaded using link preload but not used within a few seconds from the window’s load event. Please make sure it has an appropriate ‘as’ value and it is preloaded intentionally.

You would not be the first one, and after a few questions from Advanced Ads users, I thought I might dig into its meaning.

When does this warning show up?

Contents

The warning only shows in the developer tools in the Chrome browser for websites that are using AdSense and when you disabled caching in the Network tab. It doesn’t matter whether you are using their Auto ads feature or manually placed AdSense ads.

Chrome developer tools with caching disabled in the Network tab.Disabled caching in the Network tab.

The error is gone as soon as you disable the Disable cache option.

Does it hurt your AdSense earnings?

This warning is only showing up if you deliberately disabled caching WHILE opening the developer tools. Since this is not how most of your visitors are going to open your site, it wouldn’t even matter if it would cause an issue for this user group.

The problem could be a small one related to performance. If a file is loaded and then not used, it might be better not to load it at all. My tests show that this is maybe in the range of 250 ms and a file size of 78.5 kB. Again, this only applies to users with the dev tools in Chrome open.

What are the technical details?

If you take a look at any AdSense code, then you see them loading a JavaScript with the following code.

 div {
	overflow: auto;
}

.shcb-language {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	-webkit-clip-path: inset(50%);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
	word-wrap: normal;
	word-break: normal;
}

.hljs {
	box-sizing: border-box;
}

.hljs.shcb-code-table {
	display: table;
	width: 100%;
}

.hljs.shcb-code-table > .shcb-loc {
	color: inherit;
	display: table-row;
	width: 100%;
}

.hljs.shcb-code-table .shcb-loc > span {
	display: table-cell;
}

.wp-block-code code.hljs:not(.shcb-wrap-lines) {
	white-space: pre;
}

.wp-block-code code.hljs.shcb-wrap-lines {
	white-space: pre-wrap;
}

.hljs.shcb-line-numbers {
	border-spacing: 0;
	counter-reset: line;
}

.hljs.shcb-line-numbers > .shcb-loc {
	counter-increment: line;
}

.hljs.shcb-line-numbers .shcb-loc > span {
	padding-left: 0.75em;
}

.hljs.shcb-line-numbers .shcb-loc::before {
	border-right: 1px solid #ddd;
	content: counter(line);
	display: table-cell;
	padding: 0 0.75em;
	text-align: right;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	white-space: nowrap;
	width: 1%;
}
]]>

<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>

Code language: HTML, XML (xml)

This is obviously not the script show_ads_impl.js mentioned in the warning above. However, this file loads that script which is using the preload technique. It basically means that AdSense intends to use (parts of) that file and asks the browser to load it for later.

See Also  How To Replace A Car Aerial On The Roof

The warning shows up because the file is then not used within 3 seconds after requesting it, or technically after the onload event fired. That seems to be the case with caching disabled in the developer tools.

Preloading was introduced in Chrome 50. The preload value will just be ignored by browsers not supporting it and does not cause any issues. The standard might still change in the future.

How can you solve this?

There is nothing to solve here. You can disable the Disable cache option in the Network tab, and the issue is gone. The same applies when you browse without opening the developer tools at all.

Thanks to our AdSense contacts to help resolve this.

Thomas

Starting in 2009, Thomas’ own word game website grew to 40 MM page impressions per month. He then built Advanced Ads to help his colleagues to place ads and test different ad positions and networks tests without any coding skills. Thomas now enjoys improving the product for our more than 150,000 users worldwide.

Rate this post
Back to top button