WhatsApp campaigns in Scale let you send one message to many contacts at once, using a message template approved by Meta and sent from your own WhatsApp Business number. The screen is under Campaigns in the sidebar and has two tabs: Campaigns, where you create and track campaigns, and Templates, where you create WhatsApp templates and submit them to Meta for approval.
Every campaign goes through five steps: details, audience, template, schedule, review. Customer replies to a campaign land in the Inbox like any other conversation, and the AI assistant answers them unless you turn it off.
What you need before your first campaign
The first time you open Campaigns, a Get set up for campaigns card lists five steps. Each step is worked out from the real state of your account, so there is nothing to tick by hand. Clicking an unfinished step takes you to the place where you complete it. When all five are done the card hides itself.
| Step | When it counts as done |
|---|---|
| Connect WhatsApp | Your business number is connected to the workspace. Clicking it opens Settings → Channels |
| Verify the number | The number has finished registering with Meta and can receive messages |
| Connect Meta billing | Your own WhatsApp Business Account has a payment method. Clicking it opens Meta's billing page |
| First approved template | At least one template has been approved by Meta. Clicking it opens the template wizard |
| Import contacts | At least one contact exists. Customers who already messaged you count too |
If WhatsApp is not connected, the screen shows a Connect WhatsApp button instead of the campaign list. The connection steps are in Connect WhatsApp Business to Scale, and team permissions are covered in the Team guide.
How campaign messages are billed
Every campaign message carries two separate charges, from two different parties:
- Meta's fee for template messages. Meta charges its official per-message rate for every template message, and the rate depends on the recipient's country and the template category. Meta bills your business directly, on the payment method of your own WhatsApp Business Account. Scale never collects this fee and adds nothing on top of it.
- One message from your Scale plan per recipient. Each message actually sent to a recipient uses one message from your plan balance, like any other message in the system.
Before a campaign is launched or scheduled, Scale checks three things. If any of them fails, the launch is refused and the reason is shown on the review step:
- The plan is active. The workspace has a subscription that is not expired or suspended.
- The balance covers the whole audience. The messages left on the plan must be at least the number of recipients, so the campaign cannot stop half-way. If the balance is lower, you see the campaign size and what your plan has left.
- The WhatsApp Business Account can be billed. The number is connected, the account is not restricted by Meta, and it has a payment method.
The review step shows a line stating how many messages will be deducted from your Scale plan (one per recipient) and reminding you that Meta bills the sending on your own WhatsApp Business Account. That line does not show a money amount, because Meta's fee never passes through Scale.
If there is no payment method, a Campaigns cannot send right now warning appears at the top of the screen with a Meta billing settings link and a Re-check button. Add the payment method at Meta, then press Re-check. If Meta cannot be reached for the check, Scale allows the launch rather than blocking you on a check that did not complete. Plans and top-ups are covered in Plans and billing.
How to import contacts from a file
The Import Contacts button at the top of Campaigns opens a three-step tool: Source, Mapping, Summary. It accepts a CSV file or an Excel file in xlsx format, up to 10,000 rows per file and no larger than 20 MB. The first row must be the header row.
Pick the source and upload the file
Choose CSV or Excel, then drop the file on the upload area or press “Choose file”. Scale reads the headers and the first rows and suggests a mapping.
Map the columns and check the preview
Each column has a list where you pick the matching field. The mapping is guessed from the column names, in Arabic or English, and you can change it. The preview shows the first five rows and flags an invalid number or a duplicate row.
Review the summary and start the import
The summary shows how many rows are valid, how many are duplicates that will be merged, and how many invalid numbers will be skipped. The import runs in the background and you can stop it with “Cancel import”.
Use the result
When it finishes, press “Create a campaign for them” to start a campaign for the imported contacts, or “Download error report” for a file listing the skipped and merged rows with the reason for each.
| Field | What goes in it |
|---|---|
| Phone | The contact's WhatsApp number. The only required field; the import will not start until a column is mapped to it |
| Name | The contact's name, used by the name variable in a template |
| Country | The contact's country |
| City | The contact's city |
| Tags | One or more tags that label the contact |
| Status | The lead stage |
| Notes | Any free-text note |
| Ignore | The column is not imported |
Numbers. A number written in local format automatically gets the country code of your own business WhatsApp number, and numbers typed in Arabic digits are accepted. A number is invalid when it is empty, not a number, shorter than 8 digits, longer than 15 digits, or one digit repeated.
Duplicates. A number that appears twice in the file is counted once. A number that is already in your contacts is not created again; it is merged: new tags are always added, and the other fields are updated only when you switch on Update existing contacts from the file. An empty cell in the file never erases a stored value.
Old Excel files in xls format are not accepted; save the file as xlsx or CSV and upload it again. Direct import from Google Sheets is not available; download the sheet as CSV or Excel and upload it.
How to choose the audience for a campaign
On the Audience step of the campaign wizard you choose where the recipients come from. Four cards sit below the step: Total contacts, Selected, Duplicates, Invalid numbers. Duplicates and invalid numbers are excluded from sending automatically.
| Source | What it does |
|---|---|
| Contacts | Lists your contacts with name, number and stage. Search by name or number, and untick any row to leave it out of the campaign |
| Segments | Lists the segments saved in the workspace, with the contact count of each, so you can pick one |
| CSV | Opens the importer; when it finishes, press “Use in campaign” and the imported contacts become the audience |
| Excel | Same as CSV, for a file in xlsx format |
Segments. A segment is a set of rules, not a fixed list, so its members are worked out when the campaign audience is built and include everyone who matches the rules at that moment. The Campaigns screen only lists existing segments for you to pick; creating a new segment or editing its rules from this screen is not available yet.
Opt-outs. A contact recorded as opted out is never part of an audience, whatever the source, and the number left out for that reason is shown under the contact list.
The audience cannot be changed once the campaign has started sending.
How to create a WhatsApp template and submit it to Meta
A template is message text that Meta approves in advance, and a campaign can only send an approved template. On the Templates tab press New Template to open a five-step wizard with a live preview of the message as it appears in WhatsApp. The template is saved as a draft automatically, and “Save & exit” lets you finish it later.
Basics
Type the template name using lowercase letters, numbers and underscores only; it is an internal name customers never see. Pick the language, then the category: “Marketing” for offers and announcements, “Utility” for messages tied to a customer's activity such as an order confirmation or an appointment reminder, “Authentication” for verification codes.
Header
Optional. Choose “None”, “Text” (up to 60 characters and at most one variable), “Image” (JPG or PNG up to 5 MB), “Video” (MP4 up to 16 MB) or “Document” (PDF up to 16 MB).
Text
Write the “Body”, up to 1024 characters. A variable is a number inside double curly braces, placed where the data changes per customer, such as a name or a price. Number the variables in order, and do not start or end the body with one. Give each variable a value under “Example values for review”; Meta reads the message with them while reviewing and they are never sent to customers. The “Footer” is optional, up to 60 characters, and takes no variables.
Buttons
Optional. Press “Add button” and pick the type: “Quick reply” sends you a ready-made reply, “URL” opens a page outside WhatsApp, “Call” starts a phone call to your number. Button text is up to 25 characters with no emoji or variables. The limit is 10 buttons, with at most two URL buttons and one call button.
Review
Check the name, category and language. Any error is shown next to the field it belongs to and must be fixed first. Then press “Submit to Meta for approval”.
Authentication templates. Meta writes the text and the copy-code button of these templates. The wizard offers only two options: adding the security recommendation, and the code expiry from 1 to 90 minutes.
Generate with AI. The Generate with AI button opens a dialog where you type the business type and choose the campaign goal (Offer / Discount, New product, Announcement, Reminder, Event, Follow-up, Re-engagement), the language and the tone (Professional, Friendly, Exciting), with optional extra instructions. Press Generate 3 suggestions, pick one, then Use & edit in the wizard. The suggestion enters the wizard as a Marketing template draft that you can edit freely before submitting.
Template statuses and how to edit or delete a template
The Templates tab shows four cards: Total templates, Approved, In review, Rejected, followed by a table with the template name, category, language, status, Send quality and last update. You can search and filter by status, category and language. Send quality is Meta's rating of an approved template: High, Medium, Low or Unknown.
| Status | Meaning | What you can do |
|---|---|---|
| Draft | Saved in Scale and not yet sent to Meta | Continue editing, then submit for approval |
| In review | Submitted to Meta and waiting for a decision | Wait, or press Refresh status |
| Approved | Meta approved it | Use it in a campaign or send a test |
| Rejected | Meta rejected it; the reason is shown under its name | Continue editing, then resubmit |
| Paused | Meta paused it for low quality | It cannot be used in a campaign; duplicate it to make a new version |
| Action | What it does |
|---|---|
| View | Opens a preview with the status, quality, Meta id, last sync and last test |
| Duplicate | Creates a copy as an editable draft |
| Continue editing | Opens the wizard. Shown for drafts and rejected templates only |
| Refresh status | Asks Meta for the template's current status |
| Use in campaign | Starts a new campaign with this template. Shown for approved templates only |
| Send test | Inside View, sends the approved template to your connected number or to another number you type. It uses one message from your plan and appears in that number's conversation |
| Open in Meta | Opens the template manager at Meta |
| Delete local record | Removes the template from Scale only; Meta's copy is untouched and returns on the next sync |
Editing. Only a draft or a rejected template can be edited. An approved, in-review or paused template is Meta's copy and is not edited in place; use Duplicate to make a new draft from it and submit that for approval.
Syncing. The Sync from Meta button pulls in the templates that exist on your WhatsApp Business Account, including ones created outside Scale. The time of the last sync is shown beside it.
How to create and launch a campaign step by step
Press New Campaign to open the wizard. The campaign is saved as a draft automatically after the first step, and you can leave with “Save & exit” and come back to it from the campaign list.
Campaign details
Type the campaign name (required, up to 60 characters) and an optional description. The name is internal; your team sees it and it is never sent to customers.
Audience
Choose contacts, a segment or a file, as described in the section above. You cannot move on unless the audience has at least one valid number.
Template
Pick an approved template. You can search, filter by language and category, and refresh the list from Meta. Templates that are not approved are listed but cannot be selected. For each variable in the template choose where its value comes from: “Field: Name”, “Field: First name”, “Field: Phone”, “Field: City”, “Field: Country”, or “Fixed text…” that you type and that reaches every recipient unchanged. The preview shows the message with the data of your first recipient.
Schedule
Choose “Send now” to start right after you confirm, or “Schedule” and set the date and time. The time is in your business timezone, and a time that has already passed is refused.
Review
Check the name, audience, recipient count, template, variables and schedule; each line has an “Edit” button. Read the cost line, then press “Launch campaign” or “Schedule campaign”.
Once sending has started, the template, variables and audience cannot be changed; only the name and description can. The number of duplicates and invalid numbers that were excluded is shown on the review step.
How to pause resume or cancel a campaign
| Action | When it is available | What it does |
|---|---|---|
| Pause | The campaign is running | Stops sending; recipients not yet reached stay queued |
| Resume | The campaign is paused | Re-checks the plan and Meta billing, then continues from where it stopped; nobody gets the message twice |
| Cancel campaign | The campaign is scheduled, running or paused | Stops sending for good. Messages already sent cannot be recalled |
| Duplicate | Any campaign | Creates a copy as a draft with the same template and variables; you confirm the audience again on the Audience step before launching |
| Delete | Any campaign | Permanently deletes the campaign and all its statistics. Messages already sent are not affected |
“Pause”, “Resume”, “Duplicate” and “Delete” are in the actions menu beside each campaign and on the campaign page. “Cancel campaign” is in the menu on the campaign page.
What stops a campaign while it is sending
A campaign sends in batches in the background, and the checks are repeated for as long as it is sending. When something blocks sending, the campaign becomes Paused, not failed: the audience is intact, and the reason is shown on the campaign page and in a bell notification. Fix the cause, then press Resume.
| Cause | What happens | Fix |
|---|---|---|
| The plan ran out of messages or the subscription expired | The campaign pauses at the first recipient the balance cannot cover | Top up or renew, then resume |
| Meta refused the send on billing grounds | The campaign pauses at the first refusal instead of failing the rest of the audience | Add a valid payment method at Meta, press Re-check, then resume |
| The WhatsApp Business Account is restricted by Meta | The campaign pauses and nothing is sent | Check the account status at Meta, then resume |
| The number is disconnected | The campaign pauses because it sends from your number | Reconnect the number in Settings → Channels, then resume |
| A scheduled campaign is more than 24 hours late | It is not sent automatically and becomes paused | Review it, then resume if it is still relevant |
One message failing for a reason specific to one recipient does not stop the campaign. Scale retries automatically, up to three attempts, then marks that recipient Failed with the error reason.
How to read campaign results
Click any campaign that has started to open its page. Five cards sit at the top, then the Campaign funnel, which shows the same figures as a share of the recipients, then the recipients table. While the campaign is sending, the page updates by itself every 30 seconds.
| Metric | Meaning | Rate shown |
|---|---|---|
| Recipients | How many people the campaign goes to, after duplicates and invalid numbers are excluded | None |
| Sent | Messages Meta accepted for sending | Of the audience |
| Delivered | Messages that reached the recipient's phone | Of sent |
| Read | Messages the recipient opened | Of delivered |
| Replies | Recipients who replied within 7 days of the message | Of readers |
The Recipients table shows, for each recipient, the name, phone, delivery status, read mark, reply text and last update. Search by name or number, and filter by Delivery status (Sent, Delivered, Read, Replied, Failed, Queued) or by Replies only. Clicking a recipient opens their conversation in the Inbox. The Export button downloads a CSV file with the name, phone, status, the sent, delivered and read times, the reply and the error.
Campaign list statuses and filters
The Campaigns tab opens with five cards: Total Campaigns, Scheduled with the next date, Running with how many are sent so far, Completed with the average read rate, and Recipients for the last 30 days. Below them are a search by name and four filters: Status, Period (last 7, 30 or 90 days), Template and Audience, plus Clear filters. The table can be sorted by campaign name or creation date.
| Status | Meaning |
|---|---|
| Draft | Not launched yet. Clicking it reopens the wizard |
| Scheduled | Will start automatically at the chosen time |
| Running | Sending is in progress |
| Paused | Paused by you, or by the system for a reason shown on its page |
| Completed | No recipient is left waiting |
| Cancelled | Cancelled; what was left will not be sent |
There is no separate campaign settings page; everything about a campaign is set inside its wizard. You get a bell notification when a campaign is scheduled, when it starts, when it finishes, and when the system stops it.
Frequently asked questions
Does Scale collect Meta's fee for campaign messages?
No. Meta bills your business directly on the payment method of your own WhatsApp Business Account, and Scale neither collects that fee nor adds anything to it. What Scale deducts is one message from your plan per recipient.
Why is the Launch campaign button disabled on the review step?
The button stays disabled when the audience or the template and its variables are incomplete, or when the Meta check shows that the WhatsApp Business Account cannot be billed. If the plan balance is lower than the number of recipients, Scale refuses the launch and shows both figures.
Can I send a campaign without an approved template?
No. WhatsApp campaigns in Scale only send a template approved by Meta, and a template that is in review, rejected or paused cannot be selected.
What happens if my plan runs out of messages while a campaign is sending?
The campaign pauses at the first recipient the balance cannot cover, and the rest stay queued. After you top up or renew, press “Resume” and it continues from where it stopped without messaging anyone twice.
Can I edit an approved template?
An approved template is not edited in place, because it is Meta's copy. Use “Duplicate” to make a new draft from it, edit the draft, then submit it for approval.
Can I import contacts straight from Google Sheets?
No. Download the sheet as a CSV file or an Excel file in xlsx format, then upload it with the “Import Contacts” button.
Where do customer replies to a campaign go?
They arrive in the Inbox as normal conversations and the AI assistant answers them unless you turn it off; a reply counts towards the “Replies” metric when it comes within 7 days of the message.
