This website works best with JavaScript enabled. Learn how to enable JavaScript.

VWO Blog

A Blog Around Everything Conversion Optimization And Beyond

Never miss an update from VWO

A value for this field is required.

Revenue Tracking for A/B testing: exciting new feature in Visual Website Optimizer

We are extremely proud to release a brand new feature in Visual Website Optimizer: Revenue Tracking. This is a significant new development for our product because it means now in addition to tracking conversion rate (for multiple goals such as clicks on links, visit to pages, form submissions, engagement, etc.), you can track various revenue metrics as well (including revenue per visitor, total revenue, average order value, etc.)

Why you should track revenue in your split tests?

Revenue tracking for A/B split tests is utmost important when a monetary transaction is involved (either immediately or at the end of conversion funnel) and a conversion goal may have different monetary values. In some cases, higher conversion rate may translate into lower revenue, so basing all decisions merely on conversion rate can lead you to choosing a variation that actually decreases your revenue.

Let’s imagine that a software / eCommerce company is running a split test on pricing page where (in a variation) lowest plan of $2o has been removed. For example, imagine running a test such as below:

If you just measure conversion rate, you can expect to see following results (lower conversion rate for variation since we removed smallest plan in it):

  • Control (original page): 1.2%
  • Variation (smallest plan removed): 0.8%

However, if you start measuring revenue for this split test, you can see that variation actually resulted in higher revenue per visitor:

  • Control (original page): 28 cents per visitor revenue and $1400 total revenue
  • Variation (smallest plan removed): 36 cents per visitor revenue and $1800 total revenue

Naturally, you would want to choose a variation which results in higher per visitor revenue even if total number of conversions and conversion rate decreases. That’s why revenue tracking is so important for A/B, split and multivariate tests. It lets you measure impact of your test variations on a metric that drives your business: revenue.

How to do Revenue Tracking in Visual Website Optimizer

We believe revenue tracking shouldn’t be hard and that’s why we have tried to make it dead-simple to implement it in Visual Website Optimizer. All you need to do is this:

  • Create A/B, split or multivariate test
  • On goals page, select ‘Revenue Tracking’ as goal and enter the URL of the goal as the page where you will have access to visitor’s revenue number (it is typically available on thank you page after a successful payment / transaction)
  • On that thank you page, you simply need to copy-paste default VWO code and output a JavaScript variable _vis_opt_revenue with value equal to total revenue generated by the visitor. For example, if the visitor purchased 2 items (one $15 and the other $7), simply output $22 in the variable. If visitor only bought one item (say $10), output $10 only. That’s it. You don’t have to be concerned about which variation visitor saw or what individual items did the visitor bought. You just need to output total revenue and Visual Website Optimizer will take care of the rest.

For example, if the page where we redirect after successful plan purchase is then all we need to do is to copy-paste default VWO code there and also output following code:

    var _vis_opt_revenue=49;

Of course, the value of revenue (49 in this case) will change dynamically depending on actual revenue generated by the visitor. If you already have revenue tracking setup with your web analytics tool (such as Google Analytics), extending it for Visual Website Optimizer should be a piece of cake. If not, just ask your IT guy, he would know where and how to output revenue for tracking. All in all, implementing revenue tracking in Visual Website Optimizer is quite simple.

How do Revenue Tracking reports look like?

Once revenue tracking is in place, you will see extensive reports like following:

As you can see, reports show you various metrics for different variations:

  • Revenue per visitor (the basic metric that determines performance of variation)
  • Total revenue
  • Total number of conversions (you can calculate average order value as Total Revenue / Total conversions)

Hope you like this new feature! Let us know if you need any help or assistance with revenue tracking in Visual Website Optimizer.

Founder and Chairman of Wingify.

Comments (25)

Leave a Comment
  1. Wow!

    But I dont understand how to make it work.

    Lets say you send ALL your paying customers to http://www…/thanks.php. You have 1 product, 2 prices control $10 and variation 1, $20.

    No what do I do? Do I insert this:


    on the thanks.php page? Do I change 49 to 20? Is this enough? What if I have more variations? Do I need different thank you pages?

    Or do you mean that our coder needs to code something to pass on the number in the _vis_opt_revenue=49; script? How can he know what variation the user is seeing, when it is handled by vwo?

    A more detailed explanation would be nice for such a great feature.

    1. @User: you don’t have to worry about which variation did the user see. That is taken care of VWO. All you need to do is to output the value of transaction (whatever it may be: $10 or $20) in _vis_opt_revenue on your thank you page. If it is still not clear, I will try to clarify.

  2. This is an excellent feature.

    In your screendump example you give 3 product, with three different values and three different buttons.
    Maybe it would be useful if you could tag those buttons with the values, or is this already possible. Won’t work with e-commerce, but with just a few different values it would be useful.

    Love this feature!

  3. Hey, sounds great, will use 🙂
    One question: Will the revenue goal be ignored, if “_vis_opt_revenue” is not set?
    So, could I enter “*” as the URL pattern and then just set “_vis_opt_revenue” whenever I’d like to track revenue?
    [That’s the way I do it with “_vis_opt_register_conversion()”, it would probably also be nice to have a function like “_vis_opt_register_revenue(49)”?]

  4. Could the code for a conversion be placed on a 3rd party site? i.e. if your shopping cart is on another domain OR for affiliates?


    1. @Ian: Yes, code can be placed on 3rd party site. (But you would need to paste VWO code snippet there too)

  5. Next step….
    Check also against product returns / service cancellations. Because a conversion is great but if the product gets returned or the service is cancelled after two weeks it’s not so cool…

  6. Tracking revenue is half of the equation. If you really want to get a handle on your testing and overall ROI, the ability to track charge back and returns in real-time too is key.

    Think about how easily it is to put your merchanting at risk because your charge backs and returns are too high. What if you could test your entire sales funnel in real-time. Within 200 clicks, you’d be able to see trends that impact your overall ROI. Not just revenue.

  7. Is it possible to pass a variable with a comma or dot to _vis_opt_revenue?

    I want to separate cents from dollars (or in my case euros), like _vis_opt_revenue=49.05. Or do I need to round the number?

Leave Comment

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

Contact Us / Login