U.S. patent application number 13/889087 was filed with the patent office on 2014-01-02 for determining the relevance of offers.
This patent application is currently assigned to Dropbox, Inc.. The applicant listed for this patent is Dropbox, Inc.. Invention is credited to Paul Graham.
Application Number | 20140006168 13/889087 |
Document ID | / |
Family ID | 34135951 |
Filed Date | 2014-01-02 |
United States Patent
Application |
20140006168 |
Kind Code |
A1 |
Graham; Paul |
January 2, 2014 |
DETERMINING THE RELEVANCE OF OFFERS
Abstract
Offers are targeted to consumers by comparing offer profiles and
consumer profiles. Offer profiles are created by analyzing the
cumulative content of communications associated with consumers who
respond to the offers. Consumer profiles are created by analyzing
the cumulative content of communications associated with a user of
an electronic communications system. An offer may be selected to be
sent to a user based on the relative similarity between the user's
consumer profile and the offer profile.
Inventors: |
Graham; Paul; (San
Francisco, CA) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
Dropbox, Inc.; |
|
|
US |
|
|
Assignee: |
Dropbox, Inc.
San Francisco
CA
|
Family ID: |
34135951 |
Appl. No.: |
13/889087 |
Filed: |
May 7, 2013 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
10639811 |
Aug 11, 2003 |
8458033 |
|
|
13889087 |
|
|
|
|
Current U.S.
Class: |
705/14.66 |
Current CPC
Class: |
G06Q 30/02 20130101;
G06Q 30/0269 20130101 |
Class at
Publication: |
705/14.66 |
International
Class: |
G06Q 30/02 20060101
G06Q030/02 |
Claims
1. A computer-implemented method of creating an offer profile, the
method comprising: associating with an offer, a plurality of
consumer communications unrelated to the offer, a subset of the
plurality of consumer communications being associated with
consumers to which the offer was previously sent; and creating, via
a processor, a profile for the offer based at least in part on
statistical properties of the plurality of consumer communications
unrelated to the offer.
2. The computer-implemented method of claim 1 further comprising:
prior to associating the plurality of consumer communications
unrelated to the offer, receiving information about a response to
the offer by a consumer.
3. The computer-implemented method of claim 2, wherein creating the
profile is further based at least in part on the information about
a response to the offer by a consumer.
4. The computer-implemented method of claim 3, wherein creating the
profile comprises: weighting the plurality of consumer
communications unrelated to the offer based on the information
about a response to the offer by a consumer.
5. The computer-implemented method of claim 1 further comprising:
presenting the offer to at least one consumer based at least in
part on the profile.
6. A system for creating an offer profile, the system comprising: a
profile server configured for associating with an offer, a
plurality of consumer communications unrelated to the offer, a
subset of the plurality of consumer communications being associated
with consumers to which the offer was previously sent; and the
profile server further configured for creating a profile for the
offer based at least in part on statistical properties of the
plurality of consumer communications unrelated to the offer.
7. The system of claim 6 further comprising: prior to associating
the plurality of consumer communications unrelated to the offer,
the profile server receiving information about a response to the
offer by a consumer.
8. The system of claim 7, wherein creating the profile is further
based at least in part on the information about a response to the
offer by a consumer.
9. The system of claim 8, wherein creating the profile comprises:
weighting the plurality of consumer communications unrelated to the
offer based on the information about a response to the offer by a
consumer.
10. A computer-implemented method of creating a consumer profile,
the method comprising: associating with a consumer a plurality of
communications, a communication included in the plurality of
communications when the consumer is at least one of a sender of the
communication, a recipient of the communication, or referenced in
the communication; and creating, via a processor, a profile for the
consumer based at least in part on statistical properties of the
plurality of communications.
11. The computer-implemented method of claim 10, wherein the
plurality of communications are electronic communications.
12. The computer-implemented method of claim 11, wherein the
electronic communications include at least one of an electronic
mail message, an instant message, voice message, file sharing
information, or files.
13. The computer-implemented method of claim 10, wherein a
communication includes a body text and accompanying
information.
14. The computer-implemented method of claim 13, wherein
accompanying information includes at least one of an email header,
an email subject line, an attachment to the communication, an
addressee of the communication, date of the communication, time of
the communication, location associated with the communication,
device associated with the communication, or service associated
with the communication.
15. A system for creating a consumer profile, the method
comprising: a mail server configured for associating with a
consumer a plurality of communications, a communication included in
the plurality of communications when the consumer is at least one
of a sender of the communication, a recipient of the communication,
or referenced in the communication; and a profile server configured
for creating a profile for the consumer based at least in part on
statistical properties of the plurality of communications.
16. The system of claim 15, wherein the plurality of communications
are electronic communications.
17. The system of claim 16, wherein the electronic communications
include at least one of an electronic mail message, an instant
message, voice message, file sharing information, or files.
18. The system of claim 15, wherein a communication includes a body
text and accompanying information.
19. The system of claim 18, wherein accompanying information
includes at least one of an email header, an email subject line, an
attachment to the communication, an addressee of the communication,
date of the communication, time of the communication, location
associated with the communication, device associated with the
communication, or service associated with the communication.
20. The system of claim 15 further comprising: a server for
presenting an offer to the consumer based at least in part on the
profile.
Description
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This application is a continuation of and claims the benefit
of U.S. Non-Provisional application Ser. No. 10/639,811, filed on
Aug. 11, 2003. Said application is expressly incorporated herein by
reference in their entirety.
TECHNICAL FIELD
[0002] The invention generally relates to profiling offers and
consumers, and using the profiles to determine or predict the
relevance of the offers to consumers
BACKGROUND
[0003] Merchants use various statistical methods and models in an
attempt to maximize the effectiveness of offers sent to consumers.
Certain of such methods and models attempt to predict the
likelihood that a given consumer or a set of consumers will respond
favorably to a particular offer based on various geographic and
demographic characteristics of the consumer. Other models look at
historical purchase or payment data of current customers to predict
follow-on behavior such as the current customer's future purchases
or payment behavior.
[0004] In general, the accuracy of any model is dependent on the
amount, relevancy, and quality of the input data. A model that
includes every piece of information about a person and all their
actions could make very accurate predictions regarding the future
behaviors of that person. However, the amount of computing
resources, data, and time needed to create an all-inclusive model
makes such a system cost prohibitive to build and to maintain. In
contrast, "mass mailings" tend to have minimal up-front modeling
costs because offers are sent out with little or no regard to the
recipients. However, this approach can have success rates (number
of purchases/number of offers sent) of less than 1%, and thus
generally are not effective. Sending such a large volume of offers
that are ultimately never acted upon can cost a significant amount
of money, and produces minimal returns. In addition to the two
extreme approaches described above, other methods attempt to
achieve an economic balance between maximizing offer success rates
and minimizing the complexity, and thus the cost, of the predictive
models.
[0005] One approach is the use of "marketing databases." In
general, marketing databases store information about current and/or
potential customers. Such information can include data regarding a
customer's previous purchases, customer service interactions,
promotions received by a customer, geographic data, and demographic
data. As the database accumulates more information about current
customers, merchants can build models with predictive features,
including determining which consumers are more likely to respond to
certain offers in a positive fashion. Another approach is
collaborative filtering, where a merchant compares prior purchases
of one consumer to the prior purchases of another consumers. When
the one consumer revisits the merchant (for example, in person, on
the World Wide Web, or by receiving a catalog) the merchant
presents the one consumer with offers for products or services
purchased by the other consumers who have purchase histories
similar to those of the one customer. This approach requires that
the merchant have some historical purchase information about the
one consumer.
[0006] Merchants also track the behavior of web site visitors by
assigning each user a unique identifier which can then be kept in
the URL as the visitor visits other pages of the site or stored as
a "cookie" file in the browser. By this means, merchants and
advertisers can track the pages viewed and the products purchased
of each user. Thus, the operator may target ads, offers, or content
accordingly. This approach is also based on a consumer's previous
interactions with the merchant.
SUMMARY
[0007] Merchants can use information about a consumer's historical
purchases in concert with generally available demographic data, but
even such combinations do not allow the prediction with accuracy of
the behavior of a consumer who has no prior interaction with the
merchant.
[0008] Electronic communications companies provide a multitude of
services to consumers and merchants such as Internet access,
delivery of text and graphical content, web-based electronic mail
("email"), and instant messaging. Furthermore, these same companies
provide merchant services such as advertisement development,
content and application hosting, distribution of offers to members
of the general public, and access to advertisement space on content
pages and emails. By providing these services, the electronic
communication companies have access to large amounts of
communications sent to and from both their users as well as members
of the general public, manage the delivery of electronic offers
from merchants to general visitors to their sites, and track which
visitors select particular advertisements. This large volume of
data offers a significant opportunity to classify, analyze, and
score the content of communications based on the actions of
particular users in order to better predict the effectiveness of
offers without requiring an initial interaction between the
consumer and the merchants making the offers.
[0009] The invention relates to methods and systems for assessing
the relevance of an offer to be presented to a consumer by applying
profiling and classification methods to the content of
communications among consumers. More particularly, the invention
relates to targeting offers accurately to consumers by creating
offer profiles based on the content of various communications
associated with consumers who have responded to the offers but
whose communications do not contain any reference to or information
about the offers, creating consumer profiles based on the
cumulative content of the communications associated with consumers,
comparing a consumer's consumer profile to a set of offer profiles,
determining an offer profile that tends to match the consumer's
consumer profile, and delivering the offer associated with that
profile to that consumer.
[0010] In one aspect, the invention relates to a method of
determining the relevance of offers to consumers. The method
comprises providing a plurality of offer profiles, each of which is
associated with an offer and based at least in part on the content
of at least one communication which is unrelated to the offer.
Furthermore, the method comprises providing a plurality of consumer
profiles. Each consumer profile is associated with a consumer and
based on the content of at least one communication associated with
the consumer. In addition, the method determines the relevance of
one of the offers to one of the consumers by comparing the offer
profile associated with that offer to the consumer profile
associated with that consumer.
[0011] Prior to providing the offer profiles, the offers can be
sent to at least one consumer. The at least one communication
unrelated to the offer can be associated with the at least one
consumer. Information about a consumer's responses to one of the
offers can be received. The offer profiles can be based, in part,
on the information received about the response of one of the
consumers to one of the offers, and a weight can be given to at
least one communication unrelated to the offer based on the
information received about the response of one of the consumers to
one of the offers. At least one of the offers may be an
advertisement. At least one of the communications unrelated to the
offer can be an electronic communication. The electronic
communication can be one or more of an electronic mail message, an
instant message, or a voice message. At least one of the
communications associated with a consumer can be an electronic
communication. The electronic communication associated with a
consumer can be one or more of an electronic mail message, an
instant message, or a voice message.
[0012] Another aspect of the invention features a system for
determining the relevance of offers to users of an electronic
communications system. The system includes a first profiler for
determining an offer profile for an offer based at least in part on
the content of at least one communication unrelated to the offer.
The system also includes a second profiler for determining a
consumer profile for a user of the electronic communications system
based at least in part on the content of electronic communications
associated with the user of the electronic communications system.
Furthermore, the system includes a comparison engine for comparing
the offer profile to the consumer profile to determine the
relevance of the offer to the user.
[0013] The system can include a delivery engine for delivering one
or more offers to the users of the electronic communications
system. The system can include a receiver for receiving information
about at least one response by a user of the electronic
communications system to the one or more offers delivered to the
user of the electronic communications system. The first profiler
may assign a weight to a communication unrelated to the offer based
on the information about a response by a user of the electronic
communications system to the one or more offers delivered to the
user of the electronic communications system. The system may
further include a database server for storing at least one of the
offer, the offer profile, the consumer profile, the information
about a response by a user of the electronic communications system
to the one or more offers delivered to the user of the electronic
communications system, and the electronic communication. The system
may also include a communications server for facilitating
communications among the users of the electronic communications
system. In some versions of the invention, the first and second
profilers are implemented as one software component.
[0014] Another aspect of the invention relates to a method of
creating an offer profile. The method comprises associating with an
offer at least one consumer communication unrelated to the offer.
The method further comprises creating a profile for the offer based
at least in part on the content of the at least one consumer
communication unrelated to the offer.
[0015] The offer can be an advertisement. Prior to associating with
an offer at least one consumer communication unrelated to the
offer, the offer can be sent to at least one consumer. The at least
one consumer communication can be associated with the at least one
consumer. Prior to associating with an offer at least one consumer
communication unrelated to the offer, information about a response
to the offer by a consumer may be received. The offer profile can
be based, at least in part, on the information received about a
response to the offer by a consumer, and a weight may be given to
at least one consumer communication unrelated to the offer based on
the information received about a response to the offer by a
consumer.
[0016] Yet another aspect of the invention relates to a method of
creating a consumer profile. The method comprises assigning
communications between two or more consumers to at least one of the
two or more consumers. The method further comprises creating a
consumer profile for at least one of the two or more consumers
based at least in part on the content of the communications
assigned to the at least one of the two or more consumers. The
communications between two or more consumers can be electronic
communications. Furthermore, the electronic communications can be
one or more of an electronic mail message, an instant message, or a
voice message.
[0017] The foregoing and other objects, aspects, features, and
advantages of the invention will become more apparent from the
following description and from the claims.
BRIEF DESCRIPTION OF THE DRAWINGS
[0018] FIG. 1 is a diagram of an environment in which embodiments
of the invention can operate;
[0019] FIG. 2 is a flow diagram of a process to generate offer
profiles from communications among users of an electronic
communications system, in accordance with an embodiment of the
invention;
[0020] FIG. 3 is a flow diagram of a process to create consumer
profiles based on the cumulative content of communications
associated with a user of an electronic communications system, in
accordance with an embodiment of the invention;
[0021] FIG. 4 is a flow diagram of a process to deliver targeted
offers to users of an electronic communications system by comparing
offer profiles and consumer profiles based on the user
communications, in accordance with an embodiment of the
invention;
[0022] FIG. 5 shows the delivery of targeted offers to users of an
electronic communications system by comparing offer profiles and
consumer profiles based on user communications, in accordance with
an embodiment of the invention; and
[0023] FIG. 6 is a diagram of a system that facilitates the
delivery of targeted offers to users of an electronic
communications system by comparing offer profiles and consumer
profiles based on user communications, in accordance with an
embodiment of the invention.
DESCRIPTION
[0024] In FIG. 1, an environment 100 in which embodiments of the
invention can operate to facilitate the delivery of offers to users
of an electronic communications system by comparing offer profiles
and consumer profiles based on user communications includes one or
more first computing systems ("clients") 102a, 102b and 102c
(generally, 102), a second computing system (a "web/content
server", referred to herein as "web server") 104, a third computing
system (a "mail server") 106, a fourth computing system (an "ad
server") 108, a fifth computing system (a "profile server") 110,
and a sixth computing system (a "merchant server") 112. The clients
102, the web server 104, the mail server 106, and the merchant
server 112 are in communication with a network 114 using
communication channels 116.
[0025] For example, the communication channels 116 can connect the
clients, 102 to a local-area network (LAN), such as a company
intranet, a wide area network (WAN) such as the Internet, and/or
other such network 114. The communication channels 116 that allow
the clients 102 and the servers 104, 106, 108, 110, and 112 to
communicate with the network 114 through the communication channels
116 can be any of a variety of connections including, for example,
standard telephone lines, LAN or WAN links (e.g., T1, T3, 56 kb,
X.25), broadband connections (ISDN, Frame Relay, ATM), and/or
wireless connections. The connections can be established using a
variety of communication protocols (e.g., HTTP(S), TCP/IP, SSL,
IPX, SPX, NetBIOS, Ethernet, RS232, direct asynchronous
connections, a proprietary protocol). In one embodiment, the
clients 102 and the servers 104, 106, 108, 110, and 112 encrypt
some or all communications when communicating with each other or
other devices, not shown.
[0026] Each of the servers 104, 106, 108, 110, and 112 can be any
computing device capable of providing the services requested by the
clients 102, such as personal computers, personal data, assistants,
and phones. This includes delivering content, media, communications
services, and advertisements via the Internet and World Wide Web,
as described in more detail below.
[0027] For purposes of illustration, FIG. 1 depicts a web server
104 as an entity separate and distinct from the mail server 106,
the ad server 108, the profile server 110, and the merchant server
112. The servers 104, 106, 108, 110, and 112 instead can be
implemented, for example, on a single server (e.g., as logically
distinct modules), distributed on portions of two or more servers,
and/or as part of a single server node or server farm in
communication with the network 114 through, for example, a single
web server (not shown). Even if two logical servers are running in
the same physical machine, they may be logically distinct.
[0028] Each of the clients 102 can be any computing device (e.g., a
personal computer, set top box, wireless mobile phone, handheld
device, personal digital assistant, kiosk) used to provide a user
interface to access the network 114 and the web server 104. The
clients 102 can include one or more input/output devices such as a
keyboard, a mouse, a screen, a touch-pad, a biometric input device,
etc. The clients 102 also include an operating system such as any
member of the WINDOWS family of operating systems from Microsoft
Corporation, the MACINTOSH operating system from Apple Computer,
and various varieties of Unix, such as SUN SOLARIS from SUN
MICROSYSTEMS, and GNU/Linux from RED HAT, INC., for example. The
clients 102 also can be implemented on such hardware as a smart or
dumb terminal, network computer, wireless device, information
appliance, workstation, minicomputer, mainframe computer, or other
computing device, that is operated as a general purpose computer or
a special purpose hardware device solely used for serving as a
client 102 to access the network 114. The clients 102 also may
include one or more client-resident applications, such as INTERNET
EXPLORER developed by Microsoft Corporation or NAVIGATOR developed
by AOL Time Warner Corporation.
[0029] As an illustration of how one embodiment of the invention
may operate in the environment 100, a user of an electronic
communications system ("user") accesses the web server 104 from a
client 102a. In some embodiments, access to the web server 104 may
be restricted, thus requiring the user to provide a form of
personal identification such as a user identifier ("ID"), a
password, a secure id, biometric information, or other
authentication information uniquely associated with the user. In
other embodiments, the user may be a member of the general public
visiting a web site hosted on the web server 104 for general public
use. The web server 104 may validate that the user has previously
registered for the services offered by that web server 104. The web
server then grants the user access to some or all of the contents
web server 104, the mail server 106, or other services offered by
the service. The user may then send and receive electronic
communications via the web server 104, the mail server 106, or
other communication devices not shown. Such communications may
include email, instant messaging, file sharing, voice, video,
photographs, audio files, etc. The mail server 106, or other
modules used to facilitate communication among users of the
service, associates each communication with one or users by
assigning a communication to one or more of a sender, to one or
more recipients, or to other users referenced in the communication.
The mail server 106 then groups the communications by each user to
which a communication is associated, and sends the groups of
communications to the profile server 110. The profile server 110
then creates a unique consumer profile for one or more users based
on the cumulative content of the communications associated with
each user.
[0030] The content of the communications associated with a user
includes the body text or any of the accompanying information
related to an electronic message such as an email, an instant
message, or a web log posting. The accompanying information can
include information contained in an email header, information
contained in the subject line, the addressees of the communication,
attachments to the communication, the date the communication was
sent, the time the communication was sent, the location from where
the communication was sent, type of computer the communication was
sent from, or type of service used to compose or deliver the
communication.
[0031] The user also may request to see a particular page or pages
of content from the World Wide Web. The web server 104 delivers the
requested content to the client 102a by receiving HTTP requests
from the client 102a, compiling the web page or pages from the
content provider, and delivering the content to the client 102a.
Merchants or content providers may associate one or more offers
with a page of content by including the offers for services or
products with pages of content. The offers may be in the form of
electronic advertisements, known as banner ads, pop-up ads, emails,
or other similar offers for goods or services. The offers may be
stored, for example, in an ad server 108, which may be managed by a
network service provider, by a merchant, or by a third party. Each
offer is assigned a unique offer identifier ("offer ID") for use by
the web server 104, the ad server 108, the profile server 110, and
the merchant server 112. When a user requests a page of content
having one or more offers associated with it, the web server 104
determines the offer ID(s) associated with the content page and
queries the ad server 108 for the offer(s) identified by the offer
ID(s). The web server 104 then sends one integrated Web page
including both the requested content and the associated offer(s) to
the client 102a.
[0032] If a user wishes to inquire about one of the offers
presented on the page of Web content or attached to an email in the
email footer, the user may select the offer by, for example,
navigating a screen pointer to the offer of interest and "clicking"
on the offer. This action may open a new display window on the
client 102a with more detailed information from the merchant,
replace information displayed in the current display window with
information from the merchant, or alert the merchant to send
additional information to the user. The user may then decide to
initiate a transaction with the merchant, continue to browse the
additional information provided by the merchant, or return to the
originating content page or email. If the user performs some
operation representing a meaningful event (such as making a
purchase, or some other event as identified as relevant by the
merchant), the merchant server 112 captures and stores information
associated with the event. In some embodiments, a merchant may deem
"no action" by the user as a meaningful event, and therefore
captures the non-response of the user. Information associated with
the event can include, for example, the amount paid by the user,
the products purchased by the user, the user's name, the user's
unique user ID, the unique offer identifier for the offer viewed,
the date the offer was viewed, the time of day the offer was
viewed, the amount of time the offer was viewed, etc. The merchant
server 112 then forwards the event information to the profile
server 110. The profile server 110 then requests, from the mail
server 106 or other communications storage device, some or all of
the communications associated with the user ID forwarded from the
merchant server 112. The profile server 110 adds some or all of the
content contained in the user communications received from the mail
server 106 to a collection of the cumulative content of the
communications from the other users, each of whom have viewed and
responded to the particular offer. The profile server 110 then
determines an "offer profile" based at least in part on the
cumulative content of the communications.
[0033] To create offer profiles, the profile server 110 may use one
or more of many document classification techniques known to those
skilled in the art. Examples of such techniques include naive
Bayesian, centroid-based, k nearest neighbors, CRM114, latent
semantic analysis, as well as others.
[0034] Once the profile server 110 creates the offer profiles, the
profile server 110 may compare offer profiles based on the content
of communications from users who previously responded to particular
offers to the consumer profiles of other users who request content
pages to which the offers are associated. For example, one
particular offer profile may show a statistical correlation to a
consumer profile associated with a particular user. Thus, the offer
associated with that offer profile may have more relevance to the
user associated with the consumer profile than other offers. This
correlation information can then be sent to the ad server 108,
which can in turn determine which offer to show to the user
requesting a page of Web content.
[0035] FIG. 2 illustrates one embodiment of the invention for
creating offer profiles based at least in part on the cumulative
content of one or more users' electronic communications unrelated
to the offer. As previously described, offers may be banner ads
included on World Wide Web ("Web") content pages, pop-up ads,
emails, footers or headers attached to emails, US Mail, inserts in
US Mail, or other advertisements for goods or services. A merchant
develops one or more offers (step 202) and assigns a unique offer
ID to each offer. Using the merchant server 112 or some other
computing device, the merchant sends the offer(s) and the
associated offer IDs to an ad server 108 (step 204) where they are
stored for future use (step 206). The ad server 108 then sends the
offer IDs to the profile server 110 (step 208) where the profile
server 110 registers and stores the offer IDs (step 210). The
merchant or content provider assigns one or more offers to one or
more pages of content using the ad server 108 (step 212), or to one
or more emails using the mail server 106, or other computer module
(not shown). The merchant assigns the offers to content pages in a
one-to-one, one-to-many, or many-to-many fashion.
[0036] For example, where the offers are assigned in a many-to-many
fashion, the merchant can assign multiple offers to an individual
page of content such that a user will not see the same offer when
viewing the same page multiple times. Furthermore, the merchant may
assign one offer to multiple pages of content such that the same
offer may appear on more than one page of content.
[0037] As an illustration, an airline may create ten distinct
offers for discount airfares to ten different destinations, and
assign the offers to multiple Web pages within a travel information
Web site. Therefore, the first time a user requests a page of
information on the Caribbean, the user may see an offer to purchase
a discounted airfare ticket to Puerto Rico, and the second time the
user requests the same page, the offer may be for the Bahamas. The
same user may subsequently request a Web page with information on
cruise destinations, and may be shown the same offer for airfare to
Puerto Rico.
[0038] Referring again to FIG. 2, a user visits a web site (step
214) through the web server 104 by providing the URL for the web
site, the IP address for the web site, the keyword for the web
site, or some such identifier. The web server 104 may authenticate
the user if access to the web site is somehow restricted. The
authentication of the user may be through the use of a password,
user ID, or some other user identification means. From the web
site, the user may perform numerous functions such as requesting
content pages, sending email, receiving email, participating in
online chat rooms, etc. For example, the user may compose an email
on the client 102a, and transmit the email to the mail server 106
for delivery to its recipient(s). The mail server 106 receives the
email (step 216), and sends it to the recipient(s) identified by
the user. The mail server 106 then associates the email (step 218)
with one or more individual users. The mail server 106 may
associate the email to the user sending the email. The mail server
106 may associate the email to one or more recipients of the email.
The mail server 106 may associate the email to a person mentioned
in the body of the email. In some embodiments, the mail server 106
may associate the email to a user referenced in the header of the
email.
[0039] The user also may request that one or more pages of content
be delivered to the client 102a by entering an HTTP address into a
location field in an browser application, selecting a saved HTTP
address from a list of previously visited locations, or selecting
an HTTP link from a Web page. The web server 104 processes the
request, and delivers the requested content (step 220) to the
client 102a, including offers such as banner advertisements, email
footers, or other electronic advertisements as previously
described. The user then may view the offers included on the
content pages or emails (step 222). The user's response to the
offer is then captured by the merchant server 112 (step 226). The
user's response may also be captured by the web server 104 (step
224). The user's response to the offer may be any one of selecting
one of the offers, not selecting an offer, purchasing a product,
calling a phone number, sending an email, or other action deemed by
the merchant to be relevant. The merchant server 112 then captures
the user's response, and any information related to the user's
response (step 226). Related data can include the user's name, the
user's unique user ID, the amount the user spent, the products or
services the user purchased, the length of time the user viewed the
offer, the date the user viewed the offer, the time of date the
user viewed the offer, etc.
[0040] Once the merchant server 112 determines that one or more
users responded to an offer, the merchant server 112 sends the
information relating to the response(s) to the profile server 110
(step 228). The merchant server 112 sends the user ID's for the
users who responded to the offer, the offer ID of the offer to
which the users responded, as well as other information related to
the transaction(s). The profile server 110 then requests some or
all of the communications associated with the users identified by
the merchant server 112 (step 230) from the mail server 106. The
mail server 106 then groups all the requested communications (step
232) and sends the collection of communications to the profile
server 110 (step 234). The profile server 110 associates the
collection of communications with the offer by matching the user
IDs sent with the communications to the user IDs and offer IDs sent
from the merchant server 112 (step 236). The profile server 110
then creates an offer profile for the offer based at least in part
on the cumulative content of some or all the communications
associated with the users who responded to the offer (step 238). In
some embodiments, the profile server may wait a specified period of
time before requesting the emails of the users who responded to the
offers. By doing so, the profile server may have a greater number
of emails from which to build the profile, or may be able to assign
different weights to emails based on, for example, how recently the
email was sent, or the particular content page to which the offer
was assigned at the time user viewed the offer. Some merchants may
not forward information about which users responded to a particular
offer. In such cases, offer profiles for similar offers may be used
as offer profiles for the particular offer. Similarities my be
based, for example, on the product or service being offered, the
price at which the product or service is being offered, as well as
others.
[0041] In one version of the invention, the profile server 110 uses
the data relating to the user's response to the offer to further
determine the offer profile. For example, the profile server 110
may weight the content from communications sent or received during
a particular period (just before viewing the offer, for example)
more heavily than communications sent years before viewing the
offer. In another example, communications associated with users who
purchased goods or services based on viewing an offer may be
weighted more heavily than those who only inquired about a product.
In other examples, the importance of one subset of communications
may be weighted more heavily than a second subset if the first
subset of communications are associated with a user who spent over
a certain amount of money with the merchant, while the second user
did not.
[0042] In some embodiments, the determination of whether to use a
particular set of communications, or the degree to which they are
weighted may not occur instantaneously, and in fact may be
determined over a period of time such as a year or more. For
example, a credit card company may determine that the relevant
information about a particular consumer's response to an offer to
sign up for a credit card is not whether the consumer signed up for
the card, but whether they are a profitable customer. Such a
determination may be based on the amount of money the consumer
spends on the card, the degree to which they pay their bill, or
other such measures. In these cases, the communications for such a
user may not be used to formulate the offer profile for the credit
card until such information can be amassed by the card issuer.
[0043] FIG. 3 illustrates one embodiment of the invention for
creating consumer profiles for users of an electronic
communications system. Upon visiting the web site of a provider of
such a system, a user may compose various forms of electronic
communications, such as emails, instant messages, voicemails,
online chat, etc. (step 302). Typically, each communication has a
sender and one or more recipients. Upon receiving a request to
route a communication from a user (step 304), the mail server 106
(or similar server for processing and routing communications)
associates the communication with each of the senders and
recipients (step 308). The mail server 106 then delivers the email
to the intended recipient (step 310). The user operating the client
102 may also be identified as a recipient of an email message, such
that the mail server 106 receives a request to deliver an email to
the user (step 306). In such cases the mail server 106 forwards the
email to the user and the client 102 receives the email message
(step 312). The mail server 106 then sends the collection of
communications to the profile server 110 which generates a consumer
profile (step 314) for one or more of the users based on the
cumulative content of some or all of the communications associated
with each user.
[0044] FIG. 4 illustrates one embodiment of the invention for
determining if one particular offer out of a set of offers is more
appropriate to send to a particular user. A user of an electronic
communications system accesses the web server 104 from a client
102a. In some embodiments, access to the web server 104 may be
restricted, thus requiring the user to provide a form of personal
identification such as a user identifier ("ID"), a password, a
secure id, biometric information, or other authentication
information uniquely associated with the user. The web server 104
may validate that the user has previously registered for the
services offered by that web server 104. The web server then grants
the user access to some or all of the contents web server 104, the
mail server 106, or other services offered by the service (step
404). The user then requests pages of Web content (step 406) to be
sent to their client machine 102a by entering an HTTP address into
a web browser, by clicking on an HTTP link on a web page, or other
means of navigating to a particular Web page. The web server 104
receives the request and gathers the content (step 408) requested
by the user, either from its own stored content or from other web
servers (not shown). If the requested content page contains
instructions to include one or more offers, the web server 104
sends both the user ID of the user (or other means of identifying
the user) requesting the page and the offer IDs for the offers that
are associated with the requested page to the profile server 110
(step 410). The profile server 110 retrieves the offer profiles for
each of the associated offers, (step 412) and the consumer profile
for the user requesting the page (step 414). The profile server 110
then compares one or more of the retrieved offer profiles to the
retrieved consumer profile (step 416). The profile server 110
identifies which offer profile is most similar to the consumer
profile (step 418) and sends the offer ID (step 420) corresponding
to the identified offer profile to the ad server 108. The ad server
108 retrieves the offer associated with the offer ID, and sends the
offer to the web server 104 (step 422). The web server 104 then
constructs the web page using the selected offer, (step 424) and
forwards the completed page to the client machine 102a for viewing
by the user (step 426). In one embodiment, the ad server 108
maintains a historical record of the offers viewed by a user. In
such cases, the ad server 108 retrieves an alternate offer other
than the offer corresponding to the offer profile that is most
similar to the consumer profile. In some embodiments, multiple
offers are identified as similar to the consumer profile of the
user, and the ad server 108 randomly selects one of the offers
inclusion on the web page or email being sent to the user.
[0045] FIG. 5 further illustrates one preferred embodiment of the
invention. User A 502 has previously sent or received forty email
messages, and sixty instant messages for a total of one hundred
communications 504. The collection of one hundred communications
504 is associated with user A 502. User B 506 has sent or received
twenty email messages and thirty instant messages for a total of
fifty communications 508. The collection of fifty communications
508 is associated with user B 506. Upon requesting a page of Web
content, user A 502 and user B 506 are shown two offers, offer 1,
510, and offer 2, 512. User A 502 responds positively to offer 1,
510, and user B 506 responds positively to both offer 1, 510, and
offer 2, 512. The one hundred communications 504 associated with
user A 502 are assigned only to offer 1, 510, while the fifty
communications 508 associated with user B 506 are assigned both to
offer 1, 510, and to offer 2, 512. As a result, the collection of
one hundred and fifty communications (504 and 508) associated with
user A 502 and user B 506 are grouped together into one collection
of communications and associated with offer 1 510. The profile
server 110 then creates an offer profile 514 for offer 1 510 based
on the cumulative content of the communications (504 and 508) from
user A 502 and user B 506. The profile server 110 may also create
an offer profile 516 for offer 2 512 based solely on the cumulative
content of the communications 508 from user B 506. As mentioned
above, in one version of the invention the profile server 110 may
weight the communications 504 from user A 502 more heavily than the
communications 508 associated with user B 506 based on user A's 502
response to offer 1, 510. In one embodiment, the each communication
is stored in its entirety on, for example, the mail server 106. In
another embodiment, in cases where the communications are large or
too numerous, only a portion of the communications are stored on
the profile server 110, for example. In another embodiment, a
statistical representation of the communications are stored on, for
example, the profile server 110.
[0046] Continuing with the example above, a third user, user C 518,
has previously sent or received twenty emails and forty instant
messages, collectively 520. According to the method 300 described
above, the profile server 110 builds, or has previously built a
consumer profile 522 based on the content of the sixty
communications 520 associated with user C 518. Further, offers 1,
510, and 2, 512, have been associated with a particular page of Web
content such that the web server 104 will include either offer 1,
510, or offer 2, 512, but not both, when a user requests the page.
When user C 518 requests the page of content with which offers 1,
510, and 2, 512, are associated, a comparison engine 524 compares
the consumer profile 522 for user C 518 with the offer profile 514
for offer 1, 510, and the offer profile 516 for offer 2, 512. If,
for example, the offer profile 514 for offer 1, 510, which is based
at least in part on the content of communications (504 and 508)
from user A 502 and user B 506, is a closer match that the offer
profile 516 for offer 2, 512, which is based only on the content of
communications 508 from user B 506, offer 1, 510, is included on
the page of content and sent to the client 102a. As user A 502,
user B 506, and user C 518 send additional communications such as
emails and/or instant messages, the new communications are added to
the collections for each user, collection 504, collection 508, and
collection 520, for users A 502, B 506, and C 518, respectively. As
the collections grow, the consumer profiles (profile 522 for user C
518, for example) become more reflective of which offers are more
likely to be shown to a user. In addition, as user A 502 and user B
506 generate additional communications, their communications are
added to the collections of communications associated with offers
to which they have responded.
[0047] As a further illustration of the example above, user B 506
may be an avid golfer, and the work "golf" may appear in the
collection of communications 508 associated with user B 506 more
often than the word "golf" appears in a typical collection of
communications from a random member of the general public.
Therefore, using the example above, when user B 506 responds to
offer 2, 512, the word "golf" will appear in the collection of
communications for offer 2 512 and would impact the offer profile
516 for offer 2, 512. However, because user A 502 did not respond
to offer 2, 512, and the collection of communications 504 from user
A 502 does not contain the word "golf" any more frequently than
would a set of communications from a member of the general public,
the collection of communications for offer 1, 514, does not contain
the word "golf" as frequently as does the collection of
communications (504 and 508) for offer 2, 512.
[0048] Further, user C 518 may also be an avid golfer, and
therefore the collection of communications 520 associated with user
C 518 may contain the word "golf" more frequently than would a
collection of communications associated with a member of the
general public. As described above, the consumer profile 522 for
user C 518 would reflect her above-average use of the word "golf"
in her communications. Therefore, when user C 518 requests a page
of web content to which offers 1 and 2 (510 and 512 respectively)
are assigned, the comparison engine 524 recognizes a similarity
between the offer profile 516 for offer 2, 512 and the consumer
profile 522 for user C, 518, and therefore offer 2 512 is shown to
user C 518.
[0049] FIG. 6, illustrates one embodiment of a system 600 for
delivering target offers to users of an electronic communications
system in accordance with the invention. A first user of an
electronic communications system such as an email service,
voicemail service, bulletin board, or the like, logs into the
system 600 from a client 102a by providing authentication
information such as a user ID, password, or similar data. While
logged in, the first user may generate electronic communications
such as emails, instant messages, or similar messages. These
messages may be stored in a database server, 604. In addition,
while logged into the system 600 the first user may request World
Wide Web content pages, with which one or more offers may be
associated. In response to such a request, a delivery engine 606
delivers the content and associated offers to the client 102a. Once
the first user views the content and any associated offers, the
first user may decide to inquire about one of the offers by, for
example, clicking on an electronic advertisement offered by a
merchant. If the merchant determines the first user's interaction
warrants capturing, the merchant captures information about the
first user's interaction in the merchant server 112. The merchant
server then sends the information about the first user's response
to the offer to a receiver, 610.
[0050] Continuing with the above example, the receiver 610
transmits information about the first user's interaction with an
offer to the database server 604, and to a first profiler 612. The
first profiler 612 then requests the communications associated with
the first user, as well as the communications associated with other
users who also responded to the same offer, from the database
server 604. The first profiler 612 then creates an offer profile
based at least in part on the cumulative content of the
communications associated with the set of users, including the
first user, who responded to the offer. The first profiler 612 then
sends the offer profile to the database server 604 where it is
stored for future use.
[0051] A second user then logs into the system 600 from a client
102b and generates electronic communications such as emails,
instant messages, or similar messages which are stored in the
database server, 604. A second profiler 614 requests the
communications associated with the second user and creates a
consumer profile for the second user based at least in part on the
cumulative content of the communications associated with the second
user and sends the consumer profile for the second user to the
database server 604. When the second user requests a page of Web
content having multiple offers associated with it, a comparison
engine 616 requests the offer profiles for the associated offers
and the consumer profile for the second user from the database
server 604. The comparison engine 616 then determines which offer
is most relevant to the second user based on the similarity between
the second user's consumer profile and the offer profiles.
[0052] For embodiments in which the invention is provided as
software, the program may be written in any one of a number of high
level languages such as FORTRAN, PASCAL, JAVA, C, C++, or BASIC.
Additionally, the software could be implemented in an assembly
language directed to the microprocessor resident on the target
computer, for example, the software could be implemented in Intel
80.times.86 assembly language if it were configured to run on an
IBM PC or PC clone. The software may be embodied on an article of
manufacture including, but not limited to, a floppy disk, a hard
disk, an optical disk, a magnetic tape, a PROM, an EPROM, EEPROM,
field-programmable gate array, or CD-ROM.
[0053] In these embodiments, the software may be configured to run
on any personal-type computer or workstation such as a PC or
PC-compatible machine, an Apple Macintosh, a Sun workstation, etc.
In general, any device could be used as long as it is able to
perform all of the functions and capabilities described herein. The
particular type of computer or workstation is not central to the
invention.
[0054] The computer typically will include a central processor, a
main memory unit for storing programs and/or data, an input/output
(I/O) controller, a display device, and a data bus coupling these
components to allow communication therebetween. The memory includes
random access memory (RAM) and read only memory (ROM) chips. The
computer typically also has one or more input devices such as a
keyboard (e.g., an alphanumeric keyboard and/or a musical
keyboard), a mouse, and, in some embodiments, a joystick.
[0055] The computer typically also has a hard drive with hard disks
therein and a floppy drive for receiving floppy disks such as 3.5
inch disks. Other devices also can be part of the computer
including output devices (e.g., printer or plotter) and/or optical
disk drives for receiving, writing and reading digital data on a
CD-ROM. In the disclosed embodiment, one or more computer programs
define the operational capabilities of the system, as mentioned
previously. These programs can be loaded onto the hard drive and/or
into the memory of the computer via the floppy drive, CD-ROM, or
other like device. In general, the controlling software program(s)
and all of the data utilized by the program(s) are stored on one or
more of the computer's storage mediums such as the hard drive,
CD-ROM, etc. In general, the programs implement the invention on
the computer, and the programs either contain or access the data
needed to implement all of the functionality of the invention on
the computer.
[0056] Variations, modifications, and other implementations of what
is described herein may occur to those of ordinary skill without
departing from the spirit and scope of the invention. Accordingly,
the invention is not to be defined only by the preceding
illustrative description.
* * * * *