# US 2015/0100409 A1 · System and method for managing message campaign data

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2015/0100409 A1
- Document ID: US20150100409A1
- Status: Published application
- Kind: A1
- Application number: 14/508,896
- Filed: 2014-10-07
- Published: 2015-04-09
- Earliest claimed: 2013-10-09
- Assignees: Selligent, Inc.
- Applicants: Strongview Systems, Inc.
- Inventors: Jeremy STERNS; Tulsi Ram MAYALA
- Web page: https://patentgrep.com/patent/US20150100409A1

## CPC

- G06Q 30/0242: Determining effectiveness of advertisements
- G06Q 30/0251: Targeted advertisements
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR

## Abstract

A server system comprising one or more processors and memory initiates delivery of a respective message campaign that includes one or more messages addressed to a plurality of users. The server system receives, from the plurality of users, campaign-feedback data indicative of user interaction. The campaign-feedback data includes information that enables generation of campaign reports including quantitative information about the message campaigns. After receiving the campaign-feedback data, the server system transmits, to one or more remote storage systems, campaign-tracking data that is based on the campaign-feedback data and then receives, from a requestor, a first request for analysis of the campaign-feedback information. In response to receiving the first request for analysis of the campaign-feedback information, the server system obtains a campaign report generated using the campaign-tracking data from the one or more remote storage systems; and provides the campaign report to the requestor.

## Claims

### Claim 1

A method, comprising:
at a server system comprising one or more processors and memory:
initiating delivery of a plurality of message campaigns to a plurality of users, wherein a respective message campaign of the plurality of message campaigns includes one or more messages addressed to at least a subset of the plurality of users;
receiving, from a plurality of client devices associated with the plurality of users, campaign-feedback data, wherein:
the campaign-feedback data is indicative of user interaction with the messages transmitted to the plurality of client devices as part of the plurality of message campaigns; and
the campaign-feedback data includes information that enables generation of campaign reports that provide quantitative information about one or more of the plurality of message campaigns;
after receiving the campaign-feedback data, transmitting, to one or more remote storage systems, campaign-tracking data that is based on the campaign-feedback data;
after transmitting the campaign-tracking data to the one or more remote storage systems, receiving, from a requestor, a first request for analysis of the campaign-feedback information; and
in response to receiving the first request for analysis of the campaign-feedback information:
obtaining a campaign report generated using the campaign-tracking data from the one or more remote storage systems; and
providing the campaign report to the requestor.

### Claim 2 (depends on 1)

The method of claim 1, wherein the campaign-tracking data includes fine grained information that enables analysis of the campaign-tracking data based on arbitrary analysis criteria.

### Claim 3 (depends on 1)

The method of claim 1, wherein the first request for analysis of the campaign-feedback information includes analysis criteria that were not available to the server system at the time that the campaign-tracking data was stored in the remote storage system.

### Claim 4 (depends on 1)

The method of claim 1, comprising, storing recent campaign-tracking data that is from before a respective date in a local storage system, wherein:
the recent campaign-tracking data stored at the local storage system enables the server system to execute queries that have a date range that does not extend beyond the respective date using data in the local storage system without retrieving data from the remote storage system; and
the campaign-tracking data transmitted to the remote storage system includes at least a portion of the recent campaign-tracking data and enables the server system to execute queries that have a date range that extends beyond the respective date.

### Claim 5 (depends on 1)

The method of claim 1, wherein the first request for analysis of the campaign-feedback information analytics includes a request to generate a pivot table with one or more user-selected metrics and one or more user-selected dimensions.

### Claim 6 (depends on 5)

The method of claim 5, wherein the one or more user-selected metrics include a metric selected from the set consisting of:
a number of people targeted by a message campaign;
a number of invalid addresses in a message campaign;
a number of message delivery failures in a message campaign;
a message delivery failure rate in a message campaign;
a number of messages opened in a message campaign;
a message open rate in a message campaign;
a number of messages in which content was clicked on in a message campaign;
a message click rate in a message campaign;
a number of messages that were converted into sales in a message campaign;
a conversion rate at which messages were converted to sales in a message campaign;
an amount of revenue generated by a message campaign;
an average order value of orders placed in response to a message campaign;
a number of unsubscription requests received in response to a message campaign;
a unsubscription rate for users who received a message campaign;
a number complaints received about a message campaign; and
a rate at which complaints were received in a message campaign.

### Claim 7 (depends on 5)

The method of claim 5, wherein the one or more user-selected dimensions include a dimension selected from the set consisting of:
time at which a message campaign was sent;
time at which responses to a message campaign were received;
message campaign identifier for a message campaign;
message campaign version for a message campaign;
email domain to which messages in a message campaign were sent;
target users to which a message campaign was sent;
message content regions in a message of a message campaign; and
audience segment of a message campaign.

### Claim 8 (depends on 1)

The method of claim 1, comprising:
prior to receiving the campaign-feedback data, obtaining a set of analysis criteria;
while receiving the campaign-feedback data, aggregating at least a subset of the campaign-feedback data to generate aggregated campaign data in accordance with the set of analysis criteria;
storing the aggregated campaign data in a local storage system;
after storing the aggregated campaign data, receiving a second request for analysis of the campaign-feedback information; and
in response to receiving the second request for analysis of the campaign-feedback information:
in accordance with a determination that the second request can be satisfied using data aggregated in accordance with the set of analysis criteria, generating a campaign report that is responsive to the second request using the aggregated campaign data; and
in accordance with a determination that the second request cannot be satisfied using data aggregated in accordance with the set of analysis criteria, obtaining a campaign report generated using the campaign-tracking data from the one or more remote storage systems.

### Claim 9 (depends on 1)

The method of claim 1, wherein, the respective message campaign includes messages sent using a plurality of different message types.

### Claim 10 (depends on 1)

The method of claim 1, wherein, a respective remote storage system of the one or more remote storage systems has a plurality of performance levels and the method includes:
while using the respective remote storage system at a first performance level, determining that a different performance level for the respective remote storage system is needed;
in response to the determination that a different performance level for the respective remote storage system is needed, requesting a change in performance level of the respective remote storage system from the first performance level to a second, different performance level, wherein the performance level of the respective remote storage system includes values for one or more of:
an amount of storage space available at the respective remote storage system;
a speed of read access to the respective remote storage system;
a speed of write access to the respective remote storage system; and
shared use of storage servers at the remote storage system.

### Claim 11

A server system, comprising:
one or more processors;
memory; and
one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, the one or more programs including instructions for:
initiating delivery of a plurality of message campaigns to a plurality of users, wherein a respective message campaign of the plurality of message campaigns includes one or more messages addressed to at least a subset of the plurality of users;
receiving, from a plurality of client devices associated with the plurality of users, campaign-feedback data, wherein:
the campaign-feedback data is indicative of user interaction with the messages transmitted to the plurality of client devices as part of the plurality of message campaigns; and
the campaign-feedback data includes information that enables generation of campaign reports that provide quantitative information about one or more of the plurality of message campaigns;
after receiving the campaign-feedback data, transmitting, to one or more remote storage systems, campaign-tracking data that is based on the campaign-feedback data;
after transmitting the campaign-tracking data to the one or more remote storage systems, receiving, from a requestor, a first request for analysis of the campaign-feedback information; and
in response to receiving the first request for analysis of the campaign-feedback information:
obtaining a campaign report generated using the campaign-tracking data from the one or more remote storage systems; and
providing the campaign report to the requestor.

### Claim 12 (depends on 11)

The server system of claim 11, wherein the campaign-tracking data includes fine grained information that enables analysis of the campaign-tracking data based on arbitrary analysis criteria.

### Claim 13 (depends on 11)

The server system of claim 11, wherein the first request for analysis of the campaign-feedback information includes analysis criteria that were not available to the server system at the time that the campaign-tracking data was stored in the remote storage system.

### Claim 14 (depends on 11)

The server system of claim 11, wherein the one or more programs comprise instructions for, storing recent campaign-tracking data that is from before a respective date in a local storage system, wherein:
the recent campaign-tracking data stored at the local storage system enables the server system to execute queries that have a date range that does not extend beyond the respective date using data in the local storage system without retrieving data from the remote storage system; and
the campaign-tracking data transmitted to the remote storage system includes at least a portion of the recent campaign-tracking data and enables the server system to execute queries that have a date range that extends beyond the respective date.

### Claim 15 (depends on 11)

The server system of claim 11, wherein the first request for analysis of the campaign-feedback information analytics includes a request to generate a pivot table with one or more user-selected metrics and one or more user-selected dimensions.

### Claim 16 (depends on 15)

The server system of claim 15, wherein the one or more user-selected metrics include a metric selected from the set consisting of:
a number of people targeted by a message campaign;
a number of invalid addresses in a message campaign;
a number of message delivery failures in a message campaign;
a message delivery failure rate in a message campaign;
a number of messages opened in a message campaign;
a message open rate in a message campaign;
a number of messages in which content was clicked on in a message campaign;
a message click rate in a message campaign;
a number of messages that were converted into sales in a message campaign;
a conversion rate at which messages were converted to sales in a message campaign;
an amount of revenue generated by a message campaign;
an average order value of orders placed in response to a message campaign;
a number of unsubscription requests received in response to a message campaign;
a unsubscription rate for users who received a message campaign;
a number complaints received about a message campaign; and
a rate at which complaints were received in a message campaign.

### Claim 17 (depends on 15)

The server system of claim 15, wherein the one or more user-selected dimensions include a dimension selected from the set consisting of:
time at which a message campaign was sent;
time at which responses to a message campaign were received;
message campaign identifier for a message campaign;
message campaign version for a message campaign;
email domain to which messages in a message campaign were sent;
target users to which a message campaign was sent;
message content regions in a message of a message campaign; and
audience segment of a message campaign.

### Claim 18 (depends on 11)

The server system of claim 11, comprising:
prior to receiving the campaign-feedback data, obtaining a set of analysis criteria;
while receiving the campaign-feedback data, aggregating at least a subset of the campaign-feedback data to generate aggregated campaign data in accordance with the set of analysis criteria;
storing the aggregated campaign data in a local storage system;
after storing the aggregated campaign data, receiving a second request for analysis of the campaign-feedback information; and
in response to receiving the second request for analysis of the campaign-feedback information:
in accordance with a determination that the second request can be satisfied using data aggregated in accordance with the set of analysis criteria, generating a campaign report that is responsive to the second request using the aggregated campaign data; and
in accordance with a determination that the second request cannot be satisfied using data aggregated in accordance with the set of analysis criteria, obtaining a campaign report generated using the campaign-tracking data from the one or more remote storage systems.

### Claim 19 (depends on 11)

The server system of claim 11, wherein, the respective message campaign includes messages sent using a plurality of different message types.

### Claim 20

A method, comprising:
at a computer system comprising one or more processors and memory:
transmitting a request to a server system to initiate delivery of a plurality of message campaigns to a plurality of users, wherein a respective message campaign of the plurality of message campaigns includes one or more messages addressed to at least a subset of the plurality of users;
after the plurality of message campaigns have been initiated, transmitting, to the server system, a request for analysis of campaign-feedback data received from a plurality of client devices associated with the plurality of users, wherein:
the campaign-feedback data is indicative of user interaction with the messages transmitted to the plurality of client devices as part of the plurality of message campaigns; and
the campaign-feedback data includes information that enables generation of campaign reports that provide quantitative information about one or more of the plurality of message campaigns; and
in response to the request, receiving, from the server system, a campaign report generated based on the campaign-feedback data that was generated using data retrieved from one or more remote storage systems different from the server system.
