Using Profit On Ad Spend via Server-Side Tagging

Tobias Pennings
October 14, 2024

What is Profit on Ad Spend (POAS)?

Profit On Ad Spend, better known as the acronym POAS, provides insight into the profit you make per euro spent on ads compared to the total profit you grab per product. Whereas traditional calculations such as ROAS (Return on Ad Spend) look primarily at the revenue an ad generates, POAS focuses on the actual profit margin. It not only shows how much revenue a campaign generates, but also takes into account product costs and other variable expenses, giving you a clearer picture of the true value of your ads.

After all, making 1 million in sales with your campaigns sounds nice. But if your advertising costs come to 999,999, your campaigns will have only generated 1 euro. In that case, it is therefore wiser to report how much value a campaign generates in relation to the purchase price of the products sold.

How does POAS differ from ROAS and revenue?

The main difference between POAS, ROAS and revenue is the metric it focusses on. Turnover looks at the total value of the entire order, ROAS measures how much revenue is generated per euro of ad costs, while POAS looks further and focuses on profit based on the purchase price of products sold. Suppose a campaign generates €10,000 in sales at €2,000 in ad costs, then total sales of €10,000 and ROAS of 5x may seem good. But if the products have a low profit margin, the actual profit may be much lower than expected. This is where POAS comes in: it provides insight into how much is really earned, after deducting costs such as production costs, shipping and other overhead.

Why would you want to use POAS in your campaigns?

Using POAS helps to optimize advertising campaigns, because it does not only focus on more sales, but on maximizing profits. By using POAS, you can better assess which campaigns actually contribute to the net result of your webshop. This is especially important if you sell products with different margins. It is possible for a campaign with a high ROAS to hardly generate any profit because the products being promoted have a low margin. POAS ensures that your marketing algorithms are fully focused on promoting products and campaigns that are truly profitable, and not just focused on achieving high turnovers and sales numbers.

A high number of orders and sales does not always equal a higher profit margin

What type of web shops is this interesting for?

POAS is particularly interesting for web shops that sell products with different profit margins. Think of retailers who offer both own-brand products and purchased goods, where margins can vary greatly. For these webshops, it is essential to not only look at turnover, but focus more on what products are generating a proft.

Accurate tracking is only possible when using our DataLayer and webhooks. This solution is compatible with platforms like Shopify, Magento, WooCommerce, and custom sites that have integrated AdPage’s DataLayer and webhooks through our Server-Side Tagging technology.

How does POAS work?

To get POAS working in your Google Analytics, Google Ads or Meta Ads you will need to attach an extra parameter to your purchase event in addition to the 'value'. This extra parameter will be filled with the POAS value of a created order.

To populate that extra parameter with the right data, you need to retrieve the price of the product and the cost of the product for each purchase event. The best way to do this is to work with an XML feed. This is a document that is constantly updated based on the adjustments made in a webshop's product feed. In this XML feed, a cost price is available for each product with which the calculation on the server container can be made.

How do you set up POAS?

To set up POAS, follow these steps:

1. Retrieving the XML feed.

Generate an XML feed with product information. This can be done through tools such as Channable, a WooCommerce plugin, or another suitable tool for your shop. Make sure the feed contains all necessary data, such as the cost price of products.

2. Linking the DataLayer with the XML feed.

Go to the webshop where you want to set up POAS and view the DataLayer, within Google Chrome do this with a DataLayer Checker extension or the Analytics Debugger extension. Look for the item_id in the DataLayer and make sure it has the same name as in the XML feed. This is important because this link ensures that the cost of the products is correctly merged into the webhook.

item_id in the AdPage DataLayer

In the XML feed, check that the cost price of each product (item_id) is added correctly. It is possible to use a custom label for the cost price so that it is not obvious to external platforms such as Google that you are forwarding the cost price. An example is to use a custom label such as g:custom_label_2.

custom_label as cost

3. Data received in Webhook event or in GA4 Purchase event.

Open the AdPage Tagging dashboard (via trytagging.com) and go to the 'Optimization' tab and then to 'Purchase Price'. Add in the first field the URL of the XML feed, in the second field the custom label for the cost price (e.g. g:custom_label_2), and in the third field the item_id. These fields should match the settings in your DataLayer and webhook.

purchase price settings on the trytagging environment

Then go to your Google Tag Manager Server container and turn on preview mode. In the sGTM container, use the live preview mode that you can activate from trytagging.com, which are these steps. Place a test order to verify that the purchase price is forwarded to the server container. Search the logs for trytagging_purchase and verify that the variable purchase_price is populated correctly.

find purchase_price in the sGTM preview

Once this is confirmed, create an event data variable for the purchase_price.

Add purchase_price as an Event Data variable

Next, create a new variable to calculate the POAS. Set this variable as a calculation function where the order value (eCommerce value) is reduced by the purchase_price. This gives the profit per order.

subtract the purchase_price from the ecommerce value

4. Integration into your tracking tools

Add the created POAS variables to your Google Analytics purchase event, your Google Ads purchase tracking (only possible via the AdPage Google Ads Tag), and the Meta Conversion API purchase tag. This will allow you to immediately see which campaigns are contributing to your profitability.

For more comprehensive steps to set up POAS, you can follow our help desk article on setting up POAS.

Conclusion

Using POAS in ad campaigns can add tremendous value for web shops looking to optimize their profitability. Unlike ROAS and turnover, POAS provides clear insight into the actual profit achieved per euro spent on ads. This makes it an indispensable tool for web shops working with different product margins and advertising channels. Want to learn more about how to use POAS and other data-driven strategies to improve your campaigns? Then sign up for our webinar and find out how to take your marketing to the next level with the right tools and accurate tracking.