Child pages
  • Advertisers Panel: How to use ROI Optimizer (Feature)
Skip to end of metadata
Go to start of metadata


To use this tool it is mandatory to set it up with your Account Manager for supervising how the macro is implemented.

ROI Optimizer is a tool for getting a minimum desired ROI (Return on Investment) in your campaign. 

What is ROI in this case? It is the percentage of revenue that an advertiser gets on top of the spend on Taggify. If you are an advertiser with a campaign whose spend on Taggify was $120 and who had a revenue of $180, your ROI for that campaign would be 50%. If another campaign has a spend on Taggify of $250 and generates a revenue of $500, then the ROI for that one would be 100%.

First Step for setting up

In order to use the tool and for being able to calculate your campaign's ROI you need to implement the {roi:VALUE_ROI} macro in your ad. For doing so you must get in touch with us so we guide you through the process, but at a very high-level view, the steps would be:

Inform to us what you consider a success for an impression, and assign a value for that success. Typically a success is any impression which results in the action by which you charge to your client, and the value is the amount you charge your client for that action. Some examples would be:

If you're charging your client on CPM basis, each impression would be a success, and the value for it would be the CPM that you charge to your client divided by 1000 (the actual revenue per impression and not by thousand).

If you're charging your client on a CPC basis, impressions which result in a click would be a success, and the value would be the CPC that you charge to your client.

If you're arbitrating with in-banner video, each impression which results in an ad start event would be a success, and the value would be the amount you charge to your client per view. 

Set up the macro in your ad. The macro will include a value. It could be a fixed number or a snippet of code which we must execute to get the potential value for that bid.

Before each bid we will take that macro's value in the ad's url or tag, and replace it with a url.

That is a notification url that you must be able to call in case you get a success.

Observation: Bear in mind that the url changes with each impression, and it's not a fixed url. This is what allows us to determine exactly from where the action came.

Some examples of how the macro would be set

First example:

An Advertiser gets paid $2.00 CPM by his client and sets a $1.50 Max CPM in his campaign on Taggify's platform (giving him a $0.50 profit), but wants the platform to optimize and increase his margins, making him pay $1.00 so his ROI becomes 100%. In this case, as the CPM is $2.00, he is getting payed $0.002 for each impression, so he would set up the macro as {roi:0.002} in the ad, and then call the generated url each time an impression takes place. Be careful that the url to be called will vary for each impression (In the second step he would also have to set up the Minimum Desired ROI to be 100% but that will be covered later).

Second example:

An Advertiser has a tag rotating two different banners from different clients, banner A and banner B. He charges both clients on a CPM basis, but a different amount to each. Banner A pays to the Advertiser $1.00 CPM and banner B pays $1.50 CPM. So, the Advertiser gets paid for each impression. He gets $0.001 each time banner A is shown, and $0.0015 each time banner B is shown.

So, how should the Advertiser set the macro in this case? He should set up the {roi:ROI_VALUE} macro, but placing a small piece of code instead of ROI_VALUE which each time it is executed must return 0.001 if banner A will be shown, and 0.0015 if banner B will be shown, resulting in a tag with {roi:CODE} which ends up becoming {roi:0.001} or {roi:0.0015} among the macros to be replaced. Then advertiser would have to call the generated url each time an impression takes place.

Third example:

An Advertiser has a CPC campaign. He charges his client $0.70 for each click. In that case he would set up the macro as {roi:0.70}, but here the success would be a click, so he would have to call the url generated by Taggify only for those impressions which result in a click.  

Second Step

Once the macro in set, the second step is to activate the ROI Optimizer Feature in your campaign.

In the campaign section go to the ROI Optimizer section and turn it on by setting the slider to Yes.

The settings will bring some values by default, but we encourage you to play with them for optimizing. In order to access them you must click to display the Advanced Settings.

You will find a screen as the one shown below, with three parameters to set.

In order to understand how advanced settings affect your buying you should know the ROI Optimizer works with a white-list, a black-list and a test-list. Each element in the lists is a combination of SSP, Publisher, and Site.

  • White-list will contain all combinations whose ROI is above the value set in Minimum Desired ROI.
  • Black-list will contain all combinations whose ROI is below the value set in Minimum Desired ROI.
  • Test-list will contain a random list of sites that match your campaign's targeting.

Advanced settings parameters:

  • Minimum Desired ROI: Set the minimum ROI (in %) that you want your campaign to achieve.
  • Threshold: It's the minimum number of impressions that each combination of SSP, Publisher and Site must have before deciding whether to send it to the white-list or to the black-list. In some way this determines the number of impressions that you consider that are needed as learning stage.
  • Size of the test list: It's the number of combinations that the test list supports, the number of elements in the test list.

In the example above, the desired ROI is set to 20%, and black listing or white listing occurs after the 250 impressions. At all time, besides bidding on all those combinations white listed, bids are also placed in those combinations in the test list, which will have 350 elements.

Bear in mind that the number of impressions needed before taking actions on what is learned will be closely related to the Threshold times the Size of the test list. So the bigger the Threshold or the Test list, the more impressions it will take to learn, but the better the learning will be.

  • No labels