Skip to main content

Campaign Overview

What it is

Campaigns are BotBat's primary tool for delivering targeted marketing messages to groups of contacts across multiple communication channels, including WhatsApp, SMS, and email. A campaign bundles together an audience segment, a message template, a delivery channel, and an optional schedule into a single, trackable unit of outreach. Every campaign moves through a defined lifecycle that lets you monitor progress from initial creation all the way through to final delivery analytics.

The campaign system is designed around the principle that every message sent should be measurable. Rather than sending one-off broadcasts with no tracking, campaigns capture delivery status at the per-contact level, record engagement events (opens, clicks, replies), and surface aggregated metrics in real-time dashboards. This gives marketing teams the data they need to iterate on messaging strategy, identify underperforming segments, and optimize send times for maximum engagement.

Campaigns also support A/B testing natively. You can split your audience into variant groups, assign different message templates or content to each group, and let BotBat automatically determine the winning variant based on a metric you choose (open rate, click rate, or reply rate). The winning variant can then be sent to the remaining audience, ensuring that your best-performing content reaches the largest possible group.

Campaigns list page showing campaigns in various lifecycle states including draft, scheduled, sent, and completed

Campaign lifecycle

Every campaign transitions through a series of states from creation to completion. Understanding these states helps you manage active campaigns and troubleshoot delivery issues when they arise.

StateDescriptionActions available
DraftThe campaign is being configured. No messages have been queued or sent.Edit, clone, delete, launch
ScheduledThe campaign is finalized and queued for delivery at a specific future date and time.Cancel schedule, edit (returns to draft), clone
SendingMessages are actively being dispatched to the audience. Delivery is in progress.View real-time progress, pause (if supported by channel)
SentAll messages have been dispatched to the channel provider. Delivery confirmations may still be arriving.View analytics, clone, export
CompletedAll delivery callbacks have been received and analytics are finalized.View analytics, clone, export, compare
Close-up of campaign status badges showing draft, scheduled, sending, sent, and completed indicators

Supported channels

BotBat supports three messaging channels within campaigns. Each channel has different requirements for templates, content formatting, and delivery tracking. The table below summarizes the key differences to help you choose the right channel for your use case.

FeatureWhatsAppSMSEmail
Template approval requiredYes (Meta approval, 24-48 hours)NoNo
Rich media supportImages, documents, buttons, list messagesPlain text onlyFull HTML, images, attachments
Open trackingRead receipts (if enabled by recipient)Not supportedPixel-based tracking
Click trackingButton tap eventsLink shortener trackingLink click tracking
Reply trackingFull reply captureFull reply captureReply detection
Typical delivery speedHigh (batched by Meta)High (carrier-dependent)Very high
Rate limitsMeta-enforced tier limitsCarrier-specific throttlingProvider-specific (SES, SendGrid)

When deciding which channel to use, consider your audience's preferences and the nature of your content. WhatsApp is ideal for conversational, high-engagement messages. SMS works best for short, time-sensitive alerts. Email is suited for longer-form content such as newsletters, product announcements, or content that benefits from rich formatting.

Audience targeting

The audience for a campaign is defined by selecting a contact segment. Segments are reusable groups of contacts built using BotBat's query builder, which lets you filter contacts by demographic attributes, behavioral events, tags, custom properties, and more. You can preview the number of contacts that match a segment before attaching it to a campaign, which helps you avoid the common mistake of launching to an empty or unexpectedly small audience.

For campaigns that target multiple segments, you can either create a combined segment using OR logic in the query builder, or clone the campaign once per segment to keep analytics separated. The latter approach is useful when you need to compare performance across distinct audience groups.

Campaign detail summary page showing channel, audience segment, template, and schedule configuration

A/B testing

A/B testing allows you to experiment with different message variants within a single campaign. You define two or more variants (each with its own template or content), specify the percentage of your audience that should receive each variant, and choose the metric that determines the winner. Once the test period completes, BotBat can automatically send the winning variant to the remaining audience.

This feature is particularly powerful for optimizing WhatsApp button text, email subject lines, or SMS call-to-action phrasing. By testing on a small portion of your audience first, you reduce the risk of underperforming content reaching your entire contact list.

A/B test configuration panel showing variant options, audience split percentages, and winning metric selector

When to use

Use campaigns when you need to send a message to a defined group of contacts and track the results. Common scenarios include promotional outreach (marketing offers, product launches, seasonal sales), scheduled communications (newsletters, weekly digests, event reminders), performance-driven messaging where you need delivery and engagement metrics, and A/B testing to optimize message content before a full rollout.

Campaigns are not the right tool for one-to-one transactional messages (use the Transactional API instead) or for automated sequences triggered by user behavior (use Journeys for those).

Common pitfalls

  • Segment with zero contacts: If the selected segment resolves to zero contacts at send time, the campaign will fail. Always preview your segment size before launching. Segment membership is evaluated at send time, not at configuration time, so contacts added or removed between scheduling and delivery will affect the final audience.
  • Unapproved WhatsApp templates: WhatsApp requires that all message templates be approved by Meta before they can be used in campaigns. Submitting a campaign with a pending or rejected template will block delivery entirely. Allow 24 to 48 hours for template approval and check the template status in the Templates section before linking it to a campaign.
  • Timezone mismatch: Scheduled campaigns use the account-level timezone configured in Settings, not your browser's local time. If you are in a different timezone than your account setting, the campaign will send at a different clock time than you expect. Confirm your timezone setting before scheduling.
  • Rate limit throttling: Channels enforce rate limits, especially WhatsApp and SMS. Large campaigns are batched automatically by BotBat, so delivery to tens of thousands of contacts may take several hours rather than completing instantly. Monitor the Sending state to track progress.
  • Duplicate sends to contacts: Launching the same campaign twice is not possible, but creating a similar campaign without checking recent send history can result in contacts receiving near-identical messages in a short timeframe. Review your recent campaign history before launching a new campaign with a similar audience.
tip

Use the Campaign Analytics comparison feature to benchmark new campaigns against previous ones. This helps you identify trends in engagement rates over time and optimize your messaging strategy based on real performance data rather than assumptions.

  • Campaigns Overview
  • Campaign List
  • Campaign Lifecycle
  • Supported Channels
  • Audience Targeting