Skip to main content

Campaigns

A campaign sends an approved template to an audience, respecting the provider's rules. It is the recommended path to resume contact outside the 24-hour window.

Life cycle​

StateMeaning
DraftBeing assembled; can be edited, dispatched, or deleted
ScheduledWith a set date; can be canceled
SendingIn execution
FinishedCompleted
CanceledInterrupted by the operator
FailedSend error

The editing rules follow the state: only a draft or a scheduled campaign can be edited, and only a draft can be dispatched on the spot. An A/B test variant is only editable together with the parent campaign.

Assembling a campaign​

  1. Name and channel — the channel defines the available templates and rules.
  2. Audience — where the recipient list comes from:
    • CSV uploaded by you (UTF-8, with a header);
    • report — a pre-configured contact list, marked as eligible for campaign (eligible).
  3. Template — choose an approved template on that channel. The system shows the parameters it expects.
  4. Field map (fieldsMap) — link each template parameter to a column of the audience. The map must cover all the template fields and cannot point to non-existent columns.
  5. Scheduling — send now, choose the date/time, or schedule the creation of a draft with send_time.
  6. Dispatch or scheduling.

A/B testing​

A/B splits the audience between variants to find out what works best. There are 2 to 10 variants, and the test always has three decisions: the type, the winning criterion, and the duration.

Test type​

TypeWhat changes between the variantsWhen to use
Message (template_message)The template of each variantYou have two text approaches and want to know which one converts
Send time (send_time)The time of each variantThe message is the same; the question is when to talk to the customer

Winning criterion​

CriterionHow the winner is chosenRequires duration?
Split only (split_only)There is no winner: the audience is merely split between the variantsNo
Reads (read)Whoever has more readsYes
Delivery and read (delivery_read)Whoever has more deliveries and, on a tie, more readsYes
Manual (manual)The operator decides, after seeing the numbersYes

Ties are resolved by the oldest variant; if it is still a tie, by the order of the identifier. Nothing is random.

Percentage rules (the most confusing point)​

CriterionSum of the percentages
Split onlyMust add up to exactly 100% — the entire audience is split
Reads, Delivery and read, or ManualMust be less than 100% — what is left over is reserved for the winner and is sent at the end of the test

A 3-variant test with equal percentages, therefore, is 33.33 + 33.33 + 33.34 — and not 33.33 three times: the sum must add up to exactly 100%. With a winner, each variant receives percentage × audience (a minimum of 1 recipient, even with a small audience).

Duration​

The duration (minuto, hora, dia, or semana) counts from the send of the last variant and defines two moments: when the test closes and when the rest of the audience receives the winning variant. It is mandatory for all criteria, except split only.

Validations the product applies​

TypeRequirements
MessageEach variant needs an approved template on the channel, and two variants cannot use the same template
TimeEach variant needs a scheduling; at most one can be "now"; two variants cannot fall on the same minute

The campaign phases​

PhaseWhat is happening
not_startedThe test has not started yet
picking_winnerThe variants have been sent; the product is working out the result
awaiting_manual_winnerThe criterion is manual and the choice is waiting for you
winner_chosenWinner marked; the rest of the audience has been (or will be) dispatched

A variant can only be edited together with the campaign — there is no editing just one of them. And promotion to winner is only accepted in the correct phase; outside it, the response says why.

Example 1 — message test​

Goal: to know which re-engagement text customers read the most.

  1. Type Message; variant A with the template "buy again" and variant B with "we miss you".
  2. Criterion Reads; each variant with 20% of the audience; duration of 4 hours.
  3. Result: 40% of the audience received the two approaches, the product worked out which one had more reads, and the remaining 60% received the winner.

Use this format when what you want to decide is what to say.

Example 2 — time test​

Goal: to find out whether the customer replies more in the morning or at the end of the day.

  1. Type Time; variant A at 09:00, variant B at 19:00; the same template in both.
  2. Criterion Split only, 50% + 50%; no duration.
  3. Result: the entire audience received the message — half in the morning, half in the evening — and the report tells you which window had more reads or replies.

Use this format when what you want to decide is when to talk. And if, after measuring, you want to act on the result, repeat the test with the Reads criterion and 30% + 30% plus a duration: the remaining 40% receive it at the winning time.

Tracking​

The campaign screen shows the progress by state, and the campaign dashboard brings the delivery and read metrics by template and by variant.

Ad tracking​

Measuring paid Google and Meta ads that lead the customer to start the conversation is a separate feature, unrelated to broadcast campaigns. See Ad tracking.

Common errors​

ErrorWhat it means
campaign_not_dispatchableOnly drafts can be dispatched immediately
campaign_not_cancellableOnly scheduled campaigns can be canceled
campaign_not_deletableThe state does not allow deletion
template_not_approvedThe chosen template is not approved on this channel
mapping_incompleteThe fieldsMap does not cover the template or uses a non-existent column
audience_invalid_csvCSV without a header or without data rows
report_not_eligibleThe chosen report cannot be a campaign audience
schedule_in_pastScheduling date in the past

See also Troubleshooting.