Docs/Portal/Campaigns
2
8 min·Step 2 of 7

Campaigns#

The Campaigns section in the portal lets you manage every promotion that appears on your Karla tracking page — creating new campaigns, editing existing ones, segmenting who sees what, and measuring impact.

Recommended for: Marketing, Management

Campaign types#

Karla supports three campaign types, each optimized for a different objective:

Basic promotions#

Flexible content blocks with custom messaging and a call-to-action button. Perfect for straightforward offers that don't require specific product focus.

Use for: discounts, referral programs, seasonal messaging, brand announcements.

Product promotions#

Highlight one or more products directly on the tracking page — with images, names, prices, and per-product CTAs.

Use for: cross-selling, upselling, product recommendations.

Products can be added two ways:

  • Automatically (Shopify integration) — pulled from your Shopify catalog; just search and select.
  • Manually — enter title, image, price, description, and translations yourself. Works for any catalog, even if it's not synced.

Mobile-only campaigns that appear at the top of the tracking page. Short, high-impact, time-sensitive.

Use for: flash sales, limited-time offers, mobile-focused messaging.

How a promotion is structured#

Every promotion includes:

ElementDescription
Internal nameUsed only for internal organization
SegmentDetermines which customers see the promotion
Start & end dateOptional — useful for scheduled or time-limited campaigns
Title & subtitleThe main message customers see on the tracking page
CTA (call-to-action)Button label and destination URL
DiscountOptional — if the promotion includes an incentive
TranslationsCampaigns can be localized for different languages
ImageA visual that supports the promotion

After adding or updating content, save the promotion.

Creating and managing promotions#

  • Create a new promotion from scratch, or clone an existing one to reuse its setup.
  • Promotions can be live or disabled, so you can prepare campaigns in advance.
  • Multiple promotions can run simultaneously using segmentation.
  • Use Preview to see how the promotion will render on the live tracking page (banner promotions preview on mobile; basic and product promotions preview on desktop).

Discounts and segmentation#

To get the most out of your campaigns, you'll use discounts (to drive action) and segments (to target the right audience). Both are managed in the portal.

Creating discounts for Karla campaigns#

Karla uses dedicated discounts that are intended specifically for the tracking page experience.

Step 1: Create the discount in your shop#

First, create the discount in your shop backend (Shopify, Shopware, etc.):

  • Define the discount type (percentage, fixed amount, free shipping, etc.)
  • Set the value and rules as usual

This ensures the discount is valid and usable at checkout.

Step 2: Add the discount to the Karla Portal#

To use a discount in a Karla campaign, add it to the Discounts section:

FieldDescription
Internal titleFor your own reference (e.g., "15% for new customers")
Discount codeExactly as it exists in your shop system
Discount typeEntire order, specific products, or shipping
Discount valuePercentage (e.g., 15%) or fixed amount (e.g., €15 off)

Once saved, the discount becomes available in any campaign via a dropdown.

Important

If a discount is not added to the Discounts section first, it won't be available for use in campaigns.

Using discounts in campaigns#

After adding a discount to the portal:

  • Select it in any basic, product, or banner campaign.
  • This keeps discounts organized, avoids duplicates, and enables campaign attribution via the discount code.

How segmentation works#

Segmentation lets you show different campaigns to different customer groups — e.g., a 10% off offer to first-time customers but premium product suggestions to VIPs.

Where segments come from#

  • Karla pulls segments from Klaviyo and/or Shopify.
  • Segments are not created in the Karla Portal directly — define them in Klaviyo/Shopify, and they appear in Karla after a brief sync.
  • When creating or editing a campaign, you'll see all synced segments in a dropdown.

When segments are evaluated#

Karla checks which segments a customer belongs to at two moments:

  1. At order placement — when the order is first created.
  2. At order fulfillment — when the order is fulfilled. This is the final check.

Important

The segments determined at fulfillment are what ultimately decide which campaign is shown. If a customer's segments change after fulfillment, the order is not updated. This is intentional — it keeps campaign assignments consistent for a given shipment.

Fallback and multi-match behavior#

  • Default fallback — if the customer matches no live campaign segment, the default campaign is shown.
  • Multiple matches — when a customer matches several live campaigns, Karla picks the first match found. Since order segments aren't explicitly ordered, this produces a degree of randomness — which is actually useful for natural A/B testing across overlapping segments.

Campaign recipes by segment#

A starter library of campaign ideas you can adapt to your brand. Copy, translate, and tune as needed.

New customers#

Objective: encourage first-time buyers to make a repeat purchase.

RecipeTitle (EN)CTA
Next-order discount"Welcome to [Brand]! Enjoy 10% off your next order""Claim your discount"
Newsletter signup"Join & enjoy 10% off your next order!""Sign up now"
Accessories discount"Complete your look — get €10 off accessories""Shop accessories"
Free gift with purchase"A special gift just for you!""Claim your gift"

Other ideas: free shipping on the next order if placed within 7 days; exclusive welcome bundle with bestsellers; free downloadable style guide or product care tips.

Repeat customers#

Objective: strengthen loyalty and increase repeat purchase frequency.

RecipeTitle (EN)CTA
Subscriptions"Never run out — subscribe & save 15%!""Subscribe now"
App install"Exclusive in-app deals just for you!""Get the app"
WhatsApp delivery updates"Track your order instantly on WhatsApp!""Sign up for updates"
Referral program"Refer [Brand] & get €10 off your next order!""Refer now"
Membership sign-up"Members save more! Join today""Join the club"

Other ideas: early access to new collections or limited-time offers.

Product-based targeting#

RecipeTitle (EN)Campaign type
High-spending customers"Luxury add-ons to elevate your style"Product promotion
Price-conscious customers"Great deals under €20 — shop now!"Product promotion
Cross-category upsell"Have you already tried XYZ? We think you'll love it!"Product promotion
Product bundles"Save big with our exclusive bundles!"Product promotion

Food & beverage — recipe guides#

Objective: encourage repeat purchases by adding value.

Title (EN)CTA
"Exclusive recipe guide — free with your order!""Download now"

Discount-loving customers#

Objective: encourage higher spending by offering tailored discounts.

Title (EN)CTA
"More savings, just for you! Grab an extra 20% off!""Shop the sale"

Best practices#

  • Keep campaigns focused — one message, one CTA per promotion.
  • Don't stack too many promotions at the same time on the same segment — it dilutes impact.
  • Use segmentation for relevance — a targeted campaign outperforms a generic one every time.
  • Use Karla-specific discount codes so attribution stays clean. Keep them unique, time-limited, and unshareable (e.g., KARLA-WELCOME-DEC instead of SAVE10).
  • Allow time for new segments to sync from Klaviyo/Shopify before launching a dependent campaign.
  • Use high-quality images (minimum 800×800px, .webp preferred) and keep copy concise and action-oriented.
  • A/B test systematically — change one variable at a time, run tests for at least 7 days, and aim for >100 orders per variant before drawing conclusions.

Measure what you launched#

Every campaign reports impressions, click-through rates, and revenue in the portal. How accurately Karla can attribute those conversions depends on which attribution method you're using — dig into the details in Campaign attribution.

Was this helpful?