Archive for Mark McEachran

Page Performance and Ad Tech: Speed is still a feature on the open web

Maintaining a good user experience while delivering quality content, and paying for it

Page Performance - A cautionary tale

Page performance has been cited as a reason to install an ad-blocker. In fact, a recent straw poll suggests that 71% of ad-blocker users would whitelist a publisher website if the page performance didn’t suffer. Blocking ads, which can be half of the content of a web page, will almost certainly improve the page performance. Mozilla Firefox even has a “reader view” available for many pages that removes all the content except the main body copy. That feature goes as far beyond ad blocking as you can get.

The four things that slow down page performance are:

  • the number of requests the browser is making
  • the time it takes for a response
  • the payload associated with each request
  • the code executed on the page once the request is fulfilled

In many cases the executed code will make additional requests and the dance starts all over again. This process takes a toll on page performance and each browser responds a little differently to the tasks. The browser may appear sluggish or unresponsive while the page elements are loading, executing or rendering. It may present the loading icon in the tab, which itself can freeze. Next: Browser limits and performance tuning help

The Ice is Melting

Melting ice in a glass of whiskey

The cube floating in my tumbler was eroding at the base, like an antarctic berg. The bourbon was showing no mercy as it licked away at the floating block. As the material transitioned from solid to liquid, it began to change the flavor of my drink. Eventually my beverage became so watered down I could not manage another sip. My barrel aged whiskey was destroyed by the melting ice.

Some of you may deny that the ice melted in my drink. Perhaps you cling to the testimony of the 3% of scientists are are sitting in the pocket of the freezer industry. I will tell you, I have seen this with my own eyes, tasted the flagrant sourness of overdilution. It is the truth.

That’s a fun allegory, but I hope the message is clear. We’re in a pivotal period in human history. We have flexed our muscle against the Earth’s will. While I fully believe that Mother Nature can destroy us if she wanted to, I don’t think she’s going to bother. We are doing it to ourselves, and we’re taking her down with us.

It should occur to you, as it did to me, that we’re in charge now. We have the power to shape our home. We must now find the will to prevent ourselves from destroying it.


This post was inspired by Before the Flood, a film about our unprecedented impact on the climate.

Before the Flood

Floors In RTB: Are hard and soft reserve prices known to the DSP?

I assumed that before bidding, DSPs could not be sure whether an SSP applies floor price rules to an auction. Now, I saw some remarks in the academic literature implying that buyers know about the existence or even the exact quantity of floor prices.

In practice, do SSPs communicate their floors?

This question was asked on quora, below is my answer.

Floor Prices in an AuctionThe answer is: sometimes. Exchanges sometimes express floor or bid guidance in the bid request. This is not required for the market to operate; so many exchanges do not provide any guidance. Floors are almost always in play. In most cases they are dependent on a wide variety of variables including: the site, browser, device, day of week, time of day, audience data, user’s language, and geographic location of the user.

Auction Mechanics

Floor prices, from an academic standpoint, are there to protect the base value the publisher has placed on the inventory. Bids falling below the floor, or reserve, are usually rejected by the exchange. Losing bid information might be recorded to give the publisher insight on the value advertisers are placing on the inventory and accompanying traffic. Read more

The Header Bidding Conundrum: The problem it solves and problems it creates

Header BiddingHeader Bidding: Why can’t header bidding be done server side?
What’s the reason all header bidding implementations are client side, can’t the same be achieved server side? So instead of a waterfall do an auction by getting pre bids from all the demand partners? What would be the down side to that?

This question was asked on Quora, below is my answer.

Header bidding is designed to expose the clearing price of exchange and SSP auctions so that a publisher’s technology can make an informed decision about which ad to serve. These prices are pitted against each other as well as the publisher’s demand from their primary ad server, usually Doubleclick.

In a perfect world all of this would be done on the server side. The primary benefits would be reduced payload size and lower latency in the browser. It’s not likely to happen, however. It would require SSPs, exchanges and ad servers to figure out how to work with each other in a server-to-server relationship. These companies tend to be competitors; count that as a business reason that will prevent a server side solution. Read more

Audience Forecasting and Campaign Pacing

Audience Forecasting and Campaign Pacing“In online advertising, how can I predict/forecast the traffic (number of requests) for a day ?
For a given day, I would like to get the estimated number of eligible impressions a campaign will have, in order to allocate my budget and implement a traffic based pacing algorithm.”
This question was asked on Quora, below is my answer.

The estimated number of eligible impressions, or audience forecasting or “avails” as they say in the industry, can be derived in several ways. I will illustrate two of the methods.

The long, but easy method

The easiest way to estimate your avails would be to just take a whole day’s worth of data and determine how many of your target users are in there. The problem with this method is that it can take a whole day. If you have a day to spare, this is a good way to go.

The short, but difficult method

For this to work you’ll need the total traffic available for some previous day, or week. You’ll want that data broken down by hour or maybe 15 minute interval. With more traffic, your breakdown can be smaller. For the sake of this example let’s look at an hourly breakdown and a single day’s worth of data. Read more