Tip #9: Understand campaign types

You’ve got OpenX installed. Great! You’ve set up an advertiser, and now its time to create a campaign, so that you can add some banners and get them onto your website — but the problem is that you are not sure which campaign type your should be using. Luckily, The Guru is here to explain all…

The campaign types

The OpenX ad server has three different campaign types. With the release of OpenX 2.8, these three campaign types are now very obvious, as they are all explicitly named at the top of the screen for adding a new campaign:

(The campaign types above are listed in a slightly different order to that in OpenX — for a reason! More on that later.)

Different Campaign Types in OpenX 2.8

Campaign types in OpenX 2.8.

If you are running OpenX 2.4 or 2.6, while these three same campaign types existed, the names were slightly different, and seeing which campaign type you were using was less obvious, as this was not at the top of the screen for adding new campaigns, but rather down in the fourth section on the page, under the section called Priority in relation to other campaigns. In OpenX 2.4 and 2.6, the three campaign types were called:

  • Exclusive;
  • High; and
  • Low.
Campaign types in OpenX 2.4 and 2.6

Campaign types in OpenX 2.4 and 2.6.

For the this article, Contract (Exclusive), Contract and Remnant will be used as the campaign type names — just remember if you’re using a version of OpenX earlier than 2.8, your ad server will call these campaign types Exclusive, High and Low, respectively.

Campaign targets

Before discussing the three campaign types, however, a brief discussion about campaign targets is required.

There are three campaign target types in the OpenX ad server1:

  • Impression targets;
  • Click targets; and
  • Conversion targets.

Any of the three campaign types can optionally have any of these campaign targets set2 — this includes having more than one target set, if so desired.

The effect of having a campaign target set is that as soon as any one of the campaign targets has been reached, OpenX will stop the campaign from running. Here are some examples of how campaign targets affect campaigns:

  • “Campaign 1″ has no campaign targets set. It also has no end date set. As a result, this campaign will never be disabled by OpenX — it will continue to run for as long as it remains set up in this way in OpenX.
  • “Campaign 2″ also has no campaign targets set. However, it has an end date set. As a result, this campaign will run until the end date is reached, at which point it will be disabled by OpenX.
  • “Campaign 3″ has an impression target of 1,000,000 impressions set. There are no other targets set, and no end date set. As a result, the campaign will run until 1,000,000 impressions have been delivered, and then it will be disabled by OpenX.
  • Finally, “Campaign 4″ has an impression target of 5,000,000 impressions set, a click target of 10,000 clicks set, and no end date set. As a result, the campaign will run until either 5,000,000 impressions have been delivered, or until 10,000 clicks have been counted, whichever comes first. The campaign will then be disabled by OpenX.

(If at this point you are wondering what happens when a campaign has, for example, an impression target of 5,000,000 impressions set and an end date set, fear not — this will be discussed shortly in the section on Contract campaigns.)

Contract (Exclusive) campaigns

Contract (Exclusive) campaigns exist for a very specific purpose in the OpenX ad server — as you may have guessed from the name, the campaign type is there to exclusively deliver campaigns that are special because the advertiser wants exclusive rights to certain inventory3 on your website.

Some examples will hopefully make this clearer:

  • Your website might have certain “sections” — perhaps it’s an online clothing shop site, and you have sections for different types of clothing (jackets, shirts, shoes, hats, etc.) — and a shoe manufacturer wants to have exclusive rights to all of your inventory for the month of May in the “shoe” section4; or
  • An advertiser wants to have exclusive access to the first 5 impressions on your site, for every visit your users make to your site, no matter where on the site they are for those first 5 impressions5; or
  • An advertiser wants to purchase 5,000,000 impressions on your website that are shown exclusively to all visitors from New Zealand, their target market country. That is, any user that visits your site from New Zealand should only ever see this advertiser’s banner, until all 5,000,000 impressions are delivered6.

As you will have noticed, all of these examples have a common aspect — it’s not the number of impressions that are booked, it’s not how long the campaign will run for, and it’s not about where on the site the banners will be shown, or which users the banners will be shown to — rather, it’s all about the fact that when the campaign banners should be shown, then they should be shown exclusively — no other banner must ever have priority over the campaign’s banners.

This is why this campaign type has been discussed first (rather than in the order the campaign types are show in OpenX 2.8) — the OpenX ad server will always display banners from Contract (Exclusive) campaigns to your website users before any other campaign type (provided, of course, that campaign or banner limitations allow the banner to be shown).

Most small to medium website owners probably don’t have much use for the Contract (Exclusive) campaign type, because a website generally requires a relatively high profile before advertisers will want to purchase exclusive rights to inventory. However, don’t let that put you off — even smaller sites can consider negotiating special deals with advertising partners, and you can consider using the Contract (Exclusive) campaign type to deliver house banners7 for special promotions.

Contract (Exclusive) campaigns are delivered on the basis of relative campaign/banner weights. However, as the whole idea of Contract (Exclusive) campaign is to be exclusive, you should never have more than one Contract (Exclusive) campaign linked to a zone at any one time — unless you are separating multiple liked Contract (Exclusive) campaigns either in time (by having the campaigns run at different times), or by section/location via delivery limitations.

Contract campaigns

As with Contract (Exclusive) campaigns, Contract campaigns exist for a specific reason — in this case, to deliver campaigns that have certain time-sensitive campaign targets.

To understand the nature of time-sensitive campaign targets, it is easiest to think of Contract campaigns as having two different sub-types — Contract campaigns with campaign targets and an end date, and Contract campaigns with campaign targets and no end date; or no campaign targets.

Contract campaigns with campaign targets and an end date

If a Contract campaign has at least one campaign target set, and it also has an end date set, the it should be clear that there are two possible ways that this campaign could be disabled by OpenX — either when the campaign targets that are set are met, or when the end date is reached.

As a result, in this situation, the Contract campaign’s targets can be considered to be time-sensitive — not only do the campaign targets need to be met, they need to be met by the end date of the campaign, and ideally, not before the end date of the campaign either!

This is why Contract campaigns with campaign targets set and an end date set are a special type of campaign.

An OpenX 2.8 Contract campaign with a campaign target and end date set.

An OpenX 2.8 Contract campaign with a campaign target and end date set.

Contract campaigns with campaign targets and no end date; or no campaign targets

If a Contract campaign has at least one campaign target set, but no end date set, then it is different from the above example of a Contract campaign with campaign targets and an end date, as there is no end date by which the campaign targets need to be delivered by.

However, it is possible to create an artificial time-sensitivity for the campaign, by setting a number of impressions, clicks or conversions that need to be delivered every day, until the the campaign targets are met.

Similarly, a Contract campaign with no campaign targets set (with or without an end date set) obviously has no time-sensitivity around the campaign targets, as there are no campaign targets! But as before, it would still be possible to create an artificial time-sensitivity by setting a daily number of impressions, clicks or conversions that need to be delivered.

An OpenX 2.8 Contract campaign with a campaign target and a daily target set.

An OpenX 2.8 Contract campaign with a campaign target and a daily target set.

As you can see, Contract campaigns are all about the delivery of time-sensitive campaign targets, and there are two different ways of creating this time-sensitivity — either by setting normal campaign targets and a campaign end date, or by artificially specifying daily campaign targets.

As delivery of Contract campaigns is time-sensitive, delivery of Contract campaigns is performed on the basis of priorities calculated by the Maintenance Prioritisation Engine, to try to ensure that the campaign targets (either normal, or daily) are delivered correctly.

Remnant campaigns

The final type of campaign in the OpenX ad server is the Remnant campaign.

Remnant campaigns are the “catch all” type of campaign in OpenX — if a campaign does not have a requirement of having exclusive access to inventory, and does not have any time-sensitive campaign targets, then it should be set up as a Remnant campaign.

Note that although the word “remnant” suggests that Remnant campaigns are only there to take up “unsold” inventory, that’s not the case. There is no reason why an advertiser can’t ask to purchase, say, 1,000,000  impressions on your site, but not care about when those impressions are delivered by — so long as they are eventually delivered, that’s all that matters. In this case, setting the campaign up as a Remnant campaign makes perfect sense.

Having said that, campaigns that exist to show a low-paying ad network banner, or a house banner, whenever there is any unsold inventory would also normally also be set up as Remnant campaigns.

As with Contract (Exclusive) campaigns, Remnant campaigns are delivered on the basis of relative campaign/banner weights.

Conclusion

There are three campaign types in OpenX. Contract (Exclusive) campaigns exist to deliver campaigns where an advertiser requires exclusive access to certain inventory. Contract campaigns exist to deliver campaigns that have time-sensitive campaign targets of one sort or another. Remnant campaign exist for everything else.

Now you know what campaign type to use. Happy OpenX-ing!

  1. There are actually six types of campaign targets in OpenX — there are also daily versions of the impression, click and conversion targets. These are discussed in the section on Contract campaigns. []
  2. Can’t find all three campaign target options in OpenX 2.8? Change the campaign’s pricing model. []
  3. In the world of on-line advertising, inventory is a website’s number of impressions that are available in a given time period. For example, if your website has 10,000 page views per month, and you have a 468×60 banner zone and a 120×600 skyscraper on every page, then your website would have an inventory of 10,000 468×60 banner impressions and 10,000 120×60 skyscraper impressions per month. []
  4. In this case, you might use source parameter targeting to ensure that the campaign’s banners are shown in the “shoe” section of your site. []
  5. Capping the Contract (Exclusive) campaign to the first five impressions per session, and linking the campaign to all zones will get the job done for this example. []
  6. Use geo-targeting on the Contract (Exclusive) campaign’s banners to ensure that the impressions are exclusively shown to users in the target country, and link the campaign to all zones. []
  7. In the advertising business, house banners are banners that advertise yourself, on your own website — for example, you may have a house banner to promote a special deal you have that gives a discount for first time buyers on your shopping site. []

10 comments to Tip #9: Understand campaign types

  • Hi,

    based on your explanation here and my understanding from OpenX user guide, it seems that I do understand the difference between Contract, Contract (Exlusive) and Remnant.

    However, it just don’t work on my site!

    I’ve tried setting all my campaigns to be Remnant and hope that they will just cycle the banners among itself, however, nothing shows up!

    The only way for me to cycle through the banners is when I select Contract (Exclusive) for all the campaigns and it is working beautifully now at my website http://shopbug.sg/blog .

    What did I do wrong?

    Also, for the invocation code for the zones, I use the zones’ invocation code from the Website invocation instead of the individual Zone’s invocation code. The reason is the website’s invocation code for the zones are shorter and neater as compared to the zone’s invocation code.
    Is it because of this and that’s why my Remnant campaign does not work?

    Appreciate your help.

    • Hi there!

      The invocation tag that comes from the website level is the Single Page Call type. You do need to know a few things about this type to use it correctly; however, if you have banners showing up when using the Contract (Exclusive) type, then you’re using the tag at least sufficiently for delivery to be working, and the fact that Remnant campaign banners do not show up will have nothing to do with the tag type…

  • Sorry, I forget to add that I’ve turned on eCPM also but even when I use a higher CPM for some campaign, such as maybe 0.2 while the rest is using CPM of 0.10, these Remnant campaigns still do not show up.

    Thanks again.

    • … and everything to do with using the eCPM option. To be perfectly honest with you, I have never used this option. The feature was introduced in OpenX 2.8.0, even though it was not included in in the OpenX 2.7-beta testing cycle. Quite why OpenX decided to include a new feature in a “stable” release of OpenX, when it had not been a part of the beta testing cycle, I do not know. All I can say is that the feature should probably not be considered stable, and at this point in time, it is not a feature I have recommended any of my clients to use. If you have issues with it, all I can suggest is that you ask the OpenX staff on the forum.

  • What a fantastic blog and post! I’m so glad I happened to search and find it so soon after you posted it.

    Okay, a question: I’ve been running PhpAdsNew / OpenX for about 5 years. I’ve ALWAYS had my campaigns setup as remnant, but I want to rethink this strategy and would love your thoughts:

    Scenario: I have 5 advertisers that each pay for 10,000 impressions a month. My site delivers 80,000 impressions a month, leaving 30k impressions available for “remnant” campaigns.

    I’d like to have OpenX deliver the daily 333 impressions per advertiser throughout the day (not just at the beginning of the day) and the rest of the inventory to go to other campaigns (again, throughout the day).

    My question: Is it possible to set this up? I don’t see how OpenX could effectively gauge how much volume I’ll get in a day in order to know where to allocate my impressions so it doesn’t over or under deliver on my “contract” campaigns.

  • Hi there!

    Yes, it is possible to set this up. You would simply create a Contract campaign for each of your 5 advertisers, configured with the month’s start date and end date, and with a lifetime booking of 10,000 impressions. OpenX should then calculate how many impressions are available for the campaign (based on the traffic patterns of the zone(s) the campaigns are linked to), and deliver the impressions accordingly.

    This does NOT mean that OpenX will deliver 333 impressions per advertiser per day, however. Do you have lower traffic on the weekend? That’s normal for most advertisers, and OpenX should notice this, and take it into account — so you would get more impressions delivered on weekdays than on weekends.

    Similarly, you are likely to get more impressions delivered during peak hours than during hours when you have lower traffic.

    Of course, prediction of zone inventory is tough. OpenX generally does a pretty good job at this, but it will never be perfectly even delivery. If OpenX does over- or under-deliver, though, it should notice this, and self-correct.

    However, having said that, at the time of commenting, there are a LOT of comments in the OpenX Forums about the current version of OpenX (2.8.1) NOT doing this, and users are seeing huge levels of over-delivery at the start of a Contract campaign, and the campaigns then finish early.

    This is not to say every user has this issue — I would try it out on a test campaign, and see how you fair. If it works, great. If not, no loss, as it was a test campaign.

    Hopefully, OpenX 2.8.2 (which has been under development for a very long time now!) will address these issues with Contract campaigns….

  • Fantastic reply! I’ll give the test a go. One follow up item: I guarantee the monthly number of impressions, but the campaign might be 3 – 12 months long. Instead of having to go into each campaign monthly to extend the dates, can I simply set a daily impression target?

    Best case would be if I could set a daily target and the impressions were spread throughout the day with the remnant campaigns filling in the projected overage for the day.

  • There are two things you could do — either set up the campaign to run for 3 to 12 months, and give the total number of impressions for the entire run, and let OpenX spread the impressions booked over all of the months, or, as you say, just set up the campaign with a daily target, and let OpenX do it that way.

    There are pros and cons with each approach. If you go the long campaign option, there more of a chance OpenX will get delivery “wrong”, and the delivery will not be very even over all of the months the campaign is running. However, if you go the daily target option, then weekends may be problematic, for example, if you have much lower traffic on Saturday and Sunday…

Leave a Reply

 

 

 

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>