This guide walks you through creating a WhatsApp campaign in Waflow. You'll learn how to select templates, choose your audience, map variables, and preview your messages before sending.
Before You Begin#
Ensure you have the following ready:
- Approved template: At least one template with "Approved" status
- Contact list: Contacts imported into Waflow
- Variable data: Data to fill in template placeholders
- Media files: If using templates with image/video/document headers
Accessing the Campaign Builder#
- Navigate to your workspace in Waflow
- Click Campaigns in the left sidebar
- Click the Create Campaign button
The campaign builder opens with a step-by-step wizard.
Step 1: Campaign Details#
Campaign Name#
Give your campaign a descriptive name:
- Be specific: "December Newsletter" not "Campaign 1"
- Include date or context: "Black Friday Sale 2024"
- Internal use only: Contacts won't see this name
Good examples:
- "Order Shipped Notifications - Dec 2024"
- "Weekly Newsletter - Issue 47"
- "Flash Sale - 24hr Only"
- "Appointment Reminders - Week 52"
Campaign Description (Optional)#
Add notes about the campaign purpose:
- Who is the audience
- What is the goal
- Any special considerations
This helps team members understand the campaign context.
Step 2: Select Template#
Browsing Templates#
The template selector shows all approved templates in your workspace:
- Filter by category (Marketing, Utility, Authentication)
- Search by template name
- Sort by date created or name
- Preview templates before selecting
Template Preview#
Click on a template to see:
- Full message preview
- Header, body, footer, and buttons
- Variables used
- Template category and language
Selecting Your Template#
- Browse or search for your template
- Click to preview
- Click Select Template to confirm
Note Only templates with "Approved" status appear in the list. If you don't see your template, check its approval status.
Template with Media Headers#
If your template has an image, video, or document header:
- You'll upload the media file later in the process
- Prepare your media file according to the requirements:
- Image: JPEG/PNG, max 5MB
- Video: MP4, max 16MB
- Document: PDF, max 100MB
Step 3: Choose Audience#
Audience Options#
Waflow offers multiple ways to define your campaign audience:
All Contacts#
Send to every contact in your workspace.
Best for:
- Broad announcements
- Company-wide updates
- Small contact lists
Caution: Consider if all contacts should receive this message.
Segments#
Select a predefined segment based on contact criteria.
Examples of segments:
- "Customers who purchased in last 30 days"
- "Newsletter subscribers"
- "VIP members"
- "Leads from website"
To use:
- Click Segments tab
- Select one or more segments
- View estimated audience size
Tags#
Filter contacts by tags you've assigned.
Examples:
- "newsletter-subscriber"
- "vip-customer"
- "product-beta-tester"
To use:
- Click Tags tab
- Select required tags
- Choose match type:
- All tags: Contact must have all selected tags
- Any tag: Contact must have at least one tag
Upload CSV#
Import a list specifically for this campaign.
CSV requirements:
- Must include phone number column
- Phone numbers with country code
- UTF-8 encoding
- Maximum 100,000 rows
To use:
- Click Upload CSV tab
- Drag and drop or browse for file
- Map CSV columns to contact fields
- Preview the import
Manual Selection#
Pick individual contacts for small, targeted sends.
Best for:
- Testing before full send
- Very small, specific audiences
- Personalized outreach
To use:
- Click Manual tab
- Search for contacts
- Click to add to audience
- Review selected list
Audience Preview#
After selecting your audience:
- View total contact count
- See sample contacts
- Verify the audience looks correct
Tip Always verify your audience size is what you expect before proceeding.
Exclusions#
Waflow automatically excludes:
- Contacts who have opted out
- Invalid phone numbers
- Numbers that previously failed
- Blocked contacts
You can add additional exclusions:
- Click Add Exclusion
- Select contacts, tags, or segments to exclude
- View updated audience count
Step 4: Map Variables#
Understanding Variable Mapping#
Template variables ({{1}}, {{2}}, etc.) need to be connected to actual data. This step tells Waflow what data to insert for each variable.
The Mapping Interface#
For each variable in your template, you'll see:
- Variable number and position in template
- Sample value from template creation
- Dropdown to select data source
Data Source Options#
Contact Fields#
Map to standard contact data:
| Field | Description |
|---|---|
| First Name | Contact's first name |
| Last Name | Contact's last name |
| Full Name | Combined first and last |
| Email address | |
| Phone | Phone number |
Custom Fields#
Map to your custom contact fields:
- Any custom fields you've created
- Business-specific data points
- Dynamic values stored per contact
Static Value#
Use the same value for all recipients:
When to use:
- Discount codes that apply to everyone
- Event dates
- Store addresses
- Website URLs
To set:
- Select "Static Value" from dropdown
- Enter the value in the text field
- Value appears the same for every recipient
Computed Values#
Dynamic values generated at send time:
| Computed Value | Description |
|---|---|
| Current Date | Today's date |
| Expiry Date | Date + offset (e.g., 7 days) |
| Random Code | Unique code per recipient |
CSV Column (if using CSV upload)#
Map to columns from your uploaded file:
- Select "CSV Column"
- Choose the column name
- Values come from each row
Mapping Example#
Template:
Hi {{1}},
Your order #{{2}} is ready for pickup at {{3}}.
Show this message at the counter.
Valid until: {{4}}
Mapping:
| Variable | Source | Value |
|---|---|---|
{{1}} |
Contact Field | First Name |
{{2}} |
Custom Field | orderNumber |
{{3}} |
Static Value | "123 Main Street" |
{{4}} |
Computed | Expiry Date (+7 days) |
Fallback Values#
For contact fields that might be empty:
- Click the gear icon next to the mapping
- Enter a fallback value
- This value is used when the field is empty
Example:
- Field: First Name
- Fallback: "there"
- Empty field result: "Hi there," instead of "Hi ,"
Formatting Options#
Apply formatting to mapped values:
| Format | Description | Example |
|---|---|---|
| Uppercase | ALL CAPS | SARAH |
| Lowercase | all lowercase | sarah |
| Capitalize | Title Case | Sarah Johnson |
| Currency | Format as money | $1,500.00 |
| Date | Format date | Dec 28, 2024 |
Step 5: Upload Media (If Required)#
If your template has a media header:
Image Upload#
- Click Upload Image
- Select your file (JPEG or PNG)
- Preview the image
- Confirm upload
Image tips:
- Use 800x418 pixels for best display
- Keep important content centered
- Optimize file size for faster delivery
Video Upload#
- Click Upload Video
- Select your MP4 file
- Wait for processing
- Preview the video
Video tips:
- Keep videos under 30 seconds
- Use clear, high-quality footage
- Include captions if possible
Document Upload#
- Click Upload Document
- Select your PDF file
- The filename will be visible to recipients
Document tips:
- Use descriptive filenames
- Keep file size reasonable
- Ensure content is mobile-readable
Dynamic Media (Advanced)#
For personalized media per recipient:
- Select "Dynamic Media URL"
- Map to a contact field containing the media URL
- Each recipient receives their specific media
Step 6: Preview Messages#
Before sending, preview how messages will appear.
Single Contact Preview#
- Click Preview Message
- Select a contact from your audience
- View the fully rendered message
- Check all variables are correctly replaced
Things to verify:
- Name is correctly inserted
- All variables have values
- Formatting looks correct
- Media displays properly
- Buttons show expected text/URLs
Multi-Contact Preview#
Preview messages for multiple contacts:
- Click Preview Multiple
- See side-by-side comparisons
- Catch any data issues before sending
Test Send#
Send a test message to yourself or team:
- Click Send Test
- Enter a phone number
- Receive the actual message
- Verify on a real device
Tip Always send a test before launching a campaign to a large audience.
Step 7: Configure Sending#
Send Immediately#
Send messages as soon as you complete setup:
- Select Send Now
- Messages begin processing immediately
- Monitor progress in real-time
Schedule for Later#
Set a specific date and time:
- Select Schedule
- Choose date and time
- Select time zone
- Campaign queues and sends automatically
For detailed scheduling options, see Campaign Scheduling.
Sending Speed#
Control the rate of message delivery:
| Speed | Messages/Minute | Best For |
|---|---|---|
| Normal | Up to 80 | Standard campaigns |
| Slow | Up to 30 | Sensitive content |
| Fast | Up to 200 | Urgent notifications |
Note Actual speed may be limited by your WhatsApp tier and rate limits.
Step 8: Review and Launch#
Final Review Checklist#
Before launching, verify:
- Campaign name is descriptive
- Correct template is selected
- Audience size is expected
- All variables are mapped
- Fallback values are set for empty fields
- Media is uploaded (if required)
- Preview messages look correct
- Schedule is set correctly (if scheduling)
Cost Estimate#
Waflow shows an estimated cost:
- Based on audience size
- Template category pricing
- Currency in your account settings
Launch Campaign#
- Review the summary screen
- Confirm all settings are correct
- Click Launch Campaign
- Confirm in the popup dialog
After Launch#
Once launched:
- Campaign status changes to "Sending"
- Real-time progress is visible
- You can pause if needed
- Monitor delivery status
Campaign Management#
Editing Drafts#
Before sending, you can edit any aspect:
- Go to Campaigns
- Find your draft campaign
- Click Edit
- Make changes
- Save or launch
Duplicating Campaigns#
Reuse campaign settings:
- Find an existing campaign
- Click the menu icon (three dots)
- Select Duplicate
- Modify as needed
- Save as new campaign
Deleting Drafts#
Remove unwanted drafts:
- Find the draft campaign
- Click the menu icon
- Select Delete
- Confirm deletion
Warning This action cannot be undone.
Troubleshooting#
Template Not Appearing#
- Verify template is approved
- Check template is in the same workspace
- Refresh the page
Audience Count is Zero#
- Verify contacts exist in workspace
- Check segment/tag filters
- Review exclusion rules
Variable Mapping Error#
- Ensure all variables are mapped
- Check for data in contact fields
- Set fallback values for empty fields
Media Upload Failed#
- Check file format and size
- Ensure stable internet connection
- Try a different file
Next Steps#
- Campaign Scheduling - Time your campaigns optimally
- Campaign Tracking - Monitor delivery and engagement
- Template Variables - Master personalization