Campaigns
A campaign is a change to your site that Personizely shows to some or all of your visitors. You can run it as an Experiment (an A/B test that splits traffic randomly between the original and one or more variations) or as a Personalization (a version of the site shown to a specific audience). Every campaign has a type that sets what it can change: page content, the URL, the Shopify theme or template, product prices, shipping rates, or your own code through the JavaScript API.
Available on: all platforms. Theme, template, price and shipping campaigns are Shopify only. Plan: each campaign type must be included in your plan. During a trial, every type is available.
Categories
| Experiment | Personalization |
|---|---|---|
What it's for | Finding out which version performs better | Showing the best version to a known audience |
Who sees a variation | A random share of visitors, optionally limited to a target | Visitors who match a variation's target |
Control group | Default 50% (equal split with one variation) | Default 25% of matched visitors |
Deploy a winner | Yes, for content, URL split, theme, template and price | No; keep it running instead |
More detail |
You choose the category in the first step of New campaign, and it can't be changed later.
Campaign types
Type | What it changes | Platforms | Runs as |
|---|---|---|---|
Content | Text, images, styles, layout and custom code on your pages, through the visual editor. See Content A/B testing with the visual editor | All | A/B test, personalization |
URL split | Redirects visitors from one page to another URL. See Split URL testing (redirect tests) | All | A/B test, personalization |
Full stack | Nothing by itself: your code asks for the visitor's variation and its feature flags through the JavaScript API. See Full-stack experiments and feature flags | All | A/B test, personalization |
Theme | Shows a different Shopify theme. See Theme testing (Shopify) | Shopify | A/B test, personalization |
Template | Shows a different Shopify theme template for products, collections, pages, blog posts or the homepage. See Template testing (Shopify) | Shopify | A/B test, personalization |
Product price | Changes product prices on the storefront and at checkout. See Price testing (Shopify) | Shopify | A/B test, personalization |
Shipping | Replaces shipping rates at checkout. See Shipping rate testing (Shopify) | Shopify Plus, Advanced and development stores | A/B test, personalization |
Every type exists in both categories, so you can, for example, A/B test a theme or personalize a price for one market. Type pages are named after their most common use, such as price testing, but every type can also run as a personalization.
How it works
- You create the campaign in Campaigns → New campaign: choose the category and type, define the first variation, and (for personalizations) the target. You can add more variations in the campaign editor.
- You add goals. At least one goal is required, and one of them is the primary goal. See Goals.
- You start or schedule it. Running campaigns are published to the Personizely snippet on your site.
- The snippet decides, per visitor, what they see. It checks the campaign's pages, target, schedule and traffic allocation, assigns the visitor to control or a variation, and keeps that assignment on later visits. See How visitors are assigned to variations.
- Views and conversions are recorded, and conversions are credited using your Revenue attribution. Results appear in the campaign report.
- You stop it, and deploy the winner if it's an experiment. See Scheduling, stopping and deploying winners.
Campaign statuses
Status | Meaning |
|---|---|
Draft | Never started and not scheduled. |
Scheduled | Started with a start date in the future. |
Running | Started, and the end date (if any) hasn't passed. Visitors are assigned and tracked. |
Paused | Started, then paused before its end date. Nothing is shown and nothing is recorded. Resume continues the same test. |
Ended | The end date has passed, or you clicked Stop. Nothing is shown unless a variation is deployed. |
The status button in the campaign editor and the campaign list offers the actions that fit the current status: Start, Schedule, Edit schedule, Pause, Resume and Stop.
Campaign settings
Option | What it does | Values / default |
|---|---|---|
Campaign name | Shown in the campaign list and reports | Required, unique per website |
Description/hypothesis | Your notes on what you're testing and why | Up to 2,048 characters |
Variations | The versions visitors can see | At least one |
Target | Who can enter the campaign. See Targets | Experiments: All visitors or Specific target. Personalizations: one target per variation |
Targeting mode | Whether the target is re-checked on every page | Live (default) or Permanent. Price campaigns always use Permanent |
Traffic allocation | Share of eligible visitors who enter the campaign | 0–100%, default 100% |
Goals and Primary metric | What's measured and which metric decides the winner | Conversion rate, Revenue per visitor, Profit per visitor (with profit analytics), Average order value |
Trigger (content campaigns) | When the campaign runs | Immediate (default) or Manual |
Advanced settings | Significance level, statistical methodology, power, MDE, and for URL split and template experiments Reload the page for the control group | |
Group | Makes the campaign mutually exclusive with others |
Behavior details and limitations
- A goal is required to start. Starting a campaign without one shows "You can not start the campaign without a goal".
- Price campaigns need price selectors. The campaign can't start until your Price selectors for price tests are configured, because without them prices can't be found on the page.
- One shipping campaign at a time. Only one shipping campaign can be active per website.
- Flicker prompt on first start. If your site loads the Personizely snippet asynchronously (the default), starting your first campaign offers to switch to synchronous loading, which prevents the original content from flashing before the variation appears. Full-stack campaigns don't show this prompt. See Performance and flicker.
- Schedules use the visitor's clock. Start and end dates are checked in the visitor's browser, so a visitor whose device clock is wrong can see a campaign slightly before it starts or after it ends.
- Plan changes take effect on your site. If your plan stops including a campaign type, campaigns of that type stop running on your site, even if they still show as running.
- When campaigns don't run at all. Campaigns don't run for known bots, for visitors excluded by Traffic filtering and bots, when the URL contains ply_disable, or while your account is paused because the Plans, visitor quota and pausing is used up.
- Cloning. Clone creates a copy with the same variations and settings. The copy starts as a draft with empty statistics, no schedule, no group and no deployed variation.
- Several campaigns on one page. Different campaigns can run on the same page. If two content campaigns change the same element, the first one to apply wins, and changes aren't merged. Use a Campaign groups (mutually exclusive tests) when tests must not overlap.
Examples
- Homepage hero test: a content experiment with two new hero headlines, all visitors, primary metric revenue per visitor.
- Returning-customer homepage: a content personalization with one variation for visitors who have ordered before, and a 25% control group to measure the lift.
- Price point test: a product price experiment on your bestseller, with profit per visitor as the primary metric.