Managing campaigns with priorities and weekly contact limit

Published April 13, 2026
Components
Difficulty

When multiple campaigns are running within a single week, a customer may qualify for more than the desired number of messages. Without proper control, this leads to over-communication and a poor customer experience.

This use case describes how to orchestrate five weekly campaigns across three priority levels while enforcing a maximum of three messages per customer per week. The mechanism ensures that the highest-priority campaigns are always delivered first (as long as the weekly limit allows), and lower-priority campaigns only go out if the weekly contact limit has not yet been reached.

Note:

The example in this use case uses five campaigns and a limit of three messages per week, but both values are fully configurable. You can adjust the number of campaigns, priority levels, and the weekly cap to match your business needs.

This use case focuses on the mobile push channel, but the same logic and architecture can be applied to other communication channels such as email, SMS, or web push.

The key principles of this approach are:

  • Each campaign has an assigned priority level (high, medium, or low).
  • Each campaign has a specific scheduled send date and time within the week.
  • The system runs cyclically (every hour) and checks whether the current moment matches a campaign’s planned send time.
  • Before sending, the system verifies how many messages the customer has already received and how many higher-priority campaigns the customer still qualifies for.
  • Once the weekly limit is reached, all remaining campaigns are blocked for that customer.

This approach separates the scheduling logic (when a campaign should go out) from the priority logic (which campaigns are most important), and combines both with a hard weekly cap.

Prerequisites


  • Implement tracking code on your website.
  • Implement Synerise SDK in your mobile app.
  • Configure mobile push as a communication channel.
  • Define the criteria used to qualify customers for each campaign. These can be based on behavioral events, customer attributes, segmentation rules, or any combination of conditions available in Synerise. The first step of this process involves creating segmentations that define the audience for each campaign.
  • Create a mobile push template that will be used later in workflows.

Process


In this use case, you will go through the following steps:

  1. Create individual campaign segmentations — one per campaign, defining who qualifies.
  2. Create expressions — for current timestamp comparison and counting higher-priority campaign eligibility.
  3. Create workflows — one per priority group, running cyclically and sending mobile pushes when conditions are met. These must be created before aggregates so that you have the diagram IDs needed in the next step.
  4. Create aggregates for counting sent pushes — to track how many messages each customer has already received per priority level and in total.
  5. Create priority-level segmentations with split audience — one per priority group, combining campaign eligibility, send-time matching, and contact-limit checks.

Create individual campaign segmentations


Create five separate segmentations, one for each campaign planned for the week. Each segmentation defines the audience that qualifies for a given campaign. The conditions can be based on any criteria available in Synerise — behavioral events, customer attributes, transactional data, or other segmentation rules.

In this example, the five campaigns and their priority assignments are:

  • Campaign A (high priority): customers who recently made a high-value purchase (for example, order total above 500) — targeting premium buyers with an exclusive loyalty offer
  • Campaign B (high priority): customers who abandoned their cart in the last 7 days — a recovery campaign with a time-limited discount
  • Campaign C (medium priority): customers who browsed a specific product category more than 3 times without purchasing — a nudge campaign with personalized recommendations
  • Campaign D (medium priority): customers who haven’t made a purchase in the last 30 days but were active on the website — a re-engagement campaign
  • Campaign E (low priority): customers who signed up for the newsletter in the last 14 days — a welcome series follow-up

The priority labels used throughout this use case are: high (priority 1), medium (priority 2), and low (priority 3).

Important:

The segmentation conditions and business scenarios presented here are only illustrative examples. In practice, they can be freely defined and adjusted based on user behavior, available data, and any additional parameters relevant to your setup. You can tailor these conditions to reflect your specific business logic, campaign goals, and communication strategy.

The number of values returned by expressions (for example, 0, 1, or 2 for a two-campaign priority level) is specific to this example and depends on how many campaigns you assign to each priority level in your setup.

Create Campaign A segmentation

  1. Go to Analytics icon Decision Hub > Segmentations > New segmentation.
  2. Enter the name of the segmentation, for example Campaign A - high priority.
  3. Click Add condition.
  4. From the dropdown list, select the transaction.charge event.
  5. Click the + where button, from the Choose parameter dropdown menu, choose $totalAmount.
  6. From the Choose operator dropdown, choose More than.
  7. In the next field, type the value 500.
  8. Using the date picker in the lower-right corner, set the time range to Last 30 days. Confirm by clicking Apply.
  9. Save the segmentation.
Configuration of the Campaign A segmentation with the transaction.charge event and $totalAmount parameter
Configuration of the Campaign A segmentation

Create Campaign B segmentation

  1. Go to Analytics icon Decision Hub > Segmentations > New segmentation.
  2. Enter the name of the segmentation, for example Campaign B - high priority.
  3. Click Add condition.
  4. Define the conditions that identify customers who qualify for this campaign (for example, customers who performed the product.addToCart event but did not complete a purchase within the last 7 days).
  5. Using the date picker in the lower-right corner, set the appropriate time range. Confirm by clicking Apply.
  6. Save the segmentation.

Create Campaign C segmentation

  1. Go to Analytics icon Decision Hub > Segmentations > New segmentation.
  2. Enter the name of the segmentation, for example Campaign C - medium priority.
  3. Click Add condition.
  4. Define the conditions that identify customers who qualify for this campaign (for example, customers who visited a specific product category page more than 3 times without purchasing).
  5. Using the date picker in the lower-right corner, set the appropriate time range. Confirm by clicking Apply.
  6. Save the segmentation.

Create Campaign D segmentation

  1. Go to Analytics icon Decision Hub > Segmentations > New segmentation.
  2. Enter the name of the segmentation, for example Campaign D - medium priority.
  3. Click Add condition.
  4. Define the conditions that identify customers who qualify for this campaign (for example, customers who were active on the website but haven’t purchased in the last 30 days).
  5. Using the date picker in the lower-right corner, set the appropriate time range. Confirm by clicking Apply.
  6. Save the segmentation.

Create Campaign E segmentation

  1. Go to Analytics icon Decision Hub > Segmentations > New segmentation.
  2. Enter the name of the segmentation, for example Campaign E - low priority.
  3. Click Add condition.
  4. Define the conditions that identify customers who qualify for this campaign (for example, customers who signed up for the newsletter in the last 14 days).
  5. Using the date picker in the lower-right corner, set the appropriate time range. Confirm by clicking Apply.
  6. Save the segmentation.

Create expressions


Expressions are central to this use case. They provide real-time computed values used inside segmentation conditions. You will create the following expressions:

  • Current timestamp expression — returns the current date and hour so the system can match it against each campaign’s planned send time.
  • High priority campaign count expression — counts how many high priority campaigns the customer qualifies for (used in medium priority segmentations).
  • Medium priority campaign count expression — counts how many medium priority campaigns the customer qualifies for.
  • Combined high + medium priority campaign count expression — sums the two above expressions (used in low priority segmentations).

Create the current timestamp expression


This expression returns the current date and hour in the format yyyy-mm-ddThh, which allows the system to compare the current moment against each campaign’s scheduled send time. The first 13 characters of the timestamp are used so that when the workflow runs every hour, it matches exactly the planned send hour.

  1. Go to Behavioral Data Hub icon Behavioral Data Hub > Expressions > New expression.
  2. Enter the name, for example Now (yyyy-mm-dd hh).
  3. Set the expression type to Attribute.
  4. In the Formula definition section, build the formula using the Regexp function.
  5. Then add function Now.
  6. Add the Constant pattern to extract the first 13 characters of the current timestamp, adding it as the value: ^.{13}.
  7. Save the expression.
Configuration of the current timestamp expression with Regexp and Now functions
Configuration of the current timestamp expression
Important: The regular expression pattern ^.{13} extracts the first 13 characters of the current timestamp, which corresponds to the date and hour portion (for example, 2026-04-30T08). This expression is shared across all segmentation conditions and ensures that each segment (group within a segmentation) only returns customers at the exact planned hour of a campaign’s send time. Every segmentation references this same expression, which means that it acts as an alternative schedule — the segmentation only becomes active when the current timestamp matches the planned send date and hour.

Create the high priority campaign count expression


This expression calculates how many high priority campaigns the customer qualifies for. It checks whether the customer belongs to the Campaign A segmentation and the Campaign B segmentation, and sums the results. The output for this specific case is a number (0, 1, or 2) representing the potential number of high priority messages the customer may receive.

  1. Go to Behavioral Data Hub icon Behavioral Data Hub > Expressions > New expression.
  2. Enter the name, for example How many high priority campaigns user qualifies for.
  3. Set the expression type to Attribute.
  4. Build the formula to check membership in the Campaign A and Campaign B segmentations and return the sum.
  5. Save the expression.
Configuration of the expression counting high priority campaign eligibility
Configuration of the high priority campaign count expression

Create the medium priority campaign count expression


This expression calculates how many medium priority campaigns the customer qualifies for. It checks whether the customer belongs to the Campaign C segmentation and the Campaign D segmentation, and sums the results. The output for this specific case is a number (0, 1, or 2) representing the potential number of medium priority messages the customer may receive.

  1. Go to Behavioral Data Hub icon Behavioral Data Hub > Expressions > New expression.
  2. Enter the name, for example How many medium priority campaigns user qualifies for.
  3. Set the expression type to Attribute.
  4. Build the formula to check membership in the Campaign C and Campaign D segmentations and return the sum. Build it in the same way as the previous expression, replacing the high priority segmentations with medium priority ones.
  5. Save the expression.
Configuration of the expression counting medium priority campaign eligibility
Configuration of the medium priority campaign count expression

Create the combined high and medium priority campaign count expression


This expression calculates how many campaigns the customer qualifies for across both high and medium priority levels. It sums the results of the high priority campaign count expression and the medium priority campaign count expression. The output is used in low priority segmentations to determine the remaining contact slots.

  1. Go to Behavioral Data Hub icon Behavioral Data Hub > Expressions > New expression.
  2. Enter the name, for example How many high + medium priority campaigns user qualifies for.
  3. Set the expression type to Attribute.
  4. Build the formula as a sum of the two previously created expressions: the high priority campaign count expression and the medium priority campaign count expression, as presented on the screen below.
  5. Save the expression.
Configuration of the expression counting high + medium priority campaign eligibility
Configuration of the combined high + medium priority campaign count expression

Create workflows


Create three workflows — one for each priority level. Each workflow uses the corresponding split audience segmentation (which you will create in a later step) and runs cyclically every hour. When the current hour matches a campaign’s scheduled send time and all conditions are met, the mobile push is sent.

Important:

Workflows must be created before the aggregates because the aggregates need the diagram IDs of these workflows to correctly scope the push count. At this stage, create each workflow with its schedule and structure (Audience node, Send Mobile Push nodes, and End nodes). You can leave the split audience segmentation reference empty or use a placeholder — you will update it after creating the priority-level segmentations with split audience in a later step.

After saving each workflow, note the diagram ID from the workflow URL (the part after /automation-diagram/). You will need these IDs in the next step when configuring the aggregates.

Create the workflow for high priority campaigns


  1. Go to Automation Hub icon Automation Hub > Workflows > New workflow.
  2. Enter the name of the workflow, for example Split audience - high priority.

Define the Audience trigger node

  1. Start the workflow with the Audience node. In the configuration:
    1. Set the Action limit to 1 times per workflow.
    2. In the Schedule section, select Repeat runs.
    3. Select the timezone, for example Europe/Warsaw (Central European Standard Time) UTC+01:00.
    4. Set the interval type to Interval.
    5. Set the interval to 1 Hour.
    6. Set the Begin at date to the start of the campaign week.
    7. In the Audience section, select Split audience.
    8. Select the Split audience - high priority segmentation (you will create this segmentation in a later step — for now, you can leave this field empty or use a placeholder and update it later).
    9. Map Segment A to Path A (Campaign A).
    10. Map Segment B to Path B (Campaign B).
  2. Click Apply.

Configure Path A (Campaign A)

  1. On Path A (Segment A), add the Send Mobile Push node.
  2. Configure the mobile push message content for Campaign A according to your business needs.
  3. Add the End node after the Send Mobile Push node.

Configure Path B (Campaign B)

  1. On Path B (Segment B), add the Send Mobile Push node.

  2. Configure the mobile push message content for Campaign B.

  3. Add the End node.

  4. In the upper right corner, click Save & Run.

The complete high priority workflow with two paths for Campaign A and Campaign B
The complete high priority workflow configuration

Create the workflow for medium priority campaigns


  1. Go to Automation Hub icon Automation Hub > Workflows > New workflow.
  2. Enter the name, for example Split audience - medium priority.
  3. Configure the Audience node with the same settings as the high priority workflow:
    • Action limit: 1
    • Repeat runs at an interval of 1 Hour
    • Begin at: the start of the campaign week
    • Split audience using the Split audience - medium priority segmentation (to be created in a later step)
    • Map Segment C → Path A, Segment D → Path B
  4. On each path, add a Send Mobile Push node followed by an End node.
  5. Click Save & Run.
The complete medium priority workflow with two paths for Campaign C and Campaign D
The complete medium priority workflow configuration

Create the workflow for low priority campaigns


  1. Go to Automation Hub icon Automation Hub > Workflows > New workflow.
  2. Enter the name, for example Split audience - low priority.
  3. Configure the Audience node with the same settings:
    • Action limit: 1
    • Repeat runs at an interval of 1 Hour
    • Begin at: the start of the campaign week
    • Select the Split audience - low priority segmentation (to be created in a later step)
  4. Add a Send Mobile Push node followed by an End node.
  5. Click Save & Run.
The complete low priority workflow with one active path for Campaign E
The complete low priority workflow configuration
Important: The automation runs every hour and checks the segmentation conditions at each iteration. Since the Now (yyyy-mm-dd hh) expression is compared against the planned send timestamp, the segment will only return customers at the exact hour the campaign is scheduled. At all other hours, the segment will be empty and no messages will be sent.

Create aggregates for counting sent pushes


To enforce the weekly contact limit, you need aggregates that count how many push notifications have already been sent to each customer. You will create three aggregates — one scoped to the high priority workflow, one scoped to the medium priority workflow, and one that counts all pushes sent across all campaign workflows.

Each aggregate is based on the push.send event and uses the diagramId parameter to scope the count to the relevant workflow. The diagramId is the unique identifier of a workflow and can be found in the URL when viewing the workflow in the Automation Hub (the part of the URL that comes after /automation-diagram/).

Important: This step requires the diagram IDs of the workflows you created in the previous step. If you haven’t noted them yet, open each workflow in the Automation Hub and copy the ID from the URL.

Create the aggregate for high priority sent pushes


This aggregate counts how many push notifications were sent to a customer from the high priority workflow.

  1. Go to Behavioral Data Hub icon Behavioral Data Hub > Live Aggregates > Create aggregate.
  2. As the aggregate type, select Profile.
  3. Enter the name of the aggregate, for example Number of sent pushes - high priority.
  4. Click Analyze profiles by and select Count.
  5. From the Choose event dropdown list, select the push.send event.
  6. Click the + where button.
  7. From the Choose parameter dropdown list, select diagramId.
  8. From the Choose operator dropdown list, select Equal.
  9. In the value field, enter the diagram ID of the high priority workflow (for example, 71526b66-51e1-47b8-9ecb-6cc61f821dec). You can find this ID in the URL of the workflow in the Automation Hub.
  10. Define the period to Last 30 days.
  11. Save the aggregate.
Configuration of the aggregate counting sent pushes for the high priority workflow
Configuration of the aggregate counting sent pushes for the high priority workflow
Note: The time range of Last 30 days is intentionally set broader than the actual campaign week to ensure coverage regardless of which day the aggregate is evaluated. Since the workflow and segmentations are designed to operate within a single week, the aggregate will in practice only count pushes sent during that week. A broader time range provides a safety margin without affecting the logic.

Create the aggregate for medium priority sent pushes


This aggregate counts how many push notifications were sent to a customer from the medium priority workflow. The configuration is identical to the high priority aggregate, but uses the diagram ID of the medium priority workflow.

  1. Go to Behavioral Data Hub icon Behavioral Data Hub > Live Aggregates > Create aggregate.
  2. As the aggregate type, select Profile.
  3. Enter the name of the aggregate, for example Number of sent pushes - medium priority.
  4. Click Analyze profiles by and select Count.
  5. From the Choose event dropdown list, select the push.send event.
  6. Click the + where button.
  7. From the Choose parameter dropdown list, select diagramId.
  8. From the Choose operator dropdown list, select Equal.
  9. In the value field, enter the diagram ID of the medium priority workflow.
  10. Define the period to Last 30 days.
  11. Save the aggregate.

Create the aggregate for all sent pushes


This aggregate counts how many push notifications were sent to a customer across all campaign workflows combined. Unlike the per-priority aggregates, this one uses the In array operator to match against the diagram IDs of all three priority workflows at once.

  1. Go to Behavioral Data Hub icon Behavioral Data Hub > Live Aggregates > Create aggregate.
  2. As the aggregate type, select Profile.
  3. Enter the name of the aggregate, for example Number of sent pushes - all.
  4. Click Analyze profiles by and select Count.
  5. From the Choose event dropdown list, select the push.send event.
  6. Click the + where button.
  7. From the Choose parameter dropdown list, select diagramId.
  8. From the Choose operator dropdown list, select In array.
  9. In the value field, enter the diagram IDs of all three priority workflows (the high priority workflow ID, the medium priority workflow ID, and the low priority workflow ID).
  10. Define the period to Last 30 days.
  11. Save the aggregate.
Configuration of the aggregate counting all sent pushes across campaign workflows
Configuration of the aggregate counting all sent pushes across all campaign workflows
Note: The push.send event is automatically generated by Synerise when a mobile push notification is sent through a workflow. The diagramId parameter identifies the specific workflow (diagram) that triggered the send.

Create priority-level segmentations with split audience


Create three segmentations — one per priority level — that combine campaign eligibility, scheduled send-time matching, and weekly contact-limit enforcement. Each segmentation uses the split audience feature to create separate segments (groups within a segmentation) for each campaign within the priority level.

Important: Within a single priority level, only one campaign can be scheduled per hour. The split audience mechanism processes segments sequentially — if two campaigns within the same priority are scheduled for the same hour, only the first segment will be processed. For example, if Campaign A and Campaign B are both high priority, Campaign A could be scheduled for 10:00 and Campaign B no earlier than 11:00.

In the examples below, all campaigns are planned within a single week (Monday through Friday). The specific dates used here are illustrative — adjust them to match your actual campaign week.

Note: Each split audience segmentation groups campaigns by priority level, not by campaign name. This means that the segments within each segmentation are labeled sequentially (Segment A, Segment B, etc.) and correspond to the campaigns assigned to that priority level. For example, in the high priority segmentation, Segment A corresponds to Campaign A and Segment B to Campaign B. In the medium priority segmentation, Segment A corresponds to Campaign C and Segment B to Campaign D. In the low priority segmentation, Segment A corresponds to Campaign E. The segment labels (A, B) are internal to each segmentation and reset for each priority level.

Create the high priority split audience segmentation


This segmentation contains two segments — one for Campaign A and one for Campaign B. Since high priority is the highest level, these campaigns are sent as long as the scheduled time matches and the weekly limit has not been exceeded. No checks against higher-priority campaigns are needed.

  1. Go to Analytics icon Decision Hub > Segmentations > New segmentation.
  2. Enter the name, for example Split audience - high priority.

Configure Segment A (Campaign A)

  1. In the first segment, add the following conditions connected by the AND operator:
    1. Condition A — Has property: Campaign A - high priority segmentation Is true. This checks if the customer qualifies for Campaign A.
    2. Condition B — Has property: Now (yyyy-mm-dd hh) expression Contain the value representing Campaign A’s planned send date and hour (for example, 2026-04-15T10). This ensures the campaign only triggers at the exact scheduled hour.
    3. Condition C — Has property: Number of sent pushes - high priority aggregate Less than 3. This enforces the weekly contact limit within the high priority workflow.
    4. Condition D — Has property: Number of sent pushes - all aggregate Less than 3. This enforces the overall weekly contact limit.
  2. Click Apply.

Configure Segment B (Campaign B)

  1. Click Add segment and add the following conditions connected by the AND operator:
    1. Condition A — Has property: Campaign B - high priority segmentation Is true.
    2. Condition B — Has property: Now (yyyy-mm-dd hh) expression Contain the value representing Campaign B’s planned send date and hour (for example, 2026-04-16T10).
    3. Condition C — Has property: Number of sent pushes - all aggregate Less than 3.
    4. Condition D — Has property: Number of sent pushes - high priority aggregate Less than 3.
  2. Save the segmentation.
Configuration of segments in the high priority split audience segmentation
Configuration of segments in the high priority split audience segmentation
Important: After saving this segmentation, go back to the high priority workflow and update the Audience node to reference this segmentation. Do the same for the medium and low priority workflows after creating their respective segmentations.

Create the medium priority split audience segmentation


This segmentation contains two segments — one for Campaign C and one for Campaign D. In addition to the send-time and contact-limit checks, each segment includes a condition that verifies how many high priority campaigns the customer qualifies for. This prevents medium priority campaigns from consuming contact slots that should be reserved for higher-priority ones.

  1. Go to Analytics icon Decision Hub > Segmentations > New segmentation.
  2. Enter the name, for example Split audience - medium priority.

Configure Segment A (Campaign C)

  1. In the first segment, add the following conditions connected by the AND operator:
    1. Condition A — Has property: Campaign C - medium priority segmentation Is true.
    2. Condition B — Has property: Now (yyyy-mm-dd hh) expression Contain the value representing Campaign C’s planned send date and hour (for example, 2026-04-13T09).
    3. Condition C — Has property: Number of sent pushes - all aggregate Less than 3.
    4. Condition D — Has property: How many high priority campaigns user qualifies for expression Less than 3. This ensures that the total number of potential high priority sends plus this send would not exceed the weekly limit.
    5. Condition E — Has property: Number of sent pushes - high priority aggregate Less than 3.
  2. Click Apply.

Configure Segment B (Campaign D)

  1. Click Add segment and add the following conditions connected by the AND operator:
    1. Condition A — Has property: Campaign D - medium priority segmentation Is true.
    2. Condition B — Has property: Now (yyyy-mm-dd hh) expression Contain the value representing Campaign D’s planned send date and hour (for example, 2026-04-13T14).
    3. Condition C — Has property: Number of sent pushes - all aggregate Less than 3.
    4. Condition D — Has property: How many high priority campaigns user qualifies for expression Less than 3.
    5. Condition E — Has property: Number of sent pushes - high priority aggregate Less than 3.
  2. Save the segmentation.
Configuration of segments in the medium priority split audience segmentation
Configuration of segments in the medium priority split audience segmentation

Create the low priority split audience segmentation


This segmentation contains one segment for Campaign E. It includes the broadest set of checks — verifying the weekly limit and counting how many campaigns the customer qualifies for across both high and medium priority levels.

  1. Go to Analytics icon Decision Hub > Segmentations > New segmentation.
  2. Enter the name, for example Split audience - low priority.

Configure Segment A (Campaign E)

  1. In the first segment, add the following conditions connected by the AND operator:
    1. Condition A — Has property: Campaign E - low priority segmentation Is true.
    2. Condition B — Has property: Now (yyyy-mm-dd hh) expression Contain the value representing Campaign E’s planned send date and hour (for example, 2026-04-14T10).
    3. Condition C — Has property: Number of sent pushes - all aggregate Less than 3.
    4. Condition D — Has property: How many high + medium priority campaigns user qualifies for expression Less than 3. This ensures that the combined potential sends from higher priorities plus this send would not exceed the weekly limit.
  2. Save the segmentation.
Configuration of the segment in the low priority split audience segmentation
Configuration of the segment in the low priority split audience segmentation

How the priority logic works in practice


Consider the following example scenario where high priority campaigns are scheduled later in the week than medium and low priority ones. This demonstrates how the slot reservation mechanism ensures that lower-priority campaigns do not consume contact slots that are reserved for higher-priority campaigns — regardless of chronological order.

  • A customer qualifies for all five campaigns: Campaign A (high priority), Campaign B (high priority), Campaign C (medium priority), Campaign D (medium priority), and Campaign E (low priority).
  • The weekly contact limit is 3 messages.
  • Campaign C is scheduled for Monday at 09:00, Campaign D for Monday at 14:00, Campaign E for Tuesday at 10:00, Campaign A for Wednesday at 10:00, and Campaign B for Thursday at 10:00.

The system processes the campaigns as follows:

  1. Monday at 09:00 — Campaign C (medium priority). The medium priority workflow runs. The customer qualifies for Campaign C and the time matches. Before sending, the system checks the expressions: the customer qualifies for 2 high priority campaigns (A and B). This means 2 of the 3 weekly slots are reserved for high priority. Only 1 slot remains available for medium priority. Since no medium priority pushes have been sent yet, Campaign C is sent. Push count becomes 1.

  2. Monday at 14:00 — Campaign D (medium priority). The medium priority workflow runs again. The customer qualifies for Campaign D and the time matches. However, the system checks: the customer still qualifies for 2 high priority campaigns (A and B are not yet sent but are planned). Since 1 medium priority campaign was already sent and only 1 slot was available for this priority level (3 total minus 2 reserved for high), Campaign D is blocked.

  3. Tuesday at 10:00 — Campaign E (low priority). The low priority workflow runs. The customer qualifies for Campaign E and the time matches. The system checks how many campaigns the customer qualifies for across high and medium priority: 2 (high) + 2 (medium) = 4, but the weekly limit is 3. In practice, 1 push has already been sent and 2 slots are reserved for high priority. No remaining capacity exists for low priority. Campaign E is blocked.

  4. Wednesday at 10:00 — Campaign A (high priority). The high priority workflow runs. The customer qualifies for Campaign A, the time matches, and the overall push count is 1 (below 3). No additional reservation checks are needed at the highest priority level. Campaign A is sent. Push count becomes 2.

  5. Thursday at 10:00 — Campaign B (high priority). The high priority workflow runs again. The customer qualifies for Campaign B, the time matches, and the push count is 2 (below 3). Campaign B is sent. Push count becomes 3.

Result: The customer received 3 messages — Campaign C (medium), Campaign A (high), and Campaign B (high). Despite Campaigns A and B being scheduled later in the week, their slots were reserved from the beginning. Campaign D (medium) and Campaign E (low) were correctly blocked because the remaining weekly capacity was already allocated to higher-priority campaigns.

This mechanism ensures that high priority campaigns are always delivered as long as the weekly limit allows, medium priority campaigns are sent only when there is remaining capacity after accounting for higher-priority reservations, and low priority campaigns fill any leftover slots.

Note: Keep in mind that segmentations are evaluated dynamically. A customer’s eligibility for a given campaign may change during the week — for example, if a customer performs an action that adds them to a new segmentation, or if their behavior causes them to leave a segmentation they were previously in. This means that the slot reservation calculations (based on how many higher-priority campaigns the customer qualifies for) reflect the state at the moment of evaluation, not a fixed snapshot from the beginning of the week.
Tip:

The expressions that count potential higher-priority campaign eligibility effectively reserve contact slots for higher-priority campaigns. This means that regardless of how campaigns are distributed across the week, lower-priority campaigns will not consume slots that could be needed by higher-priority ones — even if the higher-priority campaigns are scheduled later in the week.

However, keep in mind that within a single priority level, if you have more campaigns than the weekly limit allows, only the first campaigns (in chronological order) will be sent. For example, if you assign 5 campaigns to high priority with a weekly limit of 3, only the first 3 scheduled campaigns will go out.

Check the use case set up on the Synerise Demo workspace


You can check the configuration of each step directly in the Synerise Demo workspace:

Individual campaign segmentations:

Priority-level split audience segmentations:

Aggregates:

Expressions:

Workflows:

If you’re our partner or client, you already have automatic access to the Synerise Demo workspace (1590), where you can explore all the configured elements of this use case and copy them to your workspace.

If you’re not a partner or client yet, we encourage you to fill out the contact form to schedule a meeting with our representatives. They’ll be happy to show you how our demo works and discuss how you can apply this use case in your business.

Read more


😕

We are sorry to hear that

Thank you for helping improve out documentation. If you need help or have any questions, please consider contacting support.

😉

Awesome!

Thank you for helping improve out documentation. If you need help or have any questions, please consider contacting support.

Close modal icon Placeholder alt for modal to satisfy link checker