SubscribeHome About Us

Time-Delay Cloaking: Fighting Banner Blindness

I mentioned scroll cloaking a while back, and wanted to add another of my favorites: Time-Delay Cloaking.

With the time-delay cloaking method, a webmaster will partially render the page so that the ads at the top of the page show by themselves to users long enough to get a click and not get distracted by content. Lets face it, a page with nothing but ads on it has fantastic CTR without all that pesky content getting in the way.

Time-Delay cloaking isn’t actually ‘cloaking’ and webmasters have plausible deniability that it’s just a wonky server, or a slow connection, or perhaps just how the script hits a slow database. Eventually the content loads, and no one is hurt.

Big Benefits

A delay of 6-10 seconds can double an advertisement’s CTR… or more. The actual improvement, of course, depends upon a lot of things. Just a few seconds of delay can have a measurable affect on click throughs. When the advertisement is Adsense or another remotely hosted ad network, the delay may be even longer so that the remote script has time to load and render. Time-delay cloaking can go a long way to make sure that advertisers aren’t ignored while still giving users what they came for.

Credit CNet

I first noticed this type of cloaking back in 1998 on CNET. At the time, I think it was unintentional, but perhaps I don’t give them enough credit. Their implementation involved a flaw in browsers at the time that would wait to render parts of a table until all the content loaded. They would put their ads at the top of the page in a separate table, and it would render as soon as you hit the page. The rest of the page would follow a few seconds later or more, depending on your connection speed.


Implementation is fairly straightforward. In PHP the simple implementation:

echo $yourHeader;
echo $yourAd;

sleep( 5+rand(4,8) );

echo $restOfYourPage;
** you may or may not have to flush the output buffer.

In some cases, you could also put a slow loading remote script with a document.write(). There are many more ways to implement this, and I encourage you to be creative and let us know what you come up with.

Some Tips

Make sure you remove the delay for any bots as this can reduce your crawling rate, or worse. I’m not sure how the search engines may see this, but that alone is a sure sign that you should proceed with caution. Some tips for using this method:

- Randomize the delay time so it’s not obvious what you are doing
- Don’t delay for bots – you may get reduced crawling or worse
- Don’t over do it – if you delay too long, do you really have content?
- Only delay once per user per day to avoid reverse engineers


Cloaking of any kind may risk your search engine rankings. I don’t endorse this technique, nor do I recommend it to anyone that hasn’t evaluated the risks. In general a site should cater to what is good for their users. When in doubt, ask for help.

Happy Cloaking.

1 Comment

One Response to “Time-Delay Cloaking: Fighting Banner Blindness”

  1. Benj Arriola Says:

    Hmmm very true, it is not really cloaking. And what is to look at when there is nothing else to look at but ads. Somehow, it works like a pre-roll video ad. And since it is loading time, you can pretend it is caused by loading. And has no option to skip. *lol*

    I am not sure if I am happy or annoyed with this. But I think it is really creative.