The Next Generation of Visual Website Optimizer is launching in April 2014 See What's Coming

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

Posted in Multivariate Testing, News on February 23rd, 2011

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.

Paras Chopra

CEO and Founder of Wingify by the day, startups, marketing and analytics enthusiast by the afternoon, and a nihilist philosopher/writer by the evening!

The Complete A/B Testing Guide

Know all that you need to get started:

  • What is A/B Testing?
  • Is it compatible with SEO?
  • How to start your first A/B test?
Show Me The Guide


Janco Klijnstra - Traffic4u
February 23, 2011

Great feature!

Would be great if you could also see the average order value and which products were sold the most. Could give you more insights which product was sold the most, the one in the middle or the cheapeast option or..etc!

Kim Biesbjerg
February 23, 2011

Brilliant! I was wondering if and when this feature would be added. Can’t wait to try it out!

February 23, 2011


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.

Paras Chopra
February 23, 2011

@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.

February 24, 2011

Sorry, dont get it. Looking forward to a more detailed explanation that I can send my coder.

Rob Kingston
February 24, 2011

Awesome work, guys!

Not many software packages out there let you optimise for revenue per visitor – this makes it easy.

Martin LeBlanc
February 24, 2011

Finally :-D

VWO is simply amazing!

Martijn van Vreeden
February 24, 2011

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!

Frank Booth
February 25, 2011

Interesting… Do you normalized for profit as well as revenue.

February 25, 2011

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)"?]

Paras Chopra
February 25, 2011

Hi Njam,

Yes, your understanding is correct.


March 3, 2011

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?


Paras Chopra
March 3, 2011

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

March 3, 2011


By VWO snippet you mean what ever the JS is that the WP plugin is placing on my site correct?


Paras Chopra
March 3, 2011

@Ian: yes, that’s correct.

March 4, 2011

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…

Jon Mehlman
March 4, 2011

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.

March 5, 2011 a REST API to track goals/revenue from the application servers :)

[...] englische Originalversion dieses Artikels ist hier zu finden. Die hier zu lesende, deutsche Version wurde mit Zustimmung des Autors und Gründers des [...]

[...] attributed to semi-interested people who may never end up buying a subscription. We used our new revenue tracking feature to see impact of “popup forms” on actual $$ made, however it is still to early [...]

[...] englische Originalversion dieses Artikels ist hier zu finden. Die hier zu lesende, deutsche Version wurde mit Zustimmung des Autors und Gründers des [...]

[...] the test. (For their follow up tests, we recommend Basekit to use Visual Website Optimizer’s revenue tracking feature to make sure that not just conversions but total sales is also measured for different [...]

May 14, 2012

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?

July 3, 2012

Awsome great feature, Convesrion V/s Revenue we can track all

Leave a comment
Required - not published

7 × = twenty one

Notify me of followup comments via e-mail.

RSS feed for comments on this post. TrackBack URL

I ♥ Split Testing Blog

Stay up to date

Recent Posts

Write for this blog!

We accept high quality articles related to A/B testing and online marketing. Send your proposals to