Skip to content

Publisher Tag

We operate our units via a single publisher tag, unique to your domain. This tag orchestrates as many units as required, minimising resources while providing maximum flexibility.

Upon signing up to Content Ignite and creating your first publisher, you will be presented with your unique publisher tag. We advise you put this live as quickly as possible, along with your ads.txt requirements, to minimise delays in earnings. (no ads will be shown until onboarding is complete and you directly toggle on the tag in our UI).


Our tags only collect anonymised logs, which are only stored for 5 days to be processed and stored as daily summary reports.

We also read from CMPs to ensure GDPR compliance, defaulting to non-personalised ads if consent could/was not obtained. We, therefore, recommend that all publishers have a CMP in place, and ensure that Content Ignite is enabled as an advertising partner/vendor.

We also abide by CCPA and global privacy laws by offering opt-out functionality via, and additionally we read and honour GPC (Global Privacy Control) flags.

All of our high-impact ads have an info button for users to find out more information and opt-out of personalisation if they so wish, this can be found at

Full details about privacy can be found over on our Privacy Policy.

Tag & Unit Features

Our publisher tag has a number of features that can be used to your advantage. At the top level, before individual units are initiated, there are:

  • Custom tracking support
  • GDPR management (CMP support)
  • Custom events

Find out more about these publisher-level settings over on the Publisher Settings help page.

Other features are unit (config) specific, as follows:

In-Image In-Article Adhesion IAB Interstitial
Native & Display
Interval Refresh -
High Viewability [1] -
Brandable 𐄂 -
Auto-scaling ✔ (down only) ✔ (down only) 𐄂 -
In-View [2] 𐄂 -
Multi-target 𐄂 𐄂 -
Every-other targeting 𐄂 𐄂 𐄂 -
Video 𐄂 𐄂 𐄂 𐄂
Responsive re-locate 𐄂 𐄂 𐄂 -

[1] High Viewability is a progressive feature, supported by all modern browsers, older browsers will not refresh. This ensures we can guarantee industry-leading viewability while practising responsible advertising.

[2] InView is a progressive feature, supported by all modern browsers, older browsers will load the ad immediately as a fallback (IE).

High Viewability

Our high viewability feature ensures ads only load & refresh when we know the ad is in view of the user, ensuring maximum efficiency and inventory viewability.

By keeping track of a unit's visibility in the user's current viewport, taking into account minimised windows and background tabs, we can ensure we only process a unit when a user can see it in that moment.

This feature is enabled for all publishers. You may see a reduction in your overall impressions if coming from a less viewable solution. With high-quality traffic, this will reduce your revenue in the short term, but boost viewability and click-through rate, and therefore you should see an increase in CPMs after a short while.

Ad Refreshing

Google requires that you declare inventory that refreshes. If you are a SaaS customer, you must do this yourself by following Google's instructions: We operate off of "Time intervals" at a minimum of "30 seconds" between refreshes.

Tag Events

For custom development, there are several JavaScript events that are triggered throughout an ads life cycle. You can hook into these as needed to perform additional follow-up actions.

These are standard JavaScript events, available on the window the tag was deployed into.

For example, for a direct tag-on-page deployment, you can listen to an event with the following:

window.addEventListener('ci_al', function (e) {

Depending on the event, a detail object is returned with the following optional field:

  • detail.config_id - STRING - The id of the ad unit the event was triggered from
  • detail.msg - STRING - Further details of the event

The following events are available:

Event Name Description
Audience Push ci_ap Fired when an audience is matched and will be pushed into Ad Manager. Fired once per ad unit.
Ad Impression ci_ai Fired when an ad has had a viewable impression (50% of the ad’s pixels are visible in the browser window for a continuous 1 second.)
Page Impression ci_pi Fired once for each page once the tag has loaded
Ad Unit Load ci_aul Fired once an ad unit has been loaded. Once user consent has been received (if applicable) and an ad has been served. For in-view units, this will be once the in-view event was detected.
Ad Load ci_al Fired once an ad unit has been loaded. Once user consent has been received (if applicable) and an ad has been served. For in-view units, this will be once the in-view event was detected. For refresh units, this will fire once per refresh.
Ad Miss ci_am Fired if an ad unit did not receive an ad (either ad_load or ad_miss will be triggered for each ad and any subsequent refreshes)
Consent Denied ci_cd Fired when user consent is required but was not given
Tag Error ci_te Fired on an unexpected tag error

Custom tagging


It is against our terms of service, and Googles, to pass in Personal Information via this feature, things such as email addresses, age, gender etc are forbidden.

If you have page data you'd like to pass through to your instance of GAM (SaaS), or though to us, you can do so by setting the window.ipcTags.tagging object. If using your own GAM, values set here come through as key:value pairs under the ci_audience key.

For example, you might like to pass your post ids and categories through, which could look like this script block placed somewhere on page:

    window.ipcTags = {
        tagging: ['postId:4678', 'category:technology', 'category:headphones']

You would set the dynamic values from your web server as needed, for example, in a PHP template file if using WordPress. Our tags would then detect these values and pass them through.

Custom Key Values

While custom tagging allows you to quickly get important values into the ad server, custom key values allow for much more flexible setups, where both the key and value are controllable and the value can come from a number of different sources.

This is particularly useful when migrating ad servers to Content Ignite and continuing campaigns via the GAM Teams feature. We can mimic your existing setup to help ease the transition.

Custom key values are something that can be set up by your account manager and will be visible in your publisher settings page.