How It Works

With the contextual targeting add-on module the ad server will spider and full-text index all of the pages on your web site. This indexing happens in a fraction of a second and is done on-demand to avoid overloading your site. Indexed pages are cached for high performance, however, they are updated regularly (every 4 hours by default) to ensure that you’re always targeting fresh content. Once pages have been indexed, the keywords and phrases they contain can immediately be targeted and reported on.

What’s really awesome is that you have a great deal of flexibility when it comes to matching keywords and phrases.

  • Phrase Matching “Italian food” requires both words to appear together
  • Fuzzy Matching break without quotes will match breakfast
  • Exact Matching “break” with quotes will not match breakfast
  • Logical Matching +Italian and +food requires both words to be present, but not necessarily side by side
  • Relevancy Matching “Italian food”=2 requires the phrase to appear 2 or more times

Plus you can generate keyword frequency and performance reports that show you the words that occur most frequently on your site as well as the targeted keywords that seem to be performing the best for your campaigns.

Content Exclusion

Sometimes you may not want to index the entire content of your pages. How can you accomplish this? It’s actually very easy. You just wrap some special HTML comments or <DIV> tags around the content to instruct the spider on what it can and cannot index.

Why the choice? Using HTML comments is nice because they do not add extra markup to your pages. However, you may run into an issue that some content optimization tools will actually strip HTML comments out of pages to reduce their size. If you use such tools on your web site you will have to use <DIV> tags instead.

Example Page (HTML Comments)

This is an example of a post page on a forum web site. You only want to index the post title and content while excluding users signature content within the post. To accomplish this we actually use both inclusion and exclusion rules.

  <title>Example Forum Post Title</title>


<div id="posts">
  <div id="post_12345">
    <div class="post_title">Example Forum Post Title</div>
    <div class="post_content">
      This is an example post and this content would be indexed.
    <div class="signature">
      John Doe, Member Since 2007


Example Page (DIV Tags)

Maybe you don’t run a forum web site. You just want to exclude content from your site navigation and footer from being indexed. This is generally a good idea because your site navigation and footer are duplicated in all of your pages. This will make it impossible to effectively target keywords that might occur within their content! The best solution is to use an exclusion rule on them.

  <title>Example Home Page</title>


<div id="wrapper">
  <div class="begin_exclude_contextual"></div>
    <div id="navigation">
      ... top navigation links here ...
  <div class="end_exclude_contextual"></div>
  <div id="main_content">
    ... main content here ...
  <div class="begin_exclude_contextual"></div>
    <div id="footer">
      ... bottom footer links here ...
  <div class="end_exclude_contextual"></div>


Alternatively you could use an inclusion rule to include only the main content, however, that would prevent other content such as the page title from being indexed so make sure that’s really what you want.

Campaign Targeting

With the contextual add-on module activated, you can proceed to target campaign to the keywords and phrases within your page content.

Let’s assume that you want to target the keyword windbreaker or the phrase “blue coat” as an example.

  1. Edit your campaign and scroll down to and expand the Keyword Targeting panel.
  2. Locate the Targeted box, which is where you’ll enter keyword targets.
  3. Enter the value windbreaker in the box. Keep in mind that target will also match Windbreaker or WindBreaker because the ad server performs case insensitive matching. The ad server will also perform stemming matches if you don’t place your keyword inside of double quotes, so you should do that if you don’t want to match windbreakers which would be the plural keyword form.
  4. Enter the value “blue coat” in the box on the next line. Placing the phrase inside of double quotes ensures that the ad server will only match the two keywords when they appear together. It also prevents stemming matches, so other phrases such as blue coating won’t be a match.

Once your targets have been entered, you should now see that your campaign only appears when the targeted keyword or phrase is found in the page content.


To guarantee a higher level of contextual relevancy, you can require that targeted keywords or phrases occur a certain number of times. For example, we could have entered windbreaker=2 or “blue coat”=2 to require those keywords and phrases occur at least twice in the page. This ensures that only pages that mention the keyword or phrase two or more times will be considered a match.


The ad server does not support boolean queries, but it does support logical queries. To denote that a keyword or phrase is required it should be prefixed with a plus symbol. In the same fashion, to denote that a keyword or phrase should be excluded it should be prefixed with a minus symbol.

Keyword Reporting

Logging and reporting of keywords and phrases indexed by the contextual add-on module is not enabled by default.

Before enabling it, you should consider a few things:

  1. Do you really need to see reports on keywords and phrases? Perhaps another system you have already provides them?
  2. How many unique keywords and phrases do your pages contain? The ad server performs a lot of data grouping operations, such as per-campaign or per-zone reports by day. Having tens of thousands of unique keywords and phrases can lead to the size of your database tables growing out of control!

To enable the logging and reporting, go to Settings > Expert > Statistics and check all of the boxes for keywords. You can also control how many of the most frequently occurring keywords will be logged for each of your pages. This will help to keep the size of your database from growing out of control. By default the top 50 keywords per page are logged, but you can increase or decrease this Keyword Reporting Limit by going to the Settings > Basic > Contextual page.

Sites that are not published in English or Spanish may wish to translate our list of stop words. These are common words that we filter out of the keyword frequency reports. You can enter a CSV list of your custom stop words on the Settings > Basic > Contextual page. Keep in mind that these words are still included in the full-text index so you can still target phrases that contain them.