The Adzerk Developer Hub

Welcome to the Adzerk developer hub. You'll find comprehensive guides and documentation to help you start working with Adzerk as quickly as possible, as well as support if you get stuck. Let's jump right in!

Setting Up an Auction

Setting Up an Auction

Create a Priority First

You start by creating an Auction Priority in the UI or API with the Create Priority endpoint. The API SelectionAlgorithm value for an auction is 1.

If they are not important to you, you can set Floor Price and Remainder Percentage to 0.

Create a Flight - General Settings

  1. Create a Flight
  2. In General Settings, make sure that Priority is set to an Auction Priority
  3. Add in Rate and Price, which is used to calculate eCPM.

Rate = how you are pricing your inventory (clicks, conversions, impressions, etc)
Price = the price you're charge for the Rate ($0.50 CPC, $5.00 CPA, etc)
Rate x Price = Revenue
Revene / (Impressions/1000) = eCPM

If an advertiser wants to raise their bids to get more impressions, you can edit the Rate/Price at any point. When you make a change, the revenue is updated for future events, but previous revenue data will remain unchanged.

We recommend not using a Percentage Goal Type (goaltype=2) for auctions, but if none of the other options make sense, make sure to set impressions = 100, as the optimizer doesn't actually incorporate this into the Auction algorithm.

Create a Flight - eCPM Optimization Section

  1. If you are using CPC, CPA or Flat rate ads in an auction, there are multiple fields you'll need to fill out in the 'eCPM Optimization' section. The API equivalent parameters can be found in the Create Flight endpoint.
  2. Save

If you don't see the eCPM Optimization section on the left in the Flight settings, make sure the Priority is tied to an auction priority and you are using the CPA, CPC or Flat rate types.

Below are the fields in this section:

Name
Description
API Parameter (Create Flights)

Enable eCPM Calculation
(required)

Needs to be checked for eCPM calculation to work

IsECPMOptimized = true
(boolean)

Override eCPM
(required if eCPM Calculation is off)

Set a static eCPM value for the Flight that won't change. Perfect for making Flat-Rate campaigns eligible for auctions

If EffectiveECPMOverride has a value, this will be enabled

eCPM Override
(required if eCPM Calculation is off)

The static value of above

EffectiveECPMOverride
(float)

Optimization time frame
(required)

How many days back you want Adzerk to look at data to calculate eCPM. Must be between 1 and 90

ECPMOptimizePeriod
(integer)

eCPM Multiplier

Artificially inflate eCPM value of the flight. For instance, a value of 2 means if the ad is calculated to have an eCPM of $0.50, then it would jump up to $1.00 in the selection process

ECPMMultiplier
(integer)

Floor eCPM

Sets minimum eCPM that'll make the ad eligible to be selected

FloorECPM
(float)

Ceiling eCPM

Sets maximum eCPM that'll make the ad eligible to be selected

CeilingECPM
(float)

Adzerk recalculates the eCPM of each creative every 30 minutes. The calculation is taken over a period of history defined in Timeframe to Optimize For. Accepted values are 1 to 90 days. The smaller the number, the less statistically significant the data will be.

Create a Flight - Burn-in Mode

In the Flight's eCPM Optimization section, you'll also see the "Burn-in Mode Settings" section. This section is required for the flight to run. The API equivalent parameters can be found in the Create Flight endpoint.

Burn-In mode ensures that all ads get enough data to accurately calculate eCPM for future impressions. For instance, for a CPA campaign, the conversion could happen days later, so optimizing too quickly could lead to false negatives.

With Burn-In you set how many impressions to show before eCPM calculation kicks in, as well as the default eCPM to give it in the meantime.

Please note: the 'Run Optimization' button only works in Dashboard 1.0.

The "Burn-In Impressions" refers to impressions per creative not for the Flight as a whole.

Name
Description
API Parameter

Default eCPM
(required)

The static eCPM the ads will have for the length of the Burn-In Impressions

DefaultECPM
(float)

Burn-In Impressions
(required)

How many impressions the creative will see before eCPM calculation kicks in

ECPMBurnInImpressions
(integer)

Run Optimization

Ignore - the optimization automatically runs when it goes live

Not in API

You will know when a creative has switched to being optimized when the bar goes from “0 of x creatives are optimized” to “x of x creatives are optimized”.