Run your first campaign
With your platform connected and at least one snippet created, you are ready to run your first campaign.
Setting up the campaign
Navigate to Campaigns > New Campaign. You will configure:
-
Channel: Select the channel for this campaign (email, push, SMS, or in-app). Each campaign tests one channel.
-
Slots: Assign snippets to named positions in your template (for example, subject line, hero, CTA). Each slot is analysed independently.
-
Primary metric: Choose the single measure you are optimising for. Your options are:
- Open rate: what percentage of recipients opened the email
- Click rate: what percentage of recipients clicked a link
- Conversion rate: what percentage of recipients took the desired action (purchase, sign-up, etc.)
- Tap rate (push): what percentage of recipients tapped the notification
- Revenue per exposure: average revenue generated per recipient
The primary metric cannot be changed after sending. This is a deliberate safeguard called pre-registration: it prevents cherry-picking whichever metric happens to look best after the fact.
-
Traffic allocation: Choose how recipients are split across variants:
- Equal split (recommended for your first campaign): each variant gets the same number of recipients.
- Manual percentages: drag sliders to set a custom split.
- Thompson Sampling (Growth and Scale plans): liftstack uses historical performance data to send more traffic to better-performing variants automatically while still testing alternatives.
-
Audience: Select the segment or list from your CRM platform.
-
Campaign group (optional): If you are running related campaigns across channels (for example, an email and a push campaign for the same product launch), you can add them to a campaign group for cross-channel coordination and reporting.
What happens when you click Prepare Campaign
When you click Prepare Campaign, liftstack runs the following steps in sequence:
- Syncs your audience: pulls recipient profiles from your selected segment or list.
- Runs assignment: randomly assigns each recipient a variant for each slot.
- Writes
lf_assignmentsto profiles: sets a custom property on each recipient’s CRM profile so your template knows which content to show. - Pushes the conditional template: creates or updates a template on your platform with conditional logic that renders the right variant per recipient.
Assignment happens before anyone sees anything. This is what makes it a proper randomised experiment, because liftstack knows who was shown what before the results come in. There is no additional latency at send time; when you hit send in your platform, the email renders using the pre-written profile property.
For large audiences (100,000+), the profile writeback step is the longest part and can take 15 to 30 minutes. Plan accordingly, but once all steps show complete, you can send immediately.