Skip to main content
Altcraft Docs LogoAltcraft Docs Logo
User guide iconUser guide
Developer guide iconDeveloper guide
Admin guide iconAdmin guide
English
  • Русский
  • English
Login
    User documentationGetting StartedFAQAltcraft glossary
      Profiles and databasesarrow
    • Subscription resourcesManaging databasesSubscriber profileProfiles import and data updateScheduled customer data importAutomatic data collectionBulk customers profiles updateDouble opt-in subscriptionSuppression listsProfile relationsProfile history exportProfile exportCreating a static segment based on import resultsHow to open a CSV fileMatchingTypes of fields in the databaseGlobal control groupsSubscription Manager
      Communication channelsarrow
      • Email channelarrow
      • Email: ISP interactions best practicesEmail: sending domain configurationEmail: setting up and using postmastersБыстрый старт
        Push channelarrow
        • Mobile Pusharrow
        • Settings & implementation
            Integrate your app with Altcraftarrow
          • Providers: push message structureProcessing and adding a subscriptionEvent registration
          Web pusharrow
        • Preliminary Settings
            Web browser push configurationarrow
          • Firebase Cloud messagingApple SafariMozilla Services
          Connecting Web Push to a WebsiteTransferring Data to the PlatformWeb Push SDK Methods
            Import of subscriptions from third-party push servicesarrow
          • Migrating push subscriptions from third-party servicesHow to transfer push subscriptions configured for Safari?Migration from OneSignal
      SMS channel
        Creating mailing from scratcharrow
      • EmailSMSWeb PushMobile PushWhatsAppViber*™Руководство: SMS-рассылка через VK NotifyMAX BotMAX GroupNotifyTelegram BotTelegram Group
      Communication Channels WorkflowРуководство: SMS-рассылка через УТШРуководство: push-рассылка через сервис от "Согласие"
      Segmentationarrow
    • Static SegmentsDynamic SegmentsUpdatable Segments
        Segmentation Conditionsarrow
      • Segmentation by Profile dataSegmentation by Interactions with EntitiesSegmentation by Activity of the channelSegmentation by external dataSegmentation by external SQL tablesSegmentation by Profile structure
      Best Send Time (BST)Logical operators "AND" and "OR"Recommendations for working with segments
      Message templatesarrow
      • Working with message templatesarrow
      • Working in the editorEmail-templateSMS templatePush templateMAX templateTelegram templateWhatsApp templateViber™ templateNotify template
        Visual editor for email-templatearrow
      • Visual editor interfaceAdding blocksElements and their settingsCustom blocksStyle managerLayer manager
      Template fragmentsImage galleryContent personalizationCreating tables based on array elementsBlock editor for email template
        Altcraft Variables and Functionsarrow
      • Logical expressions in messagesLoops in messagesMarket variables in templatesUsing the JSONPath functionality
        Dynamic content in messagesarrow
      • Dynamic HTML contentDynamic JSON contentContent from SQL database in templatesDynamic API content
      Importing and exporting a message templateImporting a template from a third-party serviceExporting a template from Pixcraft
      Mailingsarrow
    • Mailings calendarBroadcast mailingsRegular mailingTrigger mailingMultivariate testingMailing testingMailing schedulePlacement mailing
      Campaignsarrow
    • Working with CampaignsLocal control groups (LCG)Stratification Violation ErrorAudience expansionAudience building
      Automation scenariosarrow
    • Managing scenariosNodes of the scenarioClassic marketing scenariosStep-by-step welcome scenario guideScenario for automatic notification of the managerAbandoned cart scenario
      Marketarrow
    • Market settings
        Productsarrow
      • How to create a product manuallyHow to import a product from a fileScheduled product importProduct and SKU SegmentsPreparing the YML file
      OrdersMarket variables in message templateGuide: how to send an order confirmation email
      Loyalty programsarrow
    • Loyalty programsLoyalty integration with external systemsБыстрый стартBasic loyalty program use casesOrder SegmentsPromotion codes
      Reports and analyticsarrow
    • Channel reportTraffic report
        Summary reportarrow
      • Summary report metrics
      Cohorts reportLifetime reportFunnels reportGoals reportAudience growth reportClick map reportLoyalty programs reportBounces reportUndeliveries reportReport on global control groups
      Integrationsarrow
      • Action hooksarrow
      • Altcraft Action HooksAction hooks event typesAction Hook Message StructureJSON batch request (HTTP POST action hook)Message to RabbitMQ brokerMessage to RabbitMQ exchangerMessage to Kafka brokerTest event
        Integration of third-party services using Albatoarrow
      • Connecting Altcraft to Albato Launching the welcome scenario using AlbatoTransmitting event dataSetting app a trigger mailingEvent registrationGoogle Sheets and Altcraft integration AmoCRM and Altcraft integration
      Facebook Ads Manager™Google Ads AudiencesMAXYandex.Audience™VK Ads™Static segment synchronizationYandex AppMetrica™Tilda™Lpgenerator™WhatsAppViber*™ integrationIntegration scopeData Transmitted During SynchronizationNotify
      Weblayersarrow
      • Formsarrow
      • Create a formForm constructorAppearanceActions after form activationData analyticsBinding data channel and formsConditional logic in forms and surveysNPS testing
        Pixelsarrow
      • Goal customer actions and scoring
        Pop-upsarrow
      • Creating and publishing a pop-upSetting up a popup in the code editorManaging pop-ups manually via scriptPopup analyticsGuide: pop-up for push subscriptionsCase: Creating a pop-up with the "Wheel of Fortune" widgetBasic cases of placing a popup via the Tag Manager
        Tag Managerarrow
      • Configuring and installing Tag ManagerTrigger typesVariables typesLinking a pixel and the Tag manager
      Settingsarrow
    • Account settingsCustom linksVirtual sendersSending policiesAudit journalTags FAQ
        Users, groups and accessarrow
      • Two-Factor Authentication (2FA)
        Connectionsarrow
      • Connection to Facebook Ads ManagerConnection to Google AdsConnecting to Yandex.Audience™Connection to 360dialogConnection to EdnaConnection to Devino TelecomConnection to SMSTrafficConnection to VK Ads™Connection to MTS OmniChannelCustom Authentication ConnectionOAuth2 connectionBasic Authentication connectionToken Authentication connectionConnection to RapportoMAX connectionConnection to Notify
      Attribute settings
      API requests: where to startarrow
    • Import or update a profileTrigger mailing launchEngage profile in scenario
      Changelogarrow
    • v2026.1.76v2025.4.75v2025.4.74v2025.3.73v2025.2.72v2025.1.71v2024.4.70v2024.3.69v2024.2.68.2v2024.1.68
    Documentation archivelibrary
  • Campaigns
  • Working with Campaigns

Working with Campaigns

Description​

Terminology update

Previously, all types of marketing mailings in the platform were called "Campaigns". In the new version they have been renamed to "Mailings", and the new "Campaigns" are a broader tool.

Campaigns are a tool for uniting marketing activities into a single strategy and managing them in one place. A campaign can contain broadcasts, regular and triggered mailings, scenarios, A/B tests and placements. You can configure test and control groups, track strategy performance and manage the lifecycle of activities from a single interface:

Creating a campaign​

Before creating a campaign, prepare a static or updatable segments for the target audience. It defines who will join the activities.

The campaign audience is the current composition of the segment at the time of campaign activation and each subsequent segment update.

  • Profile not in segment = profile not in campaign audience

For example:

The campaign is configured with an updatable segment.
The segment is set to weekly update on Mondays with the condition "purchase within the last 7 days":

A profile makes a purchase on April 9 (Sunday).

  • April 10 (Monday) — the nearest update. The profile enters the segment and therefore the campaign, since the purchase was within the last 7 days.
  • April 17 (Monday) — the next update. Since there were no purchases from April 10 to April 17, the profile no longer meets the conditions and is removed from the segment and, accordingly, from the campaign.

For a static segment
A profile will also be removed from the campaign audience if it ceases to be a member of the static segment. This can happen when:

  • manually deleted from the segment;
  • deleted by conditions;
  • deleted via API;
  • deleted via a scenario;
  • any other way of excluding a profile from a static segment.

Profile exit from campaign
If a profile leaves the segment audience, it will also leave the campaign audience. In this case:

  • The profile receives a "Campaign exit" event;
  • All active campaign scenarios for this profile are deactivated;
  • If the profile later re-enters the segment, it will be added to the campaign as a new one and will undergo re-labeling.
Please note:

When using a dynamic segment as the main campaign segment, the audience expansion function is not available.

Open the Campaigns section and click + Create:

Specify the name, profile database and static or updatable segment.
If mandatory attributes exist, select them as well.

note

The segment defines the campaign audience. On activation the system splits it into:

  • Test group — profiles that receive activities;
  • Local control group (LCG) — profiles excluded from activities, if LCG is enabled.

caution

After creation the segment and database cannot be changed.

Managing marketing activities​

The Marketing activities section contains all activities linked to the campaign.

You can create new ones or attach existing ones.

note

Unavailable for selection:

  • activities from another database;
  • mailings and scenarios with statuses "Active" or "Completed";
  • scenarios with active profiles;
  • activities already used in other campaigns;
  • broadcasts and regular mailings launched at least once.

Available activity types:

  • Broadcasts
  • Regular mailings
  • Triggered mailings
  • A/B tests
  • Scenarios
  • Placements

You can specify a mailing segment. The profile database must always match the campaign. If the activity segment differs from the campaign segment, only profiles present in both segments receive the activity.

Intersection examples​

Partial overlap

Campaign: database CRM_Base, segment Loyal customers — 100 profiles.
Broadcast segment: Recent buyers — 60 profiles, 40 intersect.
Result: message goes to 40 profiles.

No overlap

Campaign: CRM_Base, segment Loyal customers — 100 profiles.
Broadcast: New registrations — 50 profiles with no intersection.
Result: 0 recipients.

Moving an activity​

Find the activity → click Move:

Choose destination — external list or another campaign:

info

You cannot move:

  • active or previously launched activities;
  • scenarios with profiles;
  • activities into a completed campaign.

Local control group (LCG)​

What it is​

The Local control group (LCG) is a part of the audience that does not receive campaign activities. Used for precise audience control. LCG analytics is not available yet.

LCG vs GCG

LCG works inside a single campaign.
GCG excludes profiles from all activities on the platform.

If a profile is in GCG, it cannot join the campaign unless added to exceptions.
GCG is configured in database settings.

Basic setup​

Set the percentage of profiles to exclude.
Option "Audience limit" lets you set an exact number:

tip

Set up LCG before activation.
If you change LCG parameters later, the platform recalculates the audience and pauses broadcasts and regular mailings.
After activation only new profiles can enter LCG.

If the campaign is configured for a dynamic segment, audience tagging will be triggered with each recalculation.

Stratification​

Stratification splits the audience into groups by selected fields (gender, age, city).
A share of each group is placed into LCG:

Usage example: A marketer needs to include men and women from two age groups in the control group:

  • from 20 to 25 years old (date of birth from 01.01.2000 to 01.01.2005);
  • from 25 to 40 years old (date of birth from 01.01.1985 to 31.12.1999).

To do this, they select the Gender and Date of birth fields, define two date-of-birth ranges, and add gender values (male and female). The system will create four strata — men 20–25, women 20–25, men 25–40, and women 25–40 — and distribute participants between the test and control groups according to the configured settings.

Note

It is not recommended to change stratification settings in an active campaign or for an already formed LCG.

Changing values inside fields (adding new cities, expanding age ranges, etc.) may lead to loss of LCG homogeneity — proportions between strata will change, and some current members may move to the test group.

If you change the set of stratification fields (for example, adding stratification by the age field or removing stratification by the region field) — this is a completely different division grid. Current LCG members do not match the new strata, the system cannot map old members to new strata, and moves all of them to the test group. The control group then starts forming from scratch and only from new users.

Ignoring activities​

Some activities can send messages even to LCG.
Useful for transactional messages like order notifications:

Status management​

Activation​

caution

A campaign must contain at least one activity to be activated.

Click ▶ to open activation settings:

Two options:

  • Activate now
  • Activate on a specific date

Be careful when selecting the date and time for launching the campaign. If you specify a past date, the campaign will wait for launch indefinitely and no warning will be displayed.

note

Activating a campaign does not auto-start its activities.
Inactive mailings or scenarios must be launched manually.

Completion settings​

  • Deactivation — temporary stop, profiles keep group membership.
  • Completion — full stop, profiles are removed.
note

A completed campaign cannot be activated again.

Status table (updated)​

StatusDescription and impact on activities
InactiveAssigned after a campaign is created and kept until it is launched. Activities do not run.
Audience buildingAudience calculation and distribution of profiles between test and control groups is in progress. During this phase broadcasts and regular mailings are paused.
WaitingThe campaign is activated with a delayed start. The campaign starts automatically at the scheduled time.
ActiveThe campaign is running, the audience is built. Activities run according to their settings.
Audience exclusionThe system removes profiles from the campaign and detaches them from scenarios. New mailings do not run.
CompletedThe campaign is fully stopped. Activities no longer run, relaunch is impossible.

Working with profiles​

Test and control groups​

After activation, audience building starts.
The system distributes profiles into the test group and LCG (if enabled).

If LCG is disabled, all profiles go to the test group.

Only the selected database is used.

note

Audience building starts only after activation.

Audience expansion​

Audience expansion adds new users to the campaign if they participate in selected activities.

Please note:

When using an updatable segment as the main campaign segment, the audience expansion function is not available. New profiles are added to the campaign audience only as a result of segment recalculation.

When an activity runs, the system checks whether the recipients are already in the campaign and adds missing ones.
New profiles are then distributed into test group and LCG:

Examples​

Without expansion
No intersection → message sent to no one.

With expansion
Recipients are added to the campaign and distributed into groups.
Test group receives the message; LCG does not.

Manual profile addition​

In the profile card → Interactions → Campaigns → choose campaign:

info

Manual profile addition is available only for static segments.

To force a profile into the test group, mark "Send profile to test group even if it is in the control group".

Analytics​

Click Analytics on the top panel:

The system opens the analytics section filtered by the campaign:

Additional features​

Profile export​

Done in the Audience section:

Available parameters:

  • subscription status filter
  • audience group (Test, LCG, GCG)
  • field selection
  • export limit
info

Export is available after audience building is finished.

Cloning​

Cloning creates a full copy with all activities and settings:

Database cannot be changed.
Segment can be changed.
New campaign is Inactive.

Deleting​

Accessible in statuses Completed or Inactive with no allocated profiles.

caution

Deleted campaigns go to the recycle bin.
When restored, they return as Completed and cannot be activated.

Last updated on Apr 20, 2026
Previous
Campaigns
Next
Local control groups (LCG)
  • Description
  • Creating a campaign
  • Managing marketing activities
    • Intersection examples
    • Moving an activity
  • Local control group (LCG)
    • What it is
    • Basic setup
    • Stratification
    • Ignoring activities
  • Status management
    • Activation
    • Completion settings
    • Status table (updated)
  • Working with profiles
    • Test and control groups
  • Audience expansion
    • Examples
  • Manual profile addition
  • Analytics
  • Additional features
    • Profile export
    • Cloning
    • Deleting
© 2015 - 2026 Altcraft, LLC. All rights reserved.