Skip to main content

Message Priorities

Every message in a run has a priority of either Normal or High. Priority controls the order messages are dispatched in when sending capacity is contended, so urgent messages are not held back behind routine ones. This page covers how priority is set, what it changes at send time, and how to work with it afterwards.

Setting Priority

Priority comes from a column in a contact file, set per contact. That makes it available only to a campaign whose audience is a File. A campaign sending to All Contacts or to a segment has no priority to read, so all of its messages are normal priority. There is no campaign setting and no run setting that raises or lowers priority as a whole, and a message's priority cannot be changed once the file has been uploaded.

To use it, include a column (or element, for JSON and XML) holding each contact's priority. When the campaign's file is read, every column gets an Import As dropdown beside it, and that column's dropdown is set to Priority. The same dropdown is where the recipient column is set to Recipient Email or Recipient Phone, whichever matches the campaign's channel, and where the columns the template draws on are set to Template Value. At most one column can be mapped as Priority, and the column can be called anything, because only the mapping matters. See Mapping Columns.

For example, the last column here sets a different priority for each contact:

name,email,amountOwed,dateOwed,phoneNumber,priority
John Smith,john.smith@example.com,250,1/7/2025,+61400111222,High
Jane Doe,jane.doe@example.com,500,15/7/2025,+61400333444,Normal
Value in your fileResult
HighThe message is treated as high priority
NormalThe message is treated as normal priority
Any other value, such as UrgentThe message is treated as normal priority
Missing or emptyThe message is treated as normal priority
No Priority column mapped at allEvery message in the campaign is normal priority

Priority values are matched case-insensitively, so High, high and HIGH are all read as high priority, and Normal, normal and NORMAL are all read as normal priority. The examples throughout these docs use High and Normal purely for consistency.

High and Normal are the only supported values, so populate the column with one of the two, or leave the cell empty to send at normal priority. Any other value, such as Urgent, Low, or a number, is not a further priority tier. It is read as normal priority, exactly as an empty cell is.

A missing or unrecognised priority never drops a contact

A row that leaves the priority value blank, or that holds a value other than High or Normal, is not skipped. It is imported and sent as a normal-priority message. Priority is the one mapped column whose value can be empty or unrecognised without making a contact invalid. See What makes a contact invalid for what does.

The full file this example comes from, in all three supported formats, is in Example Files.

How Priority Affects Sending

Priority is evaluated when messages are dispatched, not when they are created. When a run starts, its high-priority messages are dispatched ahead of normal-priority messages in other active runs. An urgent send therefore moves to the front of the queue rather than waiting for unrelated, lower-priority workloads to drain.

Two things priority does not do:

  • It does not increase your sending capacity. Priority changes the order messages leave the queue, not how fast the delivery provider accepts them. See Concurrency and Throughput.
  • It does not change delivery behaviour. A high-priority message goes through the same statuses, timeouts and retries as any other message.

Reviewing Priority After Sending

On a run's messages table, each message shows its priority alongside its status. The table can be filtered to a single priority and sorted by priority, which is the quickest way to check that urgent messages landed. Any priority filter or sort applied to the table is carried into the CSV export, so the file downloaded is ordered the same way as the table being reviewed.

Choosing What to Prioritise

Because priority is per contact, it is most useful when a single contact file mixes time-critical and routine contacts, for example an overdue-payment reminder where the most overdue accounts need telling first. If every row in a file is marked High, priority has no effect within that run, because the ordering only matters relative to other messages.