Imagine you have a Foo post in your blog, whose URL is http://example.com/foo/. If you create a Headline Experiment and add two alternative headlines to that post, you end up having 3 possible headlines: the original and the two alternatives. When a visitor accesses your website, she has to see one headline only. Our plugin will take care of (a) deciding which alternative is assigned to your visitors and (b) actually showing that alternative to them.


In order to load the appropriate alternative, Nelio A/B Testing relies on a few parameters that we add in your URLs. Essentially, these parameters tell our plugin which alternative has to be loaded for each visitor. For instance, once we start the Headline Experiment we mentioned above, we'll have three different URLs, each of which will point to a different, alternative headline:

  • Original Headline: http://example.com/foo/?nab=0
  • First Alternative Headline: http://example.com/foo/?nab=1
  • Second Alternative Headline: http://example.com/foo/?nab=2

Thus, if a user accesses http://example.com/foo/?nab=1, she'll see the first alternative headline:




What parameters are used by Nelio A/B Testing?


These are the parameters it uses:

  • nab: if the current page is under test, this parameter specifies which alternative has to be loaded.
  • nabe: if there are other page or post experiments running, this parameter will appear on all the pages of your website.

  • On the other hand, CSS, Menu, Theme, and Widget experiments have their own GET parameters. These types of experiment modify the appearance of your whole website and, therefore, their parameters will be included on all the pages of your website:
    • nabc: appears when there's a CSS experiment running.
    • nabm: appears when there's a Menu experiment running.
    • nabt: appears when there's a Theme experiment running.
    • nabw: appears when there's a Widget experiment running.

In this particular case, we've seen one of the possible parameters added by Nelio: the nab parameter.



Which pages contain the nab parameter?

The nab parameter is only used on those pages that are under test. If Foo is under test, then it will contain the param (as we've seen above). If Bar is not under test, it's URL won't contain the param.


What is the nabe parameter?


Imagine one of your visitors now goes to your Latest Posts page: http://example.com/blog/. Even though this page is not under test, it will include a new parameter named nabe. Why? Because this page might contain a reference to your tested post Foo and, if it does, you'll want that entry to display the alternative headline:



And the same will happen with any references that might be present on a page such as, for instance, a Recent Posts widget (like the one depicted in the image above).


The nabe parameter contains information about all the running experiments in your site and tells our plugin which alternatives have to be loaded when adding references to pages under test.



What about the other parameters?


The other params nabcnabmnabt, and nabw only appear when there is a CSS, Menu, Theme, or Widget experiment running respectively. They are added on all the pages of your website, and tell our plugin what alternative has to be loaded. If you think about the kind of the related experiments, you'll realize that any page on your website might need to load alternative content (if you're running a Theme experiment, for instance, all pages have to be loaded using the appropriate theme); that's why all pages include them.