Network management based on marketing message fatigue

11488204 · 2022-11-01

Assignee

Inventors

Cpc classification

International classification

Abstract

A marketing campaign management system that includes a campaign platform that categorizes intended recipient profiles corresponding to intended recipients of marketing campaign messages based on their levels of fatigue. Recipient profiles categorized as “saturated” are then sub-segmented to determine their relative levels of fatigue or saturation. The intended recipient profiles that are most fatigued are removed from a recipients list such that they will not be sent any campaigns until after a rest state has been completed. A transitional safe state ensures that the intended recipient profiles inserted back into the list are not immediately removed once again.

Claims

1. At least one non-transitory computer readable storage medium storing instructions that, when executed by at least one processor, cause the at least one processor to: for each of a plurality of intended recipient profiles included in a list of intended recipients, each of the intended recipient profiles corresponding to an intended recipient: determine a frequency value for the intended recipient profile, wherein the frequency value comprises a number of times the intended recipient corresponding to the intended recipient profile has opened received campaign messages during a pre-defined preceding period of time; determine a recency value for the intended recipient profile, wherein the recency value comprises an elapsed time since the intended recipient corresponding to the intended recipient profile has opened a campaign message from the received campaign messages; and determine a fatigue status for the intended recipient profile based on the frequency value and recency value, wherein the fatigue status comprises one of: saturated, undersaturated, or unsaturated, wherein determining the fatigue status based on the frequency value and recency value further comprises: if the intended recipient has not been sent any campaign messages during the pre-defined preceding period of time, set the fatigue status to undersaturated; if the recency value indicates that the intended recipient has not opened any received campaign messages during the pre-defined preceding period of time, set the fatigue status to saturated; determine whether there is a decreased level of engagement based on a percentage response rate over the pre-defined preceding period of time and at least one prior pre-defined period of time; if there is a decreased level of engagement, set the fatigue status to saturated; if there is not a decreased level of engagement, set the fatigue status to unsaturated; remove at least one of the intended recipient profiles from the list of intended recipients based on a determined saturated fatigue status; transmit a new campaign message to the intended recipient corresponding to each of the plurality of intended recipient profiles remaining on the list of intended recipients; for each of the plurality of intended recipient profiles having a saturated fatigue status, maintain the removed intended recipient profile off the list of intended recipients for a first pre-determined period of time; and in response to determining that the first pre-determined amount of time has elapsed, add the removed intended recipient profile to the list of intended recipients.

2. The at least one non-transitory computer-readable storage medium of claim 1, wherein the first predetermined period of time is determined as a function of a number of times that the removed intended recipient profile has been removed from the list of intended recipients.

3. The at least one non-transitory computer-readable storage medium of claim 1, further comprising instructions that cause the at least one processor to: transition the removed intended recipient profile to a safe state for a second pre-determined amount of time; and while the removed intended recipient profile remains in the safe state: monitor responses to subsequent campaign messages by the intended recipient corresponding to the removed intended recipient profile; and exclude the removed intended recipient profile from determining the frequency value and the recency value.

4. The at least one non-transitory computer-readable storage medium of claim 3, further comprising instructions that cause the at least one processor to, upon expiration of the second pre-determined about of time: transition the removed intended recipient profile from the safe state to a normal state based on the monitored responses; and in response to transitioning the removed intended recipient profile to the normal state, continuing to determine the frequency value and the recency value for the removed intended recipient profile.

5. The at least one non-transitory computer-readable storage medium of claim 1, further comprising instructions that cause the at least one processor to, for each of the plurality of intended recipient profiles remaining on the list of intended recipients: continue to determine the frequency value; continue to determine the recency value; and determine an updated fatigue status based on the frequency and recency, wherein the updated fatigue status comprises one of saturated, undersaturated, or unsaturated.

6. The at least one non-transitory computer-readable storage medium of claim 1, wherein the instructions to remove the at least one of the intended recipient profiles from the list of intended recipients based on the saturated fatigue status further comprises instructions that cause the at least one processor to: determine that each of subset of the plurality of intended recipient profiles has a saturated fatigue status based on the respective frequency value and recency value; calculate a fatigue score for each of the subset of the plurality of intended recipient profiles; rank the subset of the plurality of intended recipient profiles based on the fatigue scores from highest to lowest; segment the ranked subset according to at least one breakpoint into a plurality of sub-segments, wherein a top-ranked sub-segment includes at least intended recipient profile having the highest fatigue score; and remove the at least one of the intended recipient profiles from the top-ranked sub-segment from the list of intended recipients.

7. A method for reducing online campaign traffic based on user saturation, the method comprising: for each of a plurality of intended recipient profiles included in a list of intended recipients, each of the intended recipient profiles corresponding to an intended recipient: determining, by at least one processor, a frequency value for the intended recipient profile, wherein the frequency value comprises a number of times the intended recipient corresponding to the intended recipient profile has opened received campaign messages during a pre-defined preceding period of time; determining, by the at least one processor, a recency value for the intended recipient profile, wherein the recency value comprises an elapsed time since the intended recipient corresponding to the intended recipient profile has opened a campaign message from the received campaign messages; and determining, by the at least one processor, a fatigue status for the intended recipient profile based on the frequency value and recency value, wherein the fatigue status comprises one of saturated, undersaturated, or unsaturated, wherein determining the fatigue status based on the frequency value and recency value further comprises: if the intended recipient has not been sent any campaign messages during the pre-defined preceding period of time, setting the fatigue status to undersaturated; if the recency value indicates that the intended recipient has not opened any received campaign messages during the pre-defined preceding period of time, setting the fatigue status to saturated; determining, by the at least one processor, whether there is a decreased level of engagement based on a percentage response rate over the pre-defined preceding period of time and at least one prior pre-defined period of time; if there is a decreased level of engagement, setting the fatigue status to saturated; if there is not a decreased level of engagement, setting the fatigue status to unsaturated; removing, by the at least one processor, at least one of the intended recipient profiles from the list of intended recipients based on a determined saturated fatigue status; and transmitting, by the at least one processor, a new campaign message to the intended recipient corresponding to each of the plurality of intended recipient profiles remaining on the list of intended recipients; maintaining, by the at least one processor and for each of the plurality of intended recipient profiles having an saturated fatigue status, the removed intended recipient profile off the list of intended recipients for a first pre-determined period of time; and in response to determining that the first pre-determined amount of time has elapsed, adding, by the at least one processor, the removed intended recipient profile to the list of intended recipients.

8. The method of claim 7, wherein the first predetermined period of time is determined as a function of a number of times that the removed intended recipient profile has been removed from the list of intended recipients.

9. The method of claim 7, further comprising: transitioning, by the at least one processor, the removed intended recipient profile to a safe state for a second pre-determined amount of time; and while the removed intended recipient profile is in the safe state: monitoring, by the at least one processor, responses to subsequent campaign messages by the intended recipient corresponding to the removed intended recipient profile; and excluding, by the at least one processor, the removed intended recipient profile from determining the frequency value and the recency value.

10. The method of claim 9, further comprising, upon expiration of the second pre-determined about of time: transitioning, by the at least one processor, the removed intended recipient profile from the safe state to a normal state based on the monitored responses; and continuing, by the at least one processor and in response to transitioning the removed intended recipient profile to the normal state, to determine the frequency value and the recency value for the removed intended recipient profile.

11. The method of claim 7, further comprising: for each of the plurality of intended recipient profiles remaining on the list of intended recipients: continuing, by the at least one processor, to determine the frequency value; continuing, by the at least one processor, to determine the recency value; and determining, by the at least one processor, an updated fatigue status based on the frequency and recency, wherein the updated fatigue status comprises one of saturated, undersaturated, or unsaturated.

12. The method of claim 7, wherein the step of removing further comprises: determining, by the at least one processor, that each of subset of the plurality of intended recipient profiles has a saturated fatigue status based on the respective frequency value and recency value; calculating, by the at least one processor, a fatigue score for each of the subset of the plurality of intended recipient profiles; ranking, by the at least one processor, the subset of the plurality of intended recipient profiles based on the fatigue scores from highest to lowest; segmenting, by the at least one processor, the ranked subset according to at least one breakpoint into a plurality of sub-segments, wherein a top-ranked sub-segment includes at least intended recipient profile having the highest fatigue score; and removing, by the at least one processor, the at least one of the intended recipient profiles from the top-ranked sub-segment from the list of intended recipients.

Description

BRIEF DESCRIPTION OF THE DRAWING

(1) FIG. 1 is a diagrammatic overview of the system according to embodiments of the inventive subject matter.

(2) FIG. 2 provides a flowchart of processes executed by the campaign platform, according to embodiments of the inventive subject matter.

(3) FIG. 3 provides a flowchart of the fatigue segmentation stage in detail, according to embodiments of the inventive subject matter.

(4) FIG. 4 provides a flowchart of the sub-segmentation stage in detail, according to embodiments of the inventive subject matter.

(5) FIG. 5 provides an illustrative example of intended recipient profiles ranked, along with example breakpoints in the ranking list.

(6) FIG. 6 illustrates the filtering state machine, including the transitions between states employed in embodiments of the inventive subject matter.

DETAILED DESCRIPTION

(7) Throughout the following discussion, numerous references will be made regarding servers, services, interfaces, engines, modules, clients, peers, portals, platforms, or other systems formed from computing devices. It should be appreciated that the use of such terms, is deemed to represent one or more computing devices having at least one processor (e.g., ASIC, FPGA, DSP, x86, ARM, ColdFire, GPU, multi-core processors, etc.) programmed to execute software instructions stored on a computer readable tangible, non-transitory medium (e.g., hard drive, solid state drive, RAM, flash, ROM, etc.). For example, a server can include one or more computers operating as a web server, database server, or other type of computer server in a manner to fulfill described roles, responsibilities, or functions. One should further appreciate the disclosed computer-based algorithms, processes, methods, or other types of instruction sets can be embodied as a computer program product comprising a non-transitory, tangible computer readable media storing the instructions that cause a processor to execute the disclosed steps. The various servers, systems, databases, or interfaces can exchange data using standardized protocols or algorithms, possibly based on HTTP, HTTPS, AES, public-private key exchanges, web service APIs, known financial transaction protocols, or other electronic information exchanging methods. Data exchanges can be conducted over a packet-switched network, the Internet, LAN, WAN, VPN, or other type of packet switched network.

(8) The following discussion provides many example embodiments of the inventive subject matter. Although each embodiment represents a single combination of inventive elements, the inventive subject matter is considered to include all possible combinations of the disclosed elements. Thus if one embodiment comprises elements A, B, and C, and a second embodiment comprises elements B and D, then the inventive subject matter is also considered to include other remaining combinations of A, B, C, or D, even if not explicitly disclosed.

(9) As used herein, and unless the context dictates otherwise, the term “coupled to” is intended to include both direct coupling (in which two elements that are coupled to each other contact each other) and indirect coupling (in which at least one additional element is located between the two elements). Therefore, the terms “coupled to” and “coupled with” are used synonymously.

(10) FIG. 1 shows a diagrammatic overview of a system 100 according to embodiments of the inventive subject matter.

(11) As seen in FIG. 1, the system 100 includes a campaign platform 110 capable of communicating with a plurality of recipient computing devices 120. The campaign platform 110 and computing devices 120a-n can communicate using any suitable methods of data exchange known in the art. Examples of suitable methods of data exchange include via the Internet, cellular communication, near-field communication (“NFC”), Bluetooth, etc.

(12) The campaign platform 110 can comprise one or more computing devices, collectively having one or more processors that execute the various functions associated with the inventive subject matter. Suitable computing devices for campaign platform 110 can include server computers, laptop computers, desktop computers, tablets, smartphones, etc. In embodiments, the campaign platform 110 can be hosted on a cloud-based computing platform.

(13) The recipient computing devices 120 can each comprise one or more computing devices that allow the recipient to receive and interact with marketing campaigns sent by the campaign platform 110. Suitable computing devices for recipient computing devices 120 can include server computers, laptop computers, desktop computers, tablets, smartphones, gaming consoles, etc. As discussed herein, references to the intended recipient 120 are understood to refer to the computing devices as accessed by the recipients for the purposes of the functions and processes of the inventive subject matter.

(14) The campaign platform 110 includes a profile database 111 that stores a plurality of intended recipient profiles 112a-n. Each intended recipient profile 112 corresponds to an intended recipient 120 (reached via a respective computing device 120), to which the operator of campaign platform 110 can send marketing campaign messages. An intended recipient profile 112 includes a fatigue status attribute that is representative of the current fatigue status of the intended recipient. The fatigue status attribute can be one of “under-saturated”, “unsaturated”, and “saturated,” reflecting the fatigue status of the intended recipient 120 corresponding to the respective intended recipient profile 112. The modification of the fatigue status attribute and handling of an intended recipient profile 112 based on the fatigue status attribute is discussed further in detail below. When a new intended recipient profile 112 is added to the profile database 111, the initial fatigue status is “under-saturated” because no campaigns have been sent to that respective recipient.

(15) The intended recipient profile 112 also includes a state attribute. The state attribute can be one of “normal”, “rest” and “safe.” The changes between the states will be discussed in greater detail below.

(16) In embodiments, the intended recipient profile 112 can include information related to the campaigns sent to the corresponding recipient 120, such as a counter of campaigns sent over a recent window of time, a counter of campaigns sent overall, a counter of the time elapsed since the most recent opened/engaged-with campaign, a counter of the number of campaigns opened/engaged-with in a recent sliding window of time, a number of total opened/interacted-with campaigns overall, a number of unsubscribes, etc.

(17) The intended recipient profile 112 can optionally include additional information about the corresponding intended recipient 120 such as an identifier (e.g., name), an electronic address used to send the campaigns (e.g., email address, cell phone number, etc.), an indicator of the channel(s) used to send campaigns to the recipient, etc.

(18) The campaign platform 110 also includes a list of recipients 113. The list of recipients 113 is a list of the intended recipients 120 that are to receive campaign messages from the campaign platform 110. As will be discussed in greater detail below, the list of recipients 113 can be modified by the campaign platform 110 to add or remove recipients from the list. As such, the list of recipients 113 does not necessarily include every single intended recipient 120 at all times.

(19) It should be noted that in the embodiments discussed herein, the campaign platform 110 is described as sending the campaigns to the recipients. However, it is contemplated that in other embodiments a separate computing platform can be responsible for actually sending campaigns. In these other embodiments, the campaign platform 110 is in communication with the separate computing platform and performs the functions discussed herein to manage the list of recipients such that the separate computing platform only sends the messages to the appropriate recipients.

(20) As used herein, “campaign” or “marketing campaign” refers to an advertising or marketing message that is sent to recipients. Thus, when reference is made to a recipient receiving or opening “a campaign”, this refers to a single instance of a message or communication sent by the marketing platform to the recipient.

(21) The processes executed by the campaign platform 110 of the inventive subject matter can be considered to have three principal stages: fatigue segmentation, sub-segmentation, and the filtering state machine. An overview of these stages as a part of the overall process is shown in FIG. 2.

(22) Steps 210-230 of FIG. 2 can be considered to correspond to the fatigue segmentation process by the campaign platform 110, according to embodiments of the inventive subject matter.

(23) In order to properly classify the status of each of the intended recipients, the campaign platform 110 monitors the distribution of campaigns to the various intended recipients 120 included in recipient list 113 and their interactions with the campaigns at step 210.

(24) For each of the intended recipients 120, the campaign platform 110 continually monitors the campaigns that have been sent and which campaigns have been interacted with by the intended recipient 120 to determine engagement. The specific interaction monitored by the campaign platform 110 can depend on the specific channel of communication used to communicate the campaign.

(25) For example, for an email campaign, the interaction that is monitored is whether the email campaign was opened by the recipient. To do this, a read receipt or other indication of the email being opened is transmitted by the recipient email system back to the campaign platform 110. For an MMS or text message campaign, a measured interaction for the purposes of engagement can comprise a read indication can be sent back to the campaign platform 110 or a click of a link in the message. For a social media campaign, a measured interaction can comprise an indication that the user has scrolled past the campaign or that the user has clicked on the campaign. For a campaign on a video hosting platform (e.g., a video advertisement), a measured interaction can comprise an indication that the user has viewed a certain percentage of the video. Other forms of tracking advertisement engagement are known in the art and can be applied by the campaign platform 110 to determine a recipient's engagement with a particular marketing campaign.

(26) For the purposes of the illustrative example of the embodiments described herein, the marketing campaign is an email campaign and interaction monitored by the campaign platform 110 is whether the intended recipient has opened the campaign email. Upon opening the email, an indication of the opening (e.g., a “read receipt”) is transmitted back to the campaign platform 110.

(27) For each of the intended recipients, the campaign platform 110 computes a recency value and a frequency value at step 220.

(28) The campaign platform 110 determines a recency value for an intended recipient 120 by tracking the number of days since the intended recipient 120 opened a campaign that was sent to it.

(29) For the frequency value, the campaign platform 110 counts the number of times that an intended recipient 120 has opened campaigns (either the same campaign or different campaigns) in a pre-determined period of observation. The period of observation can be the previous 60 days, previous 30 days, previous 2 weeks, or other pre-determined period of time.

(30) For each of the intended recipients 120a-120n, the campaign platform 110 then determines a fatigue status based on the determined recency value and the frequency value at step 230. The status can be one of under-saturated, unsaturated, or saturated as follows:

(31) If an intended recipient 120 has not been sent any campaigns at all, then the campaign platform 110 sets the fatigue status attribute for the intended recipient profile 112 to “under-saturated.”

(32) If an intended recipient 120 has not been sent any campaigns within a pre-determined period of observation (e.g., in the last month, last two months, etc.) nor has opened any campaigns in a preceding predetermined time frame (e.g., the last month), the campaign platform 110 sets the fatigue status attribute for the intended recipient profile 112 to “under-saturated.” It should be noted that this predetermined time frame does not necessarily have to be the same length as the period of observation.

(33) If an intended recipient 120 has been sent campaigns within the period of observation but those campaigns were never opened during the predetermined time frame, the campaign platform 110 sets the fatigue status attribute for the intended recipient profile 112 to “saturated.”

(34) If an intended recipient 120 has opened campaigns within the period of observation but where the system has detected a decrease in engagement for a consecutive period of time (e.g., over a certain number of consecutive days), the campaign platform 110 sets the fatigue status attribute for the intended recipient profile 112 to “saturated.”

(35) The engagement for an intended recipient 120 is a response rate that is determined by the campaign platform 110 based on the responses received from the recipient 120. The response rate is determined by dividing the number of responses received by the campaign platform 110 over a pre-determined period of time (e.g., a week, each day over the course of a week, etc.) by the number of sent campaigns to the recipient 120 over the same pre-determined period of time (e.g., that same week, each day over the course of that week, etc.).

(36) The campaign platform 110 measures a decrease in engagement by determining a decrease in engagement (e.g., a certain percentage lower than an average response rate; a downward-trending response rate over a certain decrease threshold, etc.) over consecutive periods of time.

(37) If an intended recipient 120 has opened a campaign within the preceding period of observation and the system has not detected a decreased engagement over a measured consecutive period of time (e.g., the certain number of consecutive days), then the campaign platform 110 sets the fatigue status attribute of the intended recipient profile 112 to “unsaturated.” The unsaturated status is what could be considered the “just right” status for a particular intended recipient 120.

(38) In certain situations, there is not enough information for an intended recipient 120 for the campaign platform 110 to determine the status according to one of the above situations. In these instances, the campaign platform 110 sets the fatigue status attribute for the intended recipient profile 112 to “under-saturated.”

(39) A state is a logical concept that describes the different ways that the system treats each intended recipient. Based on the intended recipients' respective states, the campaign platform 110 is able to distinguish how/which campaigns are sent to the various intended recipients 120a-n and how each of the intended recipients 120a-n is treated based on their individual engagement rates. In the embodiments of the inventive subject matter discussed herein, an intended recipient 120 can have one of three different states: normal, rest, or safe. This state is reflected by the state attribute of the intended recipient profile 112.

(40) To determine how send-fatigued recipients will be temporarily isolated so as to reduce their saturation/fatigue level, the systems and methods of the inventive subject matter employs a filtering state machine. There are two principal aspects to the filtering state machine: the state of an intended recipient and transitions between states.

(41) For each intended recipient profile 112 that is determined to be “unsaturated” or “undersaturated”, the campaign platform 110 sets the state attribute of the intended recipient profile 112 as “normal” at step 240. The intended recipient profiles 112 in a “normal” state are kept in the intended recipients list 113. As such, campaign messages are sent regularly intended recipient profiles 112 in a “normal” state and the campaign platform 110 continues to perform the monitoring and fatigue-segmentation for these profiles 112. Thus, the process returns to step 210.

(42) For each intended recipient profile 112 that has been designated with the fatigue status of “saturated”, the campaign platform 110 proceeds to perform a further sub-segmentation at step 250. As will be described in further detail below, the sub-segmentation will result in a sorted list of saturated intended recipient profiles 112, divided into sub-segments. Each sub-segment denotes a degree of fatigue suffered by the intended recipient 120 based on the number of campaigns sent to the recipient. The highest-ranked saturated profiles in the top sub-segment(s) are considered to be “send-fatigued.”

(43) To properly assign a saturated recipient to a correct sub-segment, the campaign platform 110 calculates a fatigue score based on (1) a degree of reduction in the engagement rate of the recipient, (2) the degree of increase in the number of sends delivered to the recipient, and (3) the degree to which send volume has caused their reduction in engagement. The fatigue score is a sorting of these three variables, sorting on these three and partitioning the sorted list to form the sub-segments.

(44) For a pre-determined number of the top (i.e., most send-fatigued) sub-segments, the campaign platform 110 proceeds to execute the filtering state machine at step 260 to “remove” them out of circulation by transitioning them into a “rest” state (setting their state attribute to “rest”) and removing these intended recipients from the recipients list 113 for a predetermined duration of time. The duration of the rest state can be set or modified by an operator. (e.g., 7 days)

(45) The rest state is the state for the intended recipient profiles 112 that have been isolated as a result of the campaign platform 110 executing the sub-segmentation process discussed above. Thus, the saturated, “send-fatigued” intended recipient profiles 112 that are in “time-out” for the predetermined period of time.

(46) While an intended recipient profile 112 is in the rest state, no campaign messages are sent to the corresponding intended recipient 120 and the fatigue segmentation process is not executed for the “resting” intended recipient profile 112.

(47) After the predetermined duration of time in the rest state expires, the campaign platform 110 transitions the intended recipient profile 112 from the rest state to the safe state at step 270 by setting its state attribute to “safe”.

(48) The safe state corresponds to a state for the intended recipients 120 that follows the rest state. Intended recipients in the safe state are tested to determine whether they are still send-fatigued. Intended recipients in the safe state are sent campaigns as if they were in the normal state, but the re-segmenting procedure is not applied to them and as such they would not be classified as “saturated”. Intended recipient profiles are held in the safe state for a pre-determined amount of days that can be modified by an operator. (e.g., 3 days)

(49) When an intended recipient profile 112 is transitioned from the rest state to the safe state at step 270, the campaign platform 110 adds the intended recipient 120 to the intended recipient list 113 so that the recipient 120 is able to receive campaigns once again.

(50) While an intended recipient profile 112 is in the safe state, the campaign platform 110 measures the engagement of the intended recipient 120 with the campaigns sent during the safe state period. If the campaign platform 110 determines that the level of engagement is at a sufficiently high level at the end of the predetermined period of time in the safe state, it transitions the intended recipient profile 112 from the safe state to the normal state at step 280, after which the process returns to step 240. At step 280, the campaign platform 110 also changes the fatigue status attribute of the intended recipient profile 112 from “saturated” to either “unsaturated” or “undersaturated”, depending on the measured engagement level of the intended recipient.

(51) The campaign platform 110 determines whether a recipient 120 in the safe state may be moved back to the normal state based on a determination of the recency/frequency values. If there are recent responses to messages sent in the safe state up to a certain threshold, then such intended recipients 120 can be moved into the normal state. This threshold and recency/frequency is the same process used for determining whether a recipient should be saturated or unsaturated discussed herein. As discussed herein, if an intended recipient 120 falls in engagement (measured by the local mean of engagement divided by the global mean of engagement) for a certain number of days, they become saturated. However in this case, the campaign platform 110 is actually testing the opposite: if the particular intended recipient 120′s local mean-global mean metric rises above the threshold, they can be moved back into the normal state because their engagement would be reflective of an unsaturated recipient.

(52) It is contemplated that there maybe other metrics or criteria that the campaign platform 110 can use to determine the transition criteria from safe state to normal state. For example, another one can be such that the recipient engages to at least K number of messages in a timeframe T (K=1 and T=1 week may mean that they respond to a message within a week of sending it). Such criteria can be used, remaining consistent with the filtering state machine discussed herein.

(53) If the campaign platform 110 determines that the level of engagement is not at a sufficiently high level, then it transitions the intended recipient profile 112 from the safe state back to the rest state, returning the process back to step 260. The fatigue status of the intended recipient profile 112 remains at “saturated.”

(54) In this situation, the intended recipient 120 is considered to have “relapsed.” To reduce the chances of additional relapses, the time spent in the rest state after a relapse is increased.

(55) Thus, as an intended recipient 120 relapses more often, they are “quarantined” in the rest state for a longer and longer period of time. In these embodiments, the increased periods spent in the rest state is based on the number of relapses. For example, the number of days that a relapsing recipient spends in the rest state after a relapse can be calculated by the function:

(56) f(n)=7+(n+1).sup.2, where n is the number of relapses that the intended recipient has had.

(57) Steps 210 through 230 of FIG. 2 can be considered to be the fatigue segmentation section of the process. FIG. 3 is a flow chart of the fatigue segmentation process in greater detail, according to embodiments of the inventive subject matter.

(58) At step 310, the campaign platform observes two matrices: a send count matrix (S), and an open count matrix (O).

(59) In the send count matrix (S), each row is an intended recipient “i” from the recipients 120, and each column is time period “t”. The value of S.sub.i,t is the count of sends to the recipient “i” in the time “t”.

(60) In the open count matrix (O), each row is an intended recipient “i” from the recipients 120, and each column is time period “t”. The value of O.sub.i,t is the open count (the amount of campaigns opened by the recipient) for recipient “i” at the time “t”.

(61) From these two matrices, the campaign platform 110 derives the following matrices at step 320: An open rate matrix (E), a send LGM matrix (A) and an open rate LGM matrix (B).

(62) An open rate matrix (E): E.sub.i,t=O.sub.i,t/S.sub.i,t

(63) A send LGM matrix (A): A.sub.i,t is the local-global mean value of send counts to the recipient “i” at a time “t”. In these embodiments of the inventive subject matter, this is a sliding window (local) average from S.sub.i,t-3 to S.sub.i,t, divided by the cumulative running (global) average from S.sub.i,0 to S.sub.i,t. Here, A=local_global_ mean(S)

(64) An open rate LGM matrix (B): B.sub.i,t is the local-global mean value of the open rates of recipient “i” at time “t”. In these embodiments of the inventive subject matter, this is a sliding window (local) average from E.sub.i,t-3 to E.sub.i,t divided by the cumulative running (global) average from E.sub.i,0 to E.sub.i,t. To determine B, the campaign platform 110 determines the local-global mean for each time point t, for each recipient i. This is a smoothed moving average version of “E”. Thus, B=local_global_mean(E).

(65) At the conclusion of step 320, the campaign platform 110 has derived five vectors for each recipient “i”: S.sub.(i,.), O.sub.(i,.), E.sub.(i,.), B.sub.(i,.).

(66) At step 330, the campaign platform 110 sets the following thresholds: T.sub.send, T.sub.open, T.sub.open rate LGM, and T.sub.fatigue duration.

(67) T.sub.send is the threshold for send recency. T.sub.send determines whether a recipient has been sent a campaign recently or not. It is a value between 1 and 180. For example, if T.sub.send is set to 30, then any recipient whose last campaign received was in the last 30 days or less is said to have been sent recently. Similarly, if a recipient has not been sent in the last 30 days, then they are old senders. Recall that the last send a recipient i acquired is determined by R.sub.s(i) (and recipient j will acquire the send recency R.sub.s (j), etc.) As such, if R.sub.s(i)<T.sub.send, then the recipient was sent recently. Otherwise, they are not sent recently. If they are not sent recently, the campaign platform immediately sets the fatigue status attribute for the respective intended recipient profile 112 as “saturated” without executing any additional logic.

(68) T.sub.open is the threshold for open recency, which determines whether a recipient has opened a campaign recently or not. Similar to T.sub.send, suppose T.sub.open=14. A recipient 120 who has opened a campaign in the last 14 days will be a recent opener, which is an intermediate logic used by the fatigue segmentation algorithm to determine the persona of that recipient 120. If the recipient has not opened in 14 days, then they are “old” openers. Recall that R.sub.o(i) determines the number of days (recency) since the last open event of that recipient i. So if R.sub.o(i)<T.sub.open, then the recipient i opened recently. Otherwise, they did not open recently.

(69) T.sub.open rate LGM is the threshold for open rate LGM.

(70) T.sub.fatigue duration is the minimum number of consecutive A.sub.i,t values to be qualified as “fatigued.”

(71) These thresholds can be set a priori or as the process is being executed.

(72) At step 340, the campaign platform 110 uses the vectors S.sub.(i,.), O.sub.(i,.), E.sub.(i,.), A.sub.(i,.), and B.sub.(i,.) derived at step 320 and computes, for each recipient “i”:

(73) Recency of sends, R.sub.s, which is the number of days between the last campaign sent to the recipient “i” and the current time.

(74) Recency of opens, R.sub.o, which is the number of days between the last campaign opened by the recipient “i” and the current time.

(75) Frequency of sends, F.sub.s, which is the number of campaigns sent to recipient “i”. This frequency is across the entire duration of sends for that intended recipient 120. In the embodiments discussed herein, it is considered to be 6 months of “sends”. However, this period can be adjusted within the campaign platform 110 by a user.

(76) Frequency of opens, F.sub.o, which is the number of campaigns opened by the recipient “i”. The frequency is also across the entire duration of sends for the intended recipient 120. In these embodiment, the default period is considered to be 6 months. However, this period is also adjustable by a user.

(77) Recency of last fatigued engagement rate, E.sub.i,k+p, which will also be referenced to herein as R.sub.i,k+p, and simplified as R.sub.fatigue.

(78) R.sub.fatigue describes a vector of values for each intended recipient 120. Each value is the recency of fatigue, which is the number of days since the intended recipient 120 was last fatigued. Since fatigue is operationalized by the local mean-global mean metric, and that metric is recorded in the B matrix the fatigue of a recipient 120. E.sub.i,k+p is used because B is a function of E. Specifically, E.sub.i,k+p means that recipient i and times k to k+p. So between time=0, to time=T, the campaign platform 110 selects a window of time k, k+p. Thus, it should be understood that in this instance the notation E.sub.i,k+p represents a window of consecutive values of engagement from k to k+p and not a single instance.

(79) To summarize, E.sub.i,k+p describes a window of time of recipient i from time k to time k+p, and this window of engagement values is converted to local mean-global mean values in B, which in turn is used to measure fatigue. That last fatigue event time point is taken by R.sub.fatigue to compute the number of days since the end of the window of time recipient i is fatigued (same window as k to k+p as described in the first sentence of this paragraph).

(80) For simplicity, it can be considered that R.sub.fatigue is computed from B to be the number of days since B was last seen to be below some threshold, T.sub.open rate LGM. If the open rate LGM (local global mean) falls below this threshold, a recipient is considered to be “fatigued.”

(81) Length of fatigue sub-sequence, D.sub.fatigue. D.sub.fatigue came from B. In summary, what we described in 00102 is taking the last day in which a recipient i was fatigued and computing the number of days between the last day in the database to that time. That was Rfatigue, and Dfatigue computes the number of days between the beginning of the last fatigue duration to the end of the last fatigue duration. This can be found from B. If this duration is at least longer than T.sub.fatigue_duration and if R.sub.fatigue(i)=0, then the recipient is considered saturated. In other words, if D.sub.fatigue(i)>=T.sub.fatigue_duration and if R.sub.fatigue(i)=0, then the recipient i is saturated.

(82) Last value of the send LGM, L.sub.i,t. It is the last value of A.sub.(i,.) vector.

(83) It is important to note that A.sub.(i,.) is a vector <local_global_mean(A, time=0 for recipient i), local_global_mean(A, time=1 for recipient i), local_global_mean(A, time=2 for recipient i), . . . , local_global_mean(A, time=T for recipient i)>. The last value, local_global_mean(time=T for recipient i), is equal to L.sub.i, as it is the most recent and last day's local global mean for send counts. For example, if T is today, then it refers to the trend of send counts of that recipient 120 today. This is used to determine, for today, if a recipient has been sent more messages recently (more likely to be classified as send-fatigued in saturated sub-segmentation) or not sent many messages recently (can be any of the other segments).

(84) L.sub.i,t describes the last send LGM from recipient i of matrix A. If A is a matrix where each recipient is a row, and in each row, the local-global mean values for each time point are described in each value of that row, then the last value across all rows represents L.

(85) At step 350, the campaign platform 110 then segments the intended recipients 120 in the recipients list 113 into undersaturated, unsaturated, or saturated as follows:

(86) A) If F.sub.s=0, then the intended recipient 120 has not been sent any campaigns and campaign platform 110 sets the fatigue status attribute of the intended recipient profile 112 to “undersaturated.”

(87) B) If R.sub.s is greater than T.sub.send and R.sub.o is greater than T.sub.open, the campaign platform 110 sets the status in the intended recipient profile 112 to “undersaturated.” In this case, since a relatively large amount of time has passed since the recipient received any campaigns and since they have interacted with a campaign, there is insufficient recent data to determine a true level of fatigue. As such, this recipient should receive campaigns so as to be able to collect the necessary data.

(88) C) If R.sub.o is greater than T.sub.send, R.sub.s is less than or equal to T.sub.send, and D.sub.fatigue is greater than or equal to T.sub.fatigue duration, then the campaign platform 110 sets the fatigue status attribute in the intended recipient profile 112 to “saturated.” In this situation, the recipient has been sent campaigns but has not responded in a sufficiently long time period and as such is considered to be saturated (fatigued).

(89) D) If R.sub.fatigue is greater than T.sub.open and D.sub.fatigue is greater than or equal to T.sub.fatigue duration, then there are two potential outcomes:

(90) 1) If F.sub.open=0, then it indicates that the recipient has not opened a campaign in the recent past and they have not been recently “fatigued”. In this situation, the campaign platform 110 sets the fatigue status attribute of the intended recipient profile 112 to “undersaturated.”

(91) 2) If F.sub.open is greater than 0, it indicates that the recipient has responded to a campaign in the recent past but has not been deemed “fatigued” recently. In this situation, the campaign platform 110 sets the fatigue status attribute of the intended recipient profile 112 to “unsaturated.”

(92) E) If R.sub.fatigue is less than or equal to T.sub.open and D.sub.fatigue is greater or equal to T.sub.fatigue duration, then it is indicative of a decreased engagement by the recipient for consecutive measured periods of time, and has been “worn out” for too many consecutive time periods. As such, the campaign platform 110 sets the status of the intended recipient profile 112 to “saturated.”

(93) 1) If the amounts of campaigns sent to an intended recipient 120 is relatively high and this high amount of campaigns sent causes the decreased engagement by the recipient, the campaign platform 110 will set the status of the intended recipient profile to “saturated.” As will be explained in greater detail below, these intended recipients 120 are the most “saturated” and are considered to be “send-fatigued.” The correlation between the high rate of campaigns sent and the decreased engagement will determined via a causality test executed by the campaign platform 110.

(94) F) If R.sub.o is less than or equal to T.sub.open and F.sub.o=0, it is an indication that the intended recipient 120 has engaged with a received campaign recently and is not saturated if none of the statements A-E above are true. In this case, the campaign platform 110 sets the status of the intended recipient profile 112 as “unsaturated.”

(95) G) If the intended recipient 120 does not meet any of the criteria A-F, it is indicative that the particular recipient has not yet been engaged enough through campaigns and the monitored data regarding the recipient (if any) has not yet been sufficient. In these situations, the campaign platform 110 sets the status of the intended recipient profile 112 as “undersaturated.”

(96) As discussed above with regard to FIG. 2, the campaign platform 110 The campaign platform 110 performs a sub-segmentation of the plurality of the intended recipient profiles 112 whose status has been set to “saturated” at step 250. FIG. 4 provides a flow chart of the sub-segmentation process of step 250 in greater detail.

(97) At step 410, the campaign platform 110 monitors, for each saturated recipient, the engagement history (i.e., the vector of open rates) and the recipient's send history (i.e., the vector of send counts to that recipient). This corresponds to step 210 of FIG. 2, after which the process is executed as steps 220-230 in FIG. 2 and the detailed process of FIG. 3 to determine that a certain number of the intended recipients 120 in the list 113 are “saturated.” Thus, the following steps of FIG. 4

(98) At step 420, the campaign platform 110 runs a Granger causality test to determine whether the send count vector can cause the changes in the engagement rate vector. The Granger causality test outputs a p-value and R.sup.2 score which determine the degree of causality and “explainability” of send counts to open rates, respectively.

(99) The campaign platform 110 then binarizes the p-value to 1 (one) if the p-value is greater than 0.05, and to 0 (zero) otherwise at step 430. These 1 or 0 metrics are considered to be the “causality metric” for the system.

(100) At step 440, the campaign platform 110 then computes a local-global mean vector for the send counts (the A matrix discussed above) and a local-global mean vector for the open rates (the B matrix discussed above). The A matrix is also referred to hereinafter as the “send LGM vector” (the vector “LGM.sub.send”) and the B matrix is also referred to hereinafter as the “open rate LGM vector” or “response LGM” (the vector “LGM.sub.response”).

(101) Each LGM vector is calculated as follows:

(102) LGM send ( t ; w ) = local mean send count at time t global mean send count up to time t = the mean send counts across the last w weeks ( from week ( t - w ) to t the mean send counts across the entire history ( from t = 0 to t ) LGM response ( t ; w ) = local mean response rate at time t global mean response rate up to time t = the mean response rates across the last w weeks ( from week ( t - w ) to t the mean open rate across the entire history ( from t = 0 to t )

(103) The LGM of a particular time instance “t” for an intended recipient “i” represents a recent change in engagement by a recipient 120 compared to the longer-running overall engagement for that recipient. By dividing a sliding window average by the running (i.e., cumulative) average, the campaign platform 110 is able to capture recent changes in behavioral trends for a recipient 120 via the detected change in engagement of the recipient.

(104) The LGMresponse (the B matrix above) reflects the change in response rate of a particular user. If it is relatively low, that means that the response rate decreased recently. If the response LGMresponse is relatively high, then it reflects an increase in the response rate for the particular recipient. As such, lower LGMresponse corresponds to greater fatigue, and high LGM.sub.response to less fatigue and more engagement. In the embodiments discussed herein, the LGM is considered to be low if the LGM is less than a threshold value (the T.sub.open_rate_LGM). If the campaign platform 110 determines that B (the LGM.sub.response) is less than T.sub.open_rate_LGM, then the recipient 120 is considered to be fatigued. The campaign platform 110 tracks the consecutive number of values of B that are below this threshold. If the campaign platform 110 determines that the consecutive sequence is longer than T.sub.fatigue_duration and it is recent, it will classify the intended recipient 120 as “saturated” by setting fatigue status attribute for the respective intended recipient profile 112 as “saturated”.

(105) If the LGM.sub.response is relatively high, then the recipient is considered to be increasing in response rate. This reflects that a recipient 120 is not fatigued/less likely to be fatigued. To determine if the LGM is relatively high, the campaign platform 110 determines whether the LGM.sub.response (again, the matrix B) is greater than or equal to the T.sub.open_rate_LGM. If B is greater than or equal to T.sub.open_rate_LGM, the recipient 120 is not considered to be fatigued.

(106) For example, the threshold can be an LGMresponse value of one (meaning a ratio of 1/1 resulting from the equation above). If the LGMresponseless than one, then the localmean is is smaller than the global mean. This means that recently, the user has a lower response rate than usual, and is fatigued. In this case, the LGM.sub.response is considered to be “low.” Conversely, if the numerator is higher than the denominator (i.e., a ratio greater than one), the local mean is higher than global mean. This means that the local response rate of a customer is higher than the usual response rate, so then they not considered to be fatigued by the campaign platform 110.

(107) At step 450, the campaign platform 110 ranks first the causality metrics in descending order (“ones” first, then the “zeroes”), then the R.sup.2 in descending order, then send LGM (LGM.sub.send) vectors in descending order, and then the open rate LGM (LGM.sub.response) vectors in descending order. The ranking of the intended recipients 120 reflects the degree of saturation of the intended recipients, starting at most saturated and descending from there. The fatigue score discussed above comprises a vector<R.sup.2 (of causality), send LGM (from L.sub.i), open rate LGM>for a given recipient and is not a scalar (one) value.

(108) At step 460, the campaign platform 110 partitions the ranked list according to one or more pre-determined breakpoints. By default, a breakpoint is set such that the top of the ranked list has a smaller number of recipients than the bottom of the list. The breakpoints can be adjusted by a system user such as a marketer and additional breakpoints can be added such that there are more than two sub-segments.

(109) FIG. 5 illustrates a ranked list of intended recipient profiles 112 with the pre-determined breakpoints 510 and 520, illustrated by the broken lines.

(110) The profiles 112 above the breakpoint 510 are considered to be the highest ranking (i.e., most fatigued) recipients, which are considered “send-fatigued”. The campaign platform 110 then sets the state attribute of these profiles to “rest” and thus excludes this top sub-segment from campaign messaging for a period of time as part of the “rest and rejuvenation” stage, as discussed with regard to steps 260-280 of FIG. 2.

(111) In managing the various possible states for an intended recipient, the system is programmed to carry out transitions between states. Not all states can change to all other states under all conditions. Instead, the transition rules govern how and when the campaign platform 110 is able to transition an intended recipient profile 112 between one state and another state. The various possible transitions are illustrated in FIG. 6, and are as follows:

(112) From normal state 610 to rest state 620 (transition 640): This can be considered the “quarantining” transition that is discussed in detail above whereby send-fatigued intended recipient profiles 112 are placed into a rest state 620.

(113) From rest state 620 to safe state 630 (transition 650): After a send-fatigued intended recipient has been in the rest state 620 for a pre-determined amount of days, the system transitions the intended recipient into the safe state 630.

(114) From safe state 630 to rest state 620 (transition 660): If an intended recipient profile 112 is in the safe state 630 and still remains send-fatigued after a predetermined amount of days, then the intended recipient will be returned to the rest state 620 and remain in quarantine for a new quarantine period.

(115) From the safe state 630 to a normal state 610 (transition 670): If an intended recipient profile 112 that is in the safe state 630 is determined by the campaign platform 110 to no longer be send-fatigued after a predetermined amount of days, then the intended recipient profile 112 is returned to the normal state 610.

(116) It should be noted that in the systems and methods of the inventive subject matter it is not possible to transition directly from the normal state 610 to the safe state 630. If the intended recipient profile 112 transitions from the safe state 630 to the normal state 610, they will not directly go back to a safe state 630 if they have “relapsed” back into being send-fatigued. Instead, the system will transition this intended recipient profile 112 back into the rest state 620. In embodiments, the time that “relapsed” intended recipient profile 112 spend in the rest state 620 is increased as a function of the number of relapses.

(117) Likewise, it should be noted that in the systems and methods of the inventive subject matter, it is not possible to transition directly from a rest state 620 to a normal state 610. An intended recipient profile 112 only transitions to a normal state 610 from a safe state 630. The safe state 630 functions as a vetting state to determine whether the intended recipient 120 associated with the intended recipient profile 112 remains send-fatigued. Without this intermediate vetting stage, a recently send-fatigued, isolated intended recipient profile 112 that was at rest would go back to normal and then immediately be segmented as over-fatigued and sent back to the rest state 620 without being able to “recover” from the send-fatigue.

(118) In an alternative embodiment of the inventive subject matter, the recipients list 113 is global table of all of the intended recipients with each row corresponding to a recipient profile 112 and each column representing a different attribute within the profile. Thus, the fatigue status attribute and state attribute are each columns in the table. In these embodiments, the determination of the fatigue status attribute and state attributes, and the associated processes discussed above apply as well. However, in these embodiments the profiles 112 are not removed or added to the list based on the fatigue status attribute and state attribute. Instead, in these embodiments “removal” from the list 113 as discussed above is intended to mean that the campaign platform 110 simply skips sending campaigns to any profile 112 having a state attribute of “rest”. Likewise, in these embodiments, re-inserting the profile 112 into the list 113 as discussed above is intended to mean that upon changing the state attribute from “rest” to either “normal” or “safe”, the campaign platform 110 resumes sending campaigns to that recipient as well as applying the other processes associated with the inventive subject matter discussed above.

(119) It should be apparent to those skilled in the art that many more modifications besides those already described are possible without departing from the inventive concepts herein. The inventive subject matter, therefore, is not to be restricted except in the spirit of the appended claims. Moreover, in interpreting both the specification and the claims, all terms should be interpreted in the broadest possible manner consistent with the context. In particular, the terms “comprises” and “comprising” should be interpreted as referring to elements, components, or steps in a non-exclusive manner, indicating that the referenced elements, components, or steps may be present, or utilized, or combined with other elements, components, or steps that are not expressly referenced. Where the specification claims refers to at least one of something selected from the group consisting of A, B, C . . . and N, the text should be interpreted as requiring only one element from the group, not A plus N, or B plus N, etc.