Refresh ads on the same spot

Displaying multiple ads in one location on your website makes your ad setup more dynamic and flexible. When you refresh ads on one spot with a specified interval, your ads will possibly get more impressions and clicks.

With Advanced Ads, you can show ads from an Ad Group dynamically rotating in one Placement. To fight ad blindness or to use an existing Placement for multiple ads, you can rotate ads on the same spot during the same page impression.

In Advanced Ads, this is possible with three features:

Ad rotation with Advanced Ads Pro

When you have installed Advanced Ads Pro, you will find additional options to enable a refresh interval for random and ordered ad groups.

To use that feature, you need to enable the Cache Busting module in Advanced Ads > Settings > Pro.

When the setting is enabled, you will find a checkbox and a text field to enable and set the Refresh interval in the ad group settings.

The ads within the ad group will then reload automatically with the specified interval.

Example of two ads rotating in one Placement with a refresh interval:

Refreshing ads and Tracking

If you are using the Tracking add-on, the ad impressions will be counted once per page and only if the ad really showed up (Google Analytics and Database).

When you choose the Frontend method, the add-on records an impression for the group’s first ad.

What else you need to know about ad refresh

  • The number of visible ads at the same time is limited to one when the ad refresh is enabled.
  • If ads in the group with enabled ad refresh have the “Display only once” option enabled, they will be loaded only once in the refreshing rotation. Suppose this function is activated for all ads of this group, their rotation will end after all ads of the group have been shown once.
  • Counting impressions for rotating ads is taking some performance since every call to an ad is loading parts of WordPress. A server admin should monitor the impact of multiple ad rotations per page set up like above on your server.
  • Since this type of integration violates Google AdSense guidelines, you should not use this feature on ads from this ad network.


Different delay per ad

If you create a rotation like above and would like to customize the period on a per-ad basis, e.g., for a video or gif to finish, you can use the following code template in your functions.php file.

add_filter( 'advanced-ads-group-refresh-intervals', 'advads_refresh_intervals' );
function advads_refresh_intervals( $intervals ){
    // pattern: $intervals[ AD_ID ] = PERIOD_IN_MILLISECONDS;
    $intervals[ 4 ] = 4000;
    $intervals[ 15 ] = 1500;
    return $intervals;

The example above defines the delay of the ad with the ID 4 to 4 seconds and ad 15 to 1.5 seconds.

Prevent ads from jumping

You might need to adjust some CSS to prevent ads from jumping on the first or any other following load.

Use the CSS code (in an adjusted form) from this link.


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.

Make it better

Increase your ad management skills without spending more time.
Join over 150,000 publishers and AdOpts increasing their ad revenue.