Installation questions
Q: What are the requirements for phpA/B
PHP version 5 or above, Google Analytics, and a thirst for knowledge.
Q: Does phpA/B work with cached webpages?
Chances are no. It generates a different page for each visitor.
Q: Is phpA/B free to use?
Yes! phpA/B is licensed under a GNU General Public License, version 2
Q: Will you help me set up an A/B test?
Not unless you pay me.
A/B testing questions
Q: Can I just play around with phpA/B without recording to Google Analytics?
Yes. Set your test to “trial mode” which displays a random variation upon browser refresh and doesn’t record to Google Analytics.
Q: How many tests can I run simultaneously?
Up to 5 tests can run simultaneously (5 is a Google Analytics limitation). Just give the tests different names and make sure you put them in different reporting slots for Google Analytics with set_ga_slot().
Q: Do I have to use {phpab} tags to create content variations?
No. See phpA/B’s documentation for using phpA/B with PHP logic.
Q: Can I use PHP logic to make variations?
Yes. See phpA/B’s documentation for using phpA/B with PHP logic.
Q: Can I make CSS only variations?
Yes. See phpA/B’s documentation for using phpA/B with CSS.
Q: Can I make HTML only variations?
Yes. See phpA/B’s documentation for using phpA/B with HTML.
Q: Can I detect the active variation with javascript?
Yes. See phpA/B’s documentation for using phpA/B with javascript.
Q: Can I mix HTML/CSS/javascript into my variations?
Yes. Mixing the above steps will not create any problems for phpA/B.
Q: Where can I learn more about A/B testing?
- ABtests.com
- Which Test Won
- A/B testing on Wikipedia
- Ultimate A/B testing resources on Brian Cray’s blog
- A/B split testing on Marketing Experiments
- The Ultimate Guide to A/B Testing on Smashing Magazine
Problems with phpA/B
Q: How do I check if my variations work correctly?
Set your test to “trial mode” which displays a random variation upon browser refresh and doesn’t record to Google Analytics.
Q: What if my tests aren’t running?
Check for common setup errors, including:
- Web server isn’t running PHP 5 or greater (or not running PHP at all).
- Control content isn’t correctly wrapped in {phpab} tags - see
{phpab}tag documentation. - Coincidental error with PHP code that has nothing to do with phpA/B.
Q: Why aren't my test results showing up in Google Analytics?
If you’ve made major customizations to your Google Analytics tracking code, phpA/B may not automatically add the additional Google Analytics code it needs to work. See phpA/B’s documentation for advanced Google Analytics users.
Google Analytics questions
Q: How does phpA/B report to Google Analytics?
phpA/B uses Google Analytics’ custom variables API. Specifically, phpA/B uses the _setCustomVar() call to set a session-level custom variable that includes the test name and the user’s variation.
Q: Will phpA/B work with asynchronous tracking?
Yes. phpA/B intelligently detects whether you’re using traditional or asynchronous tracking and inserts the appropriate calls.
Q: Can I override phpA/B’s _setCustomVar() call?
Yes. See Writing your own _setCustomVar() call.