Instream Monetization

You can now manage instream video monetization directly from the platform. This guide explains how to create and configure your instream adunits, and map your bidders.

βœ… What is Instream Monetization?

Instream monetization lets you serve video ads through a programmatic workflow based on Prebid and GAM. The entire setup of adunit is integrated into the platform β€” no manual coding required.

You only need to call a dedicated function to trigger an auction before your initialize your video player.

It works with any video player and supports both server-side and client-side bidders.

πŸ”“ Activation

To access instream, your account must have the Instream feature enabled.

If you don’t see the options described below, please contact your CS or Country manager.

🧱 1. Create an Instream Adunit

image

Go to Ad units > add Adunit

Set Identification and devices section.

Choose the type: Instream

By default, the adunit includes:

  • Size: 640Γ—480
  • Duration: min 1 sec, max 30 sec

image (1)

You can then configure the video-specific settings:

You can expand the Advanced settings section to configure your video playback behavior:

image (2)

Option Description
Start playing when Choose when the ad should start (e.g. page load with sound off)
Position on screen Define where the player appears (optional)
Allow skippable ads Enable or disable skip functionality
Placement (plcmnt) Choose between Instream or Accompanying content
Video bitrate settings Set a min and max bitrate (e.g. 750–6000 kbps)
Protocols allowed Select which video standards are accepted (VAST 2/3/4, VPAID, SIMID)

 


πŸ” 2. Add Bidders

Once the adunit is created, go to the Mapping section to add bidders.

  • You can use client-side or server-side bidders.
  • For each bidder, enter the required bids.params values (like placement ID, zone ID…).

βš™οΈ 3. Deploy in a Stack

To activate your adunit:

  • Make sure it is included in a live stack
  • Ensure the stack is deployed

⚠ If the adunit is not linked to a deployed stack, it won’t be initialized on page load.


πŸ’» 4. Trigger the Auction with kleanads.monetize()

On the page, you must call the kleanads.monetize() function to launch the auction and get the targeting values used to call GAM.

  • monetize() returns the targeting object
  • You must pass this info to your player or GAM via macros (cust_params)
  • The ad is then played using the wrapped VAST

More details - Pubstack generic Instream integration


πŸ“Š 5. Analytics

Basic metrics are available in your platform dashboards:

  • Impressions
  • Revenue
  • CPM

These are tracked via events injected into the VAST.

More video-specific KPIs (quartiles, errors, playback events) will be added in a future update.


πŸ§ͺ 6. Troubleshooting

If your instream ad is not displaying or not monetizing correctly, here are the most common issues to check:

Issue What to check
❌ Ad is not showing Ensure the monetize() function is called before the player is initialized.
❌ No bid is returned Make sure the adunit is correctly mapped to at least one bidder.
❌ GAM call is missing Verify that the targeting object returned by monetize() is passed to GAM (via cust_params or macro).
❌ Adunit not monetized Confirm the adunit is part of a live and deployed stack.
❌ Instream option not visible in UI Check that the Instream feature flag is enabled for your account.

 

ℹ️ If everything looks correct and the issue persists, contact your TAM or open a support request through the platform.