Conversion Value Not Tracking for Purchase Conversions in Microsoft Ads

Quentin DEJAEGER 0 Reputation points
2025-09-02T18:23:17.65+00:00

Hello,

I’m experiencing an issue with purchase conversion tracking in Microsoft Ads:

Purchase conversions are being recorded correctly.

However, the conversion value is not being passed into the platform.

The UET tag is implemented, and the events are firing as expected.

Has anyone encountered this issue before? Do I need to configure something specific in the tag setup or in the feed to ensure the value is tracked properly?

Thank you in advance for your support.

Microsoft Advertising | Manage ads | Bid strategies
0 comments No comments
{count} votes

1 answer

Sort by: Most helpful
  1. MS Advertising - John Mark 230 Reputation points Microsoft External Staff Moderator
    2025-09-02T20:14:33.3566667+00:00

    Hi Quentin,

    Thank you for reaching out to the Microsoft Advertising Learn Q&A Platform! My name is John, and I will be assisting you with this query.

    You mentioned that the conversion value is not being passed into the platform even though your purchase conversion is being recorded correctly.

    If you're looking into tracking the revenue value or the purchase amount of the product(s) that was purchased, kindly check the following information below How to report variable revenue with UET

    1. Create a UET Tag o Go to your Microsoft Advertising account. o Navigate to Tools > UET tags and create a new tag. o Add the JavaScript tracking code to every page of your website.
    2. Set Up a Conversion Goal o Choose either a Destination URL or Event goal. o When defining the goal, select “The revenue of this conversion action may vary”. o You can also set a default revenue and currency in case no value is passed during conversion.
    3. Modify the UET Tag to Pass Revenue o Update your website code to include revenue and currency parameters in the UET tag. o This allows Microsoft Advertising to receive the actual revenue value when a conversion occurs. o You’ll need to trigger an additional HTTP request that includes these values—similar to the bat.bing.com request used for page visits.
    4. Validate Your Setup o Use the UET Tag Helper browser extension to confirm that revenue values are being passed correctly.

    Let's look at how to pass variable revenue for a destination URL type goal in PHP pages. In the following example, it's reading a dynamic value for the variable revenue from a JavaScript function. You can just as easily send a static value or read from a JavaScript variable or HTML element.

    1.Open the code file for your conversion confirmation page (the page the customer sees after they complete the action you want to track). If multiple pages are generated from the same file, find the section in the file that generates your conversion page.

    2.First, you'll need to add one of the following variable revenue JavaScripts:

    You must pass the currency value in capital letters. For example, 'currency': 'USD', not 'currency': 'usd'.

    a. For destination URL conversion goals: Add the following JavaScript below the UET tag that you have already added to your webpage's code:

    <head>Your page title

    </head>

    <body>

    // Let's say this is where you pasted the UET tag.

    <script>Your UET tag is here.</script>

    // Here is where to paste the following JavaScript:

    <script>

    window.uetq = window.uetq || [];

    window.uetq.push('event', '', {'revenue_value': Replace_with_Variable_Revenue_Function(), 'currency': 'REPLACE_WITH_CURRENCY_CODE'});

    </script>

    ...

    </body>

    Even though this isn't a custom event conversion goal (see next section), you still must include the command 'event'. For a destination URL goal, just leave the event action empty (as in, 'event', '').

    b. For custom event conversion goals: Add the following JavaScript below the UET tag that you have already added to your webpage's code:

    <head>Your page title

    </head>

    <body>

    // Let's say this is where you pasted the UET tag.

    <script>Your UET tag is here.</script>

    // Here is where to paste the following JavaScript:

    <script>

    window.uetq = window.uetq || [];

    window.uetq.push('event', 'Event action', {'event_category': 'Replace_with_Event_Category', 'event_label': 'Replace_with_Event_Label', 'event_value': 'Replace_with_Event_Value', 'revenue_value': Replace_with_Variable_Revenue_Function(), 'currency': 'REPLACE_WITH_CURRENCY_CODE'});

    </script>

    ...

    </body>

    For instructions on updating custom event parameters, take a look at How to track custom events with UET.

    If you have already added JavaScript for custom events to your website's code, for this step, you'll just need to insert the variable revenue parameters:

    'revenue_value':Replace_with_Variable_Revenue_Function(), 'currency': 'REPLACE_WITH_CURRENCY_CODE'

    3.Next, make sure your webpage has a function that defines variable revenue:

    <head>Your page title

    </head>

    <body>

    <script>Your UET tag is here.</script>

    <script>

    window.uetq = window.uetq || [];

    window.uetq.push('event', '', {'revenue_value': Replace_with_Variable_Revenue_Function(), 'currency': 'REPLACE_WITH_CURRENCY_CODE'});

    </script>

    ...

    // Here is an example function, named "GetRevenueValue()", that defines variable revenue:

    <script>

    function GetRevenueValue()

    { return 6; }

    </script>

    ...

    </body>

    When your revenue function passes values, it must use a period for decimals (as in 12.34), not a comma (as in 12,34).

    4.In the variable revenue JavaScript that you added in step 2, update the value for 'revenue_value' to match the name of the variable revenue function you added in step 3 (in this example, we changed "Replace_with_Variable_Revenue_Function()" to "GetRevenueValue()"):

    <head>Your page title

    </head>

    <body>

    <script>Your UET tag is here.</script>

    <script>

    window.uetq = window.uetq || [];

    window.uetq.push('event', '', {'revenue_value': GetRevenueValue(), 'currency': 'REPLACE_WITH_CURRENCY_CODE'});

    </script>

    ...

    <script>

    function GetRevenueValue()

    { return 6; }

    </script>

    ...

    </body>

    5.In the same line, you have the option of specifying the currency you want the revenue value reported in (in this example, we changed "REPLACE_WITH_CURRENCY_CODE" to "GBP", for British pounds):

    You must pass the currency value in capital letters. For example, 'currency': 'USD', not 'currency': 'usd'.

    <head>Your page title

    </head>

    <body>

    <script>Your UET tag is here.</script>

    <script>

    window.uetq = window.uetq || [];

    window.uetq.push('event', '', {'revenue_value': GetRevenueValue(), 'currency': 'GBP'});

    </script>

    ...

    <script>

    function GetRevenueValue()

    { return 6; }

    </script>

    ...

    </body>

    To see the complete list of currency codes, see Conversion Goal Revenue Currencies. You can remove the 'currency' parameter if no currency is set in the conversion goal.

    6.Save and upload the page to your web server.

    Note: there are several ways that you can report a revenue value. You can also use other tag management platforms like Google Tag Manager or Shopify to setup the variable revenue.

    Kindly coordinate with your website developer if you aren't familiar with the script/codes that was included above.

    Our support teams are happy to discuss your account in more detail via phone, chat or email to provide review assistance, please see our support page to reach out! 

    I hope this information helps clarify things. If you have any additional questions, please do not hesitate to reach out to our support. I have also sent you a PM in case you have any questions.

    Kind regards,

    John | Microsoft Advertising Support Specialist | 1-800-518-5689

    0 comments No comments

Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.