Split testing Drupal

Technology Blog

What is split testing? The short answer is that it is a comparison test of different versions of some content (on the web, typically a page). The different versions are compared by first showing them at random to users, then measuring success by some means, for example seeing how many lead to a purchase.

There is a split testing module for Drupal, but I think its scope is far too limited to be useful, as all it does is compare two different themes. If you are trying to test variants of some specific content – for example a call to action – rather than the way it is presented, then this module won’t help. (If you do want to measure one theme against another, of course, then it’s ideal.)

I have a partially developed solution of my own to the problem of testing variants on an individual content node, though there are some issues left to solve. One is to find a good answer to the question of caching, so the site as a whole is cached while the pages under test are either not cached at all, or cached in a way that permits different variants.

If anyone is interested in sponsoring further development, or taking over what I have written so far, please let me know. I’d also be interested in discussing other possible approaches, perhaps by using other tools such as Google Website Optimizer (mine is very Drupal specific – it works by altering the content of the node at load time).

3 Responses to “Split testing Drupal”

  1. Stuart Fraser

    I agree that only testing the differences in a theme doesn’t allow the fine grained testing of copy, different offers, different risk reversal strategies etc.

    I like the idea of having multiple nodes participate in a group that is split, same url but the underlying node is captured and all clicks etc attributed to that page.

    Other option is to create some kind of attribute -> token system for a single node

Leave a Reply

  • (will not be published)

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