CROSS REFERENCE TO RELATED APPLICATIONSThis 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 FIELDThe invention generally relates to profiling offers and consumers, and using the profiles to determine or predict the relevance of the offers to consumers
BACKGROUNDMerchants 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.
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.
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.
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.
SUMMARYMerchants 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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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 DRAWINGSFIG. 1 is a diagram of an environment in which embodiments of the invention can operate;
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;
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;
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;
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
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.
DESCRIPTIONInFIG. 1, anenvironment100 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,102band102c(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 clients102, theweb server104, themail server106, and themerchant server112 are in communication with anetwork114 usingcommunication channels116.
For example, thecommunication channels116 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 othersuch network114. Thecommunication channels116 that allow the clients102 and theservers104,106,108,110, and112 to communicate with thenetwork114 through thecommunication channels116 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 clients102 and theservers104,106,108,110, and112 encrypt some or all communications when communicating with each other or other devices, not shown.
Each of theservers104,106,108,110, and112 can be any computing device capable of providing the services requested by the clients102, 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.
For purposes of illustration,FIG. 1 depicts aweb server104 as an entity separate and distinct from themail server106, thead server108, theprofile server110, and themerchant server112. Theservers104,106,108,110, and112 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 thenetwork114 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.
Each of the clients102 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 thenetwork114 and theweb server104. The clients102 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 clients102 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 clients102 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 client102 to access thenetwork114. The clients102 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.
As an illustration of how one embodiment of the invention may operate in theenvironment100, a user of an electronic communications system (“user”) accesses theweb server104 from aclient102a. In some embodiments, access to theweb server104 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 theweb server104 for general public use. Theweb server104 may validate that the user has previously registered for the services offered by thatweb server104. The web server then grants the user access to some or all of thecontents web server104, themail server106, or other services offered by the service. The user may then send and receive electronic communications via theweb server104, themail server106, or other communication devices not shown. Such communications may include email, instant messaging, file sharing, voice, video, photographs, audio files, etc. Themail server106, 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. Themail server106 then groups the communications by each user to which a communication is associated, and sends the groups of communications to theprofile server110. Theprofile server110 then creates a unique consumer profile for one or more users based on the cumulative content of the communications associated with each user.
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.
The user also may request to see a particular page or pages of content from the World Wide Web. Theweb server104 delivers the requested content to theclient102aby receiving HTTP requests from theclient102a, compiling the web page or pages from the content provider, and delivering the content to theclient102a. 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 anad server108, 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 theweb server104, thead server108, theprofile server110, and themerchant server112. When a user requests a page of content having one or more offers associated with it, theweb server104 determines the offer ID(s) associated with the content page and queries thead server108 for the offer(s) identified by the offer ID(s). Theweb server104 then sends one integrated Web page including both the requested content and the associated offer(s) to theclient102a.
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 theclient102awith 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), themerchant server112 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. Themerchant server112 then forwards the event information to theprofile server110. Theprofile server110 then requests, from themail server106 or other communications storage device, some or all of the communications associated with the user ID forwarded from themerchant server112. Theprofile server110 adds some or all of the content contained in the user communications received from themail server106 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. Theprofile server110 then determines an “offer profile” based at least in part on the cumulative content of the communications.
To create offer profiles, theprofile server110 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.
Once theprofile server110 creates the offer profiles, theprofile server110 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 thead server108, which can in turn determine which offer to show to the user requesting a page of Web content.
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 (step202) and assigns a unique offer ID to each offer. Using themerchant server112 or some other computing device, the merchant sends the offer(s) and the associated offer IDs to an ad server108 (step204) where they are stored for future use (step206). Thead server108 then sends the offer IDs to the profile server110 (step208) where theprofile server110 registers and stores the offer IDs (step210). The merchant or content provider assigns one or more offers to one or more pages of content using the ad server108 (step212), or to one or more emails using themail server106, 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.
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.
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.
Referring again toFIG. 2, a user visits a web site (step214) through theweb server104 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. Theweb server104 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 theclient102a, and transmit the email to themail server106 for delivery to its recipient(s). Themail server106 receives the email (step216), and sends it to the recipient(s) identified by the user. Themail server106 then associates the email (step218) with one or more individual users. Themail server106 may associate the email to the user sending the email. Themail server106 may associate the email to one or more recipients of the email. Themail server106 may associate the email to a person mentioned in the body of the email. In some embodiments, themail server106 may associate the email to a user referenced in the header of the email.
The user also may request that one or more pages of content be delivered to theclient102aby 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. Theweb server104 processes the request, and delivers the requested content (step220) to theclient102a, 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 (step222). The user's response to the offer is then captured by the merchant server112 (step226). The user's response may also be captured by the web server104 (step224). 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. Themerchant server112 then captures the user's response, and any information related to the user's response (step226). 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.
Once themerchant server112 determines that one or more users responded to an offer, themerchant server112 sends the information relating to the response(s) to the profile server110 (step228). Themerchant server112 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). Theprofile server110 then requests some or all of the communications associated with the users identified by the merchant server112 (step230) from themail server106. Themail server106 then groups all the requested communications (step232) and sends the collection of communications to the profile server110 (step234). Theprofile server110 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 server112 (step236). Theprofile server110 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 (step238). 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.
In one version of the invention, theprofile server110 uses the data relating to the user's response to the offer to further determine the offer profile. For example, theprofile server110 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.
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.
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. (step302). Typically, each communication has a sender and one or more recipients. Upon receiving a request to route a communication from a user (step304), the mail server106 (or similar server for processing and routing communications) associates the communication with each of the senders and recipients (step308). Themail server106 then delivers the email to the intended recipient (step310). The user operating the client102 may also be identified as a recipient of an email message, such that themail server106 receives a request to deliver an email to the user (step306). In such cases themail server106 forwards the email to the user and the client102 receives the email message (step312). Themail server106 then sends the collection of communications to theprofile server110 which generates a consumer profile (step314) for one or more of the users based on the cumulative content of some or all of the communications associated with each user.
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 theweb server104 from aclient102a. In some embodiments, access to theweb server104 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. Theweb server104 may validate that the user has previously registered for the services offered by thatweb server104. The web server then grants the user access to some or all of thecontents web server104, themail server106, or other services offered by the service (step404). The user then requests pages of Web content (step406) to be sent to theirclient machine102aby 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. Theweb server104 receives the request and gathers the content (step408) 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, theweb server104 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 server110 (step410). Theprofile server110 retrieves the offer profiles for each of the associated offers, (step412) and the consumer profile for the user requesting the page (step414). Theprofile server110 then compares one or more of the retrieved offer profiles to the retrieved consumer profile (step416). Theprofile server110 identifies which offer profile is most similar to the consumer profile (step418) and sends the offer ID (step420) corresponding to the identified offer profile to thead server108. Thead server108 retrieves the offer associated with the offer ID, and sends the offer to the web server104 (step422). Theweb server104 then constructs the web page using the selected offer, (step424) and forwards the completed page to theclient machine102afor viewing by the user (step426). In one embodiment, thead server108 maintains a historical record of the offers viewed by a user. In such cases, thead server108 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 thead server108 randomly selects one of the offers inclusion on the web page or email being sent to the user.
FIG. 5 further illustrates one preferred embodiment of the invention.User A502 has previously sent or received forty email messages, and sixty instant messages for a total of one hundredcommunications504. The collection of one hundredcommunications504 is associated withuser A502.User B506 has sent or received twenty email messages and thirty instant messages for a total of fiftycommunications508. The collection of fiftycommunications508 is associated withuser B506. Upon requesting a page of Web content,user A502 anduser B506 are shown two offers,offer 1,510, andoffer 2,512.User A502 responds positively to offer 1,510, anduser B506 responds positively to bothoffer 1,510, andoffer 2,512. The one hundredcommunications504 associated withuser A502 are assigned only to offer 1,510, while the fiftycommunications508 associated withuser B506 are assigned both to offer 1,510, and to offer 2,512. As a result, the collection of one hundred and fifty communications (504 and508) associated withuser A502 anduser B506 are grouped together into one collection of communications and associated withoffer 1510. Theprofile server110 then creates anoffer profile514 foroffer 1510 based on the cumulative content of the communications (504 and508) fromuser A502 anduser B506. Theprofile server110 may also create anoffer profile516 foroffer 2512 based solely on the cumulative content of thecommunications508 fromuser B506. As mentioned above, in one version of the invention theprofile server110 may weight thecommunications504 fromuser A502 more heavily than thecommunications508 associated withuser B506 based on user A's502 response to offer 1,510. In one embodiment, the each communication is stored in its entirety on, for example, themail server106. In another embodiment, in cases where the communications are large or too numerous, only a portion of the communications are stored on theprofile server110, for example. In another embodiment, a statistical representation of the communications are stored on, for example, theprofile server110.
Continuing with the example above, a third user,user C518, has previously sent or received twenty emails and forty instant messages, collectively520. According to themethod300 described above, theprofile server110 builds, or has previously built aconsumer profile522 based on the content of the sixtycommunications520 associated withuser C518. Further, offers 1,510, and 2,512, have been associated with a particular page of Web content such that theweb server104 will include eitheroffer 1,510, oroffer 2,512, but not both, when a user requests the page. Whenuser C518 requests the page of content with which offers 1,510, and 2,512, are associated, acomparison engine524 compares theconsumer profile522 foruser C518 with theoffer profile514 foroffer 1,510, and theoffer profile516 foroffer 2,512. If, for example, theoffer profile514 foroffer 1,510, which is based at least in part on the content of communications (504 and508) fromuser A502 anduser B506, is a closer match that theoffer profile516 foroffer 2,512, which is based only on the content ofcommunications508 fromuser B506,offer 1,510, is included on the page of content and sent to theclient102a. Asuser A502,user B506, anduser C518 send additional communications such as emails and/or instant messages, the new communications are added to the collections for each user,collection504,collection508, andcollection520, for users A502,B506, andC518, respectively. As the collections grow, the consumer profiles (profile522 foruser C518, for example) become more reflective of which offers are more likely to be shown to a user. In addition, asuser A502 anduser B506 generate additional communications, their communications are added to the collections of communications associated with offers to which they have responded.
As a further illustration of the example above,user B506 may be an avid golfer, and the work “golf” may appear in the collection ofcommunications508 associated withuser B506 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, whenuser B506 responds to offer 2,512, the word “golf” will appear in the collection of communications foroffer 2512 and would impact theoffer profile516 foroffer 2,512. However, becauseuser A502 did not respond to offer 2,512, and the collection ofcommunications504 fromuser A502 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 foroffer 1,514, does not contain the word “golf” as frequently as does the collection of communications (504 and508) foroffer 2,512.
Further,user C518 may also be an avid golfer, and therefore the collection ofcommunications520 associated withuser C518 may contain the word “golf” more frequently than would a collection of communications associated with a member of the general public. As described above, theconsumer profile522 foruser C518 would reflect her above-average use of the word “golf” in her communications. Therefore, whenuser C518 requests a page of web content to which offers 1 and 2 (510 and512 respectively) are assigned, thecomparison engine524 recognizes a similarity between theoffer profile516 foroffer 2,512 and theconsumer profile522 for user C,518, and therefore offer 2512 is shown touser C518.
FIG. 6, illustrates one embodiment of asystem600 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 thesystem600 from aclient102aby 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 thesystem600 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, adelivery engine606 delivers the content and associated offers to theclient102a. 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 themerchant server112. The merchant server then sends the information about the first user's response to the offer to a receiver,610.
Continuing with the above example, thereceiver610 transmits information about the first user's interaction with an offer to thedatabase server604, and to afirst profiler612. Thefirst profiler612 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 thedatabase server604. Thefirst profiler612 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. Thefirst profiler612 then sends the offer profile to thedatabase server604 where it is stored for future use.
A second user then logs into thesystem600 from aclient102band generates electronic communications such as emails, instant messages, or similar messages which are stored in the database server,604. Asecond profiler614 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 thedatabase server604. When the second user requests a page of Web content having multiple offers associated with it, acomparison engine616 requests the offer profiles for the associated offers and the consumer profile for the second user from thedatabase server604. Thecomparison engine616 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.
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×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.
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.
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.
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.
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.