Campaign Segments – Advanced Filters
The segment builder in Marketing → Guests → Segments is the engine behind all campaigns. With 19 filter types you can create micro-segments like "Regulars with wine tag who have not visited in 30 days but have four or more bookings" – exactly the level of precision you need for targeted marketing.
The 19 filters organized in six categories:
1. Behavior (6 filters)
| Filter | Operator | Typical example |
|---|---|---|
| Total visits | ≥, ≤, =, >, < | "Visits ≥ 5" for regulars |
| Total spend | ≥, ≤, = | "Total spend ≥ 20,000 kr" for VIPs |
| Average spend | ≥, ≤, = | "Avg spend ≥ 800 kr" for premium guests |
| Days between visits | ≥, ≤, = | "Frequency ≤ 14" for bi-weekly guests |
| Last visit | within X days / more than X days ago | "Last visit more than 60 days ago" for win-back |
| First visit | within X days / more than X days ago | "First visit within 30 days" for welcome campaign |
2. Contact (4 filters)
| Filter | Operator | Typical example |
|---|---|---|
| Has email | true/false | "Has email" for building email list |
| Has phone | true/false | "Has phone" for SMS campaigns |
| SMS consent | true/false | "SMS consent = true" (GDPR requirement for SMS) |
| Email consent | true/false | "Email consent = true" (GDPR requirement for email) |
3. Tags (2 filters)
| Filter | Operator | Typical example |
|---|---|---|
| Manual tag | has / lacks (+ tag name) | "Has tag 'Wine lover'" |
| Auto-tag | has / lacks (+ tag name) | "Has auto-tag 'At-risk guest'" |
4. Bookings (3 filters)
| Filter | Operator | Typical example |
|---|---|---|
| Total bookings | ≥, ≤, = | "Bookings ≥ 4" for booking-savvy guests |
| No-shows | ≥, ≤, = | "No-shows ≥ 2" to screen out problem guests |
| Average party size | ≥, ≤, = | "Avg party size ≥ 6" for large-group guests |
5. Milestones (1 filter)
| Filter | Operator | Typical example |
|---|---|---|
| Birthday | within X days from today | "Birthday within 14 days" for birthday sends |
6. Events & Resources (3 filters, require Booking module)
| Filter | Operator | Typical example |
|---|---|---|
| Attended event | has / lacks (+ event) | "Attended event 'Wine Tasting 2026'" |
| Event attendance | ≥, ≤, = | "Event attendance ≥ 3" for event regulars |
| Booked resource | has / lacks (+ resource) | "Booked 'VIP Room'" |
7. Loyalty & Gift Cards (5 filters, require Loyalty module)
| Filter | Operator | Typical example |
|---|---|---|
| Loyalty tier | = (specific tier) | "Loyalty tier = Gold" |
| Loyalty points | ≥, ≤ | "Points ≥ 1000" for redemption campaign |
| Active gift card | true/false | "Has active gift card" |
Practical examples – real segments
Example 1: "Win-back VIP" Goal: VIP guests who have fallen off.
- Filter 1: Auto-tag has VIP
- Filter 2: Last visit more than 60 days ago
- Filter 3: SMS consent = true
Example 2: "New big spenders" Goal: New guests who spent a lot – target to build loyalty.
- Filter 1: First visit within 30 days
- Filter 2: Total spend ≥ 1500 kr
- Filter 3: Email consent = true
Example 3: "Birthday this week with email" Goal: Send personal birthday greeting with offer.
- Filter 1: Birthday within 7 days
- Filter 2: Has email = true
- Filter 3: Email consent = true
Example 4: "Booking-savvy regulars not in loyalty" Goal: Invite to loyalty program.
- Filter 1: Total bookings ≥ 5
- Filter 2: Auto-tag has Regular
- Filter 3: Loyalty tier lacks
Example 5: "Large parties for event" Goal: Target guests who usually come with larger parties.
- Filter 1: Average party size ≥ 6
- Filter 2: Total visits ≥ 2
- Filter 3: Last visit within 180 days
Example 6: "No-show risk" Goal: Extra booking confirmation.
- Filter 1: No-shows ≥ 2
- Filter 2: Total bookings ≥ 3
Important to know
- All filters combine with AND (everything must match). OR logic comes in Q3 2026.
- Segments are dynamic – the list updates automatically as guests change status. A guest who loses VIP falls out of the segment automatically.
- Live preview – while you build you see the matching guest count update in real time (max 100 in preview, full send fetches all).
- GDPR: Always add SMS consent = true when building segments for SMS campaigns, and Email consent = true for email. Otherwise you violate GDPR.
- Performance: For restaurants with >50,000 guests, complex segments with many tag filters can take a few seconds to evaluate.
This feature is part of Vendion Marketing.
Curious how it looks in practice? Read more about the product or book a short demo.
Was this article helpful?
