AB Split Test Conversions - Updated Guide
AB Split Test currently supports 14 conversion (goal) types, offering flexible ways to track user actions. From simple page visits to custom code triggers.
- Page or Post Visit
- Text on Page
- Element Click
- Link Click
- Time Active
- Scroll Depth
- URL
- Conversion Block / Module / Element Class
- JavaScript
- Conversion Pixel (same domain / subdomains only)
- Fingerprint Pixel (cross-domain)
- Advanced Mode (PHP/AJAX)
- Form Submission
- WooCommerce Purchase
PAGE OR POST VISIT
Select a Page from the dropdown that will trigger a conversion in the same way as the URL conversion method.
URL
The URL Visit goal triggers a conversion when a specific URL path on your own site (e.g. /checkout/thank-you/) is visited. Useful for tracking dynamic or custom URLs not listed in the page dropdown. Does not work with external sites like Calendly or YouTube.
TEXT ON PAGE
Text on Page triggers when a specific piece of text appears on the page, usually as part of a confirmation or thank-you message after a form is submitted, a booking is completed, or a purchase goes through.
ELEMENT CLICK
A flexible conversion selector that tracks when a user clicks on a button or any other element using CSS selectors.
You can define a click on any element with CSS selectors. More information on all the options here.
- Element with an ID - Use the
#operator. Example:#mybutton - Element with a class - Use the
.operator. Example:.mybutton - Link pointing to an external URL - Use an attribute selector. Example:
a[href*='yoururl']
Advanced Mode: To trigger a conversion on an event other than click, use advanced mode by adding a pipe | and the event type. Example: #buy|mousedown
LINK CLICK
Tracks when someone clicks a specific URL on your page. Works with external or internal links.
SCROLL DEPTH
Fires a conversion when a visitor reaches a set percentage of page height (e.g. 50%, 75%, 90%). Good for measuring content engagement on long pages.
TIME ACTIVE
Fires after a user has been actively engaging (scrolling, moving, tapping) for a set number of seconds. Not idle tab time. Good for engagement-based conversions.
.
CONVERSION BLOCK / MODULE / ELEMENT CLASS
Automatically triggers a conversion when a specific CSS class (e.g. ab-convert-123, where 123 is your test ID) appears on the page. Useful for template or code-driven triggers. The older two-class form ab-123 ab-convert still works.
The JavaScript conversion method is an advanced method for developers.
The function abstConvert(TestId) is all you need to trigger a conversion with JavaScript.
Requirements:
- Wait until document.ready before firing a conversion
- You need the Test ID
Conversion Value
On the Teams plan, you can include an order value with your conversion:
abstConvert(TestId, orderValue);
If you want to fire a conversion on an external URL page, use the Fingerprint Pixel or Conversion Pixel instead.
You can see the prefilled script with the test ID included by selecting the JavaScript conversion method in your test settings.
Conversion Pixel
The Conversion Pixel tracks conversions from external pages by loading a tiny invisible image that records the conversion when the page is viewed. Works on subdomains you control. Can trigger a conversion for a specific test or for all active tests using eid=all. Supports dynamic loading in single page apps by injecting the tracking image via JavaScript.
Because of modern browser privacy rules, the pixel only works reliably on subdomains of your own site. It cannot track conversions across completely different domains. For third-party hosted checkouts on another domain, use the Fingerprint Pixel instead.
As of v2.5.2 the pixel logs conversions directly without a cURL loopback request, resolving failures on hosts that block loopback connections.
Fingerprint Pixel
Fingerprinting lets AB Split Test track conversions that happen on external domains, even when a user leaves your site. It works by creating a unique identifier for each visitor based on their browser, device, and IP. When the visitor converts on another site using the fingerprint script, the plugin matches that conversion back to the correct test variation.
Useful when you want cross-domain attribution, such as tracking actions on ThriveCart, Shopify, or other hosted checkouts. Trade-offs: fingerprints can occasionally collide on similar devices, and storing fingerprint data increases database size over time.
For split testing where the variations themselves live on different domains, see Cross-Domain Split Testing →
PHP / AJAX
PHP and AJAX conversions allow your site to trigger a conversion programmatically, without needing a thank-you page, pixel, or JavaScript event. Your server calls AB Split Test's internal conversion endpoint directly, passing the test ID and optional order value.
FORM SUBMISSION
AB Split Test auto-detects form submissions from supported plugins and records a conversion when the form is successfully submitted. No custom code required.
Supported form plugins: Contact Form 7, Gravity Forms, WPForms, Fluent Forms, Elementor Forms, Bricks Forms, Ninja Forms, Formidable Forms, WS Form, Beaver Builder Forms, MailPoet Forms.
For HubSpot forms, enable native HubSpot tracking in Settings > Data Management (v2.5.2+). Supports a single form GUID, comma-separated GUIDs, or * wildcard to track all HubSpot forms.
On the Teams plan, AB Split Test can also read the order or payment total directly from a submitted form when your test is in revenue mode, so you can measure which variation makes more money rather than just which gets more submissions (v2.5.5).
WOOCOMMERCE PURCHASE
Fires a conversion when a WooCommerce order is completed. Also supports SureCart, Easy Digital Downloads, and FluentCart.
For custom checkouts (CartFlows, WooFunnels) or when standard tracking misses orders, enable server-side tracking in Settings > Advanced Settings > Enable server-side conversion tracking for WooCommerce.
Use Order Value is available on the Teams plan for any conversion type. This lets your tests optimize for revenue per visitor rather than just conversion count.
PHONE CALLS (CALLTRACKINGMETRICS)
Phone calls tracked through CallTrackingMetrics can now count as conversions and be attributed to the correct test variation (v2.6.0). Once CTM is connected, attribution flows through automatically.