Advertising

This guide is for new advertisers who would like to start a user acquisition campaign on Heyzap's mobile ad network. If you are looking to show ads on your app, please refer to the publisher guide.

1. Create an account

Create a new Heyzap account by going to the signup page.

2. Claim your app

After signing up, claim your app(s) by entering your app's name, app store page URL, or app package to the Claim an App page.

enter image description here

How do I find my Android package name?

If your app is not found, you should add it manually on that page.

3. Click on the app you want to promote

Go to the Ad Campaigns page on the Heyzap developer dashboard. Click your app.

enter image description here

4. Create a new campaign

enter image description here

Set the bid price, targeting (geo, device, OS), and spend limits for your campaign.

enter image description here

Once your targeting is set click save to return to the app page. Any targeting options with nothing selected default to target all.

Daily limits are in $USD -- these limits can be set on a game level and on an app level. When either limit is reached the campaign will turn off for the day.

For details on Campaign ID and Blacklist publishers see the advanced tracking section at the bottom of this guide.

5. Manage Campaigns

The manage campaigns page is a extraordinarily fast and efficient way to create and update new campaigns.

All targeting options can be controlled here. To hide/show specific options use the black selector box in the bottom right corner.

enter image description here

The campaign options that you can set up are: Campaign Name, CPI Price, Campaign Enabled/Disabled, Country Targeting, OS Targeting, Device Targeting, Connectivity Targeting, Automatic Scheduling, Daily Limit, and Campaign ID.

OS targeting is set numerically, while country targeting uses 2-letter country codes or full names.

The plus-sign button below a specific campaign name duplicates a single campaign. Select multiple campaigns and click the grey duplicate button to duplicate multiple campaigns at once.

6. Manage Creatives

In order to start an advertising campaign you must have at least 1 creative attached to that campaign.

*If you are creating a video-only campaign, you will still have to upload and attach a landscape creative to the campaign in addition to the video creative(s).

New creatives can be uploaded here, then attached any campaign.

enter image description here

Additional details about creatives dimensions and requirements can be found here.

The creative name can be edited on this page as well. The creative name will be passed in the {CREATIVE_NAME} macro in your click url (optional).

7. Install Tracking

Heyzap supports a wide variety of tracking options, both for third party tracking networks and custom tracking solutions.

Third-Party Attribution

Heyzap supports all major mobile attribution analytics providers, such as Adjust, Hasoffers, Kochava, AppsFlyer, and more.

If you are using one of these providers they should automatically generate your click URL(tracking link) and you can skip the implementing your click URL to the Heyzap dash.

Custom click URLs

If you are not using a third party tracking solution, your link most likely starts out in a similar form to the following URL:

http://example.domain.com/?a=12345&b=12345

Additional parameters then need to be added to the click URL - these dynamically pass parameter information when the user clicks of the ad.

The impression id is the only required parameter. It must always be included in the click URL and passed back to Heyzap in the postback (callback) URL.

Commonly used macros:

{IMPRESSION_ID} Mandatory on all campaigns, required in postback.

{PUBLISHER_ID} The Publisher ID.

{ANDROID_ADVERTISER_ID} The Google Advertiser ID for Android.

{ANDROID_PACKAGE} The Android package name.

{IDFA} The Advertising Identifier for iOS devices.

{APP_STORE_ID} The Apple App Store ID for iOS apps.

After adding the impression id, device id, and package name/app id , your new URL should look something like the following:

Android:

http://example.domain.com/?a=12345&b=12345&impression_id={IMPRESSION_ID}&android_package={ANDROID_PACKAGE}&android_ad_id={ANDROID_ADVERTISER_ID}

iOS:

http://example.domain.com/?a=12345&b=12345&impression_id={IMPRESSION_ID}&app_store_id={APP_STORE_ID}&idfa={IDFA}

The bracketed Heyzap macros must be used exactly as shown. The lower case parameters can be changed to fit the nomenclature of your database.

Important: Heyzap uses only one click URL per app. If you have multiple click tracking links for a single app, we use a parameter called {CAMPAIGN_ID} to collapse the URL into one link. For more info see the Advanced Tracking section below.

Implement your tracking link on the Heyzap Dashboard

Go to your install tracking page to enter in your Heyzap click URL.

enter image description here

The install tracking page is also where you’ll retrieve your postback template. Postbacks must be sent in this format for installs to successfully be recorded.

Setting the Heyzap postback in your system:

Android template:

http://www.heyzap.com/cpi_callback/new_install?game_identifier={android_package}&secret_key=<your-secret-key>&impression_identifier={impression_id}

iOS template:

http://www.heyzap.com/cpi_callback/new_install?game_identifier={app_store_id}&secret_key=<your-secret-key>&impression_identifier={impression_id}

Your secret key is visible on your Heyzap developer dashboard postback template. Your secret key is developer unique – you’ll use the same secret key for all of your apps/campaigns. Its recommended that your hardcode it when setting your postback.

8. Turn on campaign

enter image description here

You may see a "pending" message while your campaign is under review by Heyzap. It will activate once Heyzap has approved it.

Advanced Tracking

Campaign ID

By setting the Campaign ID on your campaign, you can start tracking your installs in a more sophisticated way. The campaign ID will automatically be filled in when you use the {CAMPAIGN_ID} macro.

image alt text

This flexibility lets you use Heyzap’s {CAMPAIGN_ID} parameter to collapse just about any number of tracking links into one. Any parameter that differs between campaigns should be replaced with {CAMPAIGN_ID}.

Multiple click urls with different country codes

http://example.domain.com/?a=1234&country=us&impression_id={IMPRESSION_ID}

http://example.domain.com/?a=1234&country=au&impression_id={IMPRESSION_ID}

http://example.domain.com/?a=1234&country=ca&impression_id={IMPRESSION_ID}

http://example.domain.com/?a=1234&country=gb&impression_id={IMPRESSION_ID}

collapse and become:

http://example.domain.com/?a=1234&country={CAMPAIGN_ID}&impression_id={IMPRESSION_ID}

enter image description here

Campaign ID's are set from the create campaign page (step 4) or the manage campaigns page (step 5).

Other parameters can be substituted as well

http://example.domain.com/?a=1234&offerid=74&impression_id={IMPRESSION_ID}

http://example.domain.com/?a=1234&offerid=75&impression_id={IMPRESSION_ID}

http://example.domain.com/?a=1234&offerid=76&impression_id={IMPRESSION_ID}

becomes…

http://example.domain.com/?a=1234&offerid={CAMPAIGN_ID}&impression_id={IMPRESSION_ID}

Creative Name

To receive the creative that the user clicked on you can pass the {CREATIVE_NAME} macro in the click URL.

Once this is added to the click URL the name's of creatives can be updated on the "Manage Creatives" page.

enter image description here

This is a useful tool for analyzing the conversion of various creatives.

Publisher Blacklisting

You can add the {PUBLISHER_ID} macro in the click URL to receive an obfuscated id for the publisher app for that click.

Once you've analyzed the best and worst performing publishers for your campaign - then black/whitelist these publishers from the edit campaign page (step 4) or the manage campaigns page (step 5).

enter image description here

Post-Install Event Tracking

We have an endpoint to register post-install events. Here an example url:

http://www.heyzap.com/in_game_api/ads/register_event?impression_id={IMPRESSION_ID}&event_type={EVENT_TYPE}&revenue_usd={REVENUE_USD}

The parameters:

{IMPRESSION_ID} -- Required. Our impression identifier from the impression that led to the install.

{EVENT_TYPE} -- Required. A string like "revenue" or "tutorial_complete" that identifies the event.

{REVENUE_USD} -- Optional. A number like 9.99 to represent the revenue associated with the event.


For any further questions, please refer to our FAQ or contact us.