Whether you're promoting a new dental-care package to cat owners or reminding lapsed clients to book their annual booster, a campaign starts with two things: the right audience and a well-crafted message. This guide walks through building audience segments and creating campaigns from start to finish β covering email, WhatsApp, and AI call channels.
π‘ In short: Build an audience to define who receives the message, then create a campaign to choose the channel, write the content, and send or schedule delivery.
Why Audience Segments Matter
β οΈ Build the audience first, then the campaign. Don't skip straight to campaign creation and try to figure out recipients later β a well-defined audience segment is reusable across multiple campaigns and keeps your targeting consistent.
Benefit | How it helps |
Precision targeting | Reach exactly the right clients β filter by species, breed, last visit, health plan status, purchase history, and more |
Reusability | Build an audience once and attach it to multiple campaigns over time, without re-creating filters |
Auto-updating lists | Dynamic audiences refresh automatically as client data changes β new registrations, completed appointments, and lapsed visits are reflected without manual effort |
No duplicates | Attach multiple audiences to one campaign and Lupa deduplicates automatically β no client receives the same message twice |
Preference compliance | Lupa automatically excludes clients who have opted out of marketing communications (unless marked as essential) |
Part 1: Building an Audience Segment
Step 1: Open the Audiences Tab
Click Marketing in the top navigation bar
Select the Audiences tab
Click Create Audience A dialog appears asking for the audience name and type.
Step 2: Name Your Audience and Choose a Type
Enter a descriptive name (e.g. "Dogs overdue for vaccination", "Cat owners β North branch")
Choose the audience type:
Dynamic List β create filter rules that automatically match pets as data changes. Best for recurring campaigns
Static List β hand-pick individual pets from a list. Best for one-off targeted sends
Click Start Building Lupa creates the audience and opens the filter editor.
π‘ Naming tip: Use names that describe who is in the audience and why, not the campaign itself. A name like "Senior dogs β no visit in 6 months" is more reusable than "Spring promo list".
Step 3: Configure Audience Filters
The filter editor has two panels: Left panel β Filter builder Click the + button to add filter categories. Available filters:
Filter category | What you can filter on |
Patient Profile | Species, breed, sex, neutered status, date of birth / age range, weight, registration date, tags, deceased status |
Health Plan | Plan name, subscription status (active / inactive), membership date, non-member since date |
Client | Primary store, last visit date, client tags, account balance, has phone number, is mobile app user |
Appointment | Appointment type, status (booked / completed / cancelled), employee, appointment date, no appointment since date |
Products / Services | Specific products or services, invoiced date, not invoiced since date |
Combine filters across multiple categories to build precise targeting. For example: "Dogs (species) + No appointment since 6 months ago (appointment) + Active health plan (health plan)". Right panel β Audience members preview Shows all pets matching your current filters in real time. Use this to verify your targeting looks right before saving.
For dynamic audiences: the table updates as you add or change filters
For static audiences: use the checkboxes to select specific pets from the filtered list
Step 4: Save the Audience
Review the member count in the right panel
Click Save at the bottom of the filter panel
Lupa confirms the save and shows the audience summary You're taken to a success page with options to Create Campaign (if marketing email is configured) or Back to Audiences.
π‘ You can edit audience filters at any time. For dynamic audiences, changes take effect on the next campaign send. For static audiences, you can add or remove individual pets.
Part 2: Creating a Campaign
Step 1: Start Campaign Creation
Click Marketing in the top navigation bar
On the Campaigns tab, click Create Campaign The campaign wizard opens with four steps shown in the progress bar at the top.
Step 2: Choose Campaign Type (Step 1 of 4)
Enter a Campaign Name β this is for internal reference only and won't be shown to recipients
Select a Communication Method:
Email β send a rich HTML email with subject line and body content
AI Call β trigger automated voice calls for appointment booking
WhatsApp β send a pre-approved WhatsApp template message
Click Next
π‘ If a channel appears greyed out, hover over it to see what's missing. Email requires a verified sending domain and a marketing from-address β set these up in Settings under Email sending. WhatsApp needs an active connection. AI Call requires the AI Receptionist feature to be enabled.
Step 3: Write Your Content (Step 2 of 4)
Content configuration varies by channel: For Email campaigns:
Enter the Subject line β this is what recipients see in their inbox
Compose the email body using the rich text editor:
Format text with bold, italic, headings, and lists
Insert links and images
Use personalisation variables to customise each message to the client
Click the + button in the toolbar to insert a saved email template β this fills in both the body and the subject line in one step (only available if your practice has email templates configured in Settings)
Toggle the preview to see how the email will look to recipients
Click Next
π‘ An unsubscribe link is automatically added to every marketing email. You don't need to add one manually.
For WhatsApp campaigns:
Search for and select an approved WhatsApp template from the list on the left
Lupa shows a Template Preview on the right β an iPhone-style preview of how the message will look, with placeholders filled in using your store's real data
Below the preview, Placeholders used lists every placeholder the template contains and the value Lupa will substitute
Click Next
β οΈ WhatsApp messages must use pre-approved templates. You cannot write free-form WhatsApp messages β templates must be created and approved in your Meta Business Manager first. Lupa pulls the approved templates automatically.
β οΈ Unsupported placeholders block sending. If the template you select uses a placeholder Lupa cannot fill for campaigns (for example, one that requires a specific patient's name), an Unsupported placeholders warning appears and the Next button is disabled. Choose a different template or update the template in Meta to remove the unsupported placeholder.
For AI Call campaigns:
Select a Visit Type from the dropdown β this determines the script and flow for the automated call
Preview the AI call flow to see what the conversation will look like
Click Next
Step 4: Select Audiences and Schedule (Step 3 of 4)
The screen is split into two columns: Left column β Audience selection:
Browse or search your existing audiences
Tick the checkbox next to each audience you want to include
Optionally click Create New Audience to build one on the spot (opens the audience creation dialog) You can select multiple audiences β Lupa combines them and deduplicates automatically. Right column β Scheduling:
Choose when to send:
Send Now β delivers the campaign immediately after you confirm
Schedule for Later β pick a specific date and time
If scheduling, select the date and time using the pickers
Click Next The recipient count updates in real time as you select audiences, showing how many clients will actually receive the message based on:
Valid contact details (email address for email, phone number for WhatsApp/AI call)
Communication preferences (marketing opt-in status)
Deduplication across audiences
π‘ If the recipient count is lower than expected, check that your clients have the right contact details and haven't opted out of marketing communications.
Step 5: Review and Send (Step 4 of 4)
The review screen shows a complete summary: Campaign Details panel:
Recipients β lists the audience names attached
Channel β Email, WhatsApp, or AI Call
Scheduled send time β immediate or the chosen date/time
Essential communication status Content Preview panel:
Full preview of the email, WhatsApp template, or AI call flow
Personalisation variables shown with sample data so you can verify they look right
Review all details carefully
Click Create Campaign to confirm
β οΈ Immediate sends can't be recalled. If you chose "Send Now", the campaign starts delivering as soon as you click Create Campaign. Double-check everything on the review screen β especially the audience and content. If in doubt, schedule for 15 minutes ahead to give yourself a window to cancel.
How does campaign delivery work behind the scenes?
How does campaign delivery work behind the scenes?
Lupa processes recipients in batches of 100. For email campaigns, each batch is queued to the email delivery service (SES or Resend) as a single transaction β if one email in a batch fails, the others in that batch still send. The campaign status updates to Sent as long as at least one message delivers successfully. If every single message fails, the status becomes Failed.
What about scheduled campaigns?
What about scheduled campaigns?
Scheduled campaigns are stored with a future delivery time. A background process checks for due campaigns and triggers delivery at the scheduled time. The campaign moves from Scheduled to Sent (or Failed) once processing completes.
Managing Existing Campaigns
Editing a Scheduled Campaign
Only campaigns with Scheduled status can be edited:
Click the campaign row to open its detail page
Modify the name, content, audiences, or schedule as needed
Click Update Campaign to save changes
Cancelling a Scheduled Campaign
Open the campaign or click the ... menu on the campaign row
Select Cancel
Confirm in the dialog The campaign moves to Cancelled status and no messages are sent. This action cannot be undone β to resend, create a new campaign.
Archiving Campaigns
Archive campaigns to keep your list tidy without deleting history:
Click the ... menu on any campaign row
Select Archive Archived campaigns can be restored from the same menu.
Tips for Creating Great Campaigns
β Best practices from practices that run Lupa:
Write subject lines under 50 characters β they're more likely to be read in full on mobile devices
Use personalisation variables to make messages feel personal, not mass-produced
Keep email content focused on one clear call to action β "Book your pet's dental check" is better than a newsletter covering five topics
Test with a small static audience first (e.g. just your own email) before sending to hundreds of clients
Build reusable dynamic audiences for common segments like "overdue vaccinations" or "inactive clients" β attach them to future campaigns without rebuilding filters
After sending, check the analytics tab to see what resonated β use those insights for your next campaign
Troubleshooting
Problem | Solution |
Email channel is greyed out | Your store needs a verified sending domain and a marketing from-address configured. Click Open email settings in the banner on the Marketing & Campaigns page, or go to Settings and find the Email sending section to add a domain and set your from-addresses. |
WhatsApp channel is greyed out | Either Advanced WhatsApp isn't enabled for your company, or there's no active WhatsApp Business connection. Check with your administrator. |
Recipient count is 0 or unexpectedly low | Check that your audience filters actually match clients, that those clients have valid contact details (email for email campaigns, phone for WhatsApp/AI call), and that they haven't opted out of marketing communications. |
Can't edit a campaign | Only Scheduled campaigns can be edited. Campaigns with Sent, Failed, or Cancelled status are read-only. Create a new campaign instead. |
Campaign shows as Failed | All message deliveries failed. Check that your email/WhatsApp configuration is correct and that recipients have valid contact details. Create a new campaign to retry. |
WhatsApp template not appearing | Templates must be created and approved in your Meta Business Manager before they appear in Lupa. Check that the template status is Approved in Meta and that the correct WhatsApp Business Account is connected. |
"Unsupported placeholders" warning on a WhatsApp template | The selected template contains a placeholder Lupa cannot fill automatically for campaigns. Pick a different template, or edit the template in Meta's WhatsApp Manager to remove the unsupported placeholder. Only placeholders Lupa can resolve from your store and client data are supported. |
Frequently Asked Questions
How many audiences can I attach to a single campaign?
How many audiences can I attach to a single campaign?
There's no fixed limit. You can attach as many audiences as needed β Lupa merges them and removes duplicates so each client receives the message once.
Can I combine dynamic and static audiences in one campaign?
Can I combine dynamic and static audiences in one campaign?
Yes. You can mix audience types freely. Lupa combines all members across all attached audiences and deduplicates by client.
What happens if I update an audience's filters after attaching it to a scheduled campaign?
What happens if I update an audience's filters after attaching it to a scheduled campaign?
The campaign uses the audience membership at the time of sending, not at the time of creation. If you update a dynamic audience's filters before the scheduled send time, the campaign will target the updated list.
Can I send to clients who have opted out of marketing?
Can I send to clients who have opted out of marketing?
Only if you tick the Essential Communication checkbox during campaign creation. This should only be used for genuinely essential messages like safety notices or account updates β not promotions.
Is there a limit on how many recipients a campaign can have?
Is there a limit on how many recipients a campaign can have?
There's no hard recipient limit in Lupa. Campaigns are processed in batches of 100, so large sends are handled efficiently. However, your email provider (SES or Resend) may have sending rate limits β contact your administrator if you're planning a very large send.
Can I clone or duplicate an existing campaign?
Can I clone or duplicate an existing campaign?
Campaign cloning isn't currently available. To resend similar content, create a new campaign and reuse the same audiences. For email content, you can copy the HTML from a previous campaign's detail page.
