Method of Delivery of Targeting, and Measuring Advertising Over Networks
Methods and apparatuses for targeting the delivery of advertisements over a network such as the Internet are disclosed. Statistics are compiled on individual users and networks and the use of the advertisements is tracked to permit targeting of the advertisements of individual users. In response to requests from affiliated sites, an advertising server transmits to people accessing the page of a site an appropriate one of the advertisement based upon profiling of users and networks.
Latest Google Patents:
This application is a continuation application of, and claims priority to, U.S. patent application Ser. No. 10/798,342, filed on Mar. 12, 2004, which is a divisional application of U.S. patent application Ser. No. 10/254,923, filed on Sep. 26, 2002, pending, which is a continuation of U.S. application Ser. No. 09/293,463, filed on Apr. 15, 1999, abandoned, which is a continuation of U.S. application Ser. No. 08/738,634, filed on Oct. 29, 1996, issued as U.S. Pat. No. 5,948,061, currently in reissue under Reissue application Ser. No. 09/577,798, filed on May 24, 2000.BACKGROUND OF THE INVENTION
1. Area of the Art
This invention relates to methods of delivery of advertisements and measuring responses to those delivered advertisements and in particular relates to the targeting of advertisements delivered over networks such as the Internet.
2. Description of the Prior Art
In advertising, it is considered highly desirable to target advertisements to the appropriate potential customer base, rather than to broadcast advertisements in general. It has long been known that, for example, advertisements for computers should generally not appear in magazines on gardening and, conversely, advertisements for gardening tools should not appear in magazines on computers. Similarly, advertisers have generally targeted their advertisements on television to programs appropriate for the desired customer base.
It has also long been known that an advertisement that is repeated too often will eventually become ignored by consumers. Therefore, an advertise typically wishes to eliminate duplication and reach as many individuals in the advertiser's target group as possible.
The recent development of on-line networks, such as America On-Line, Compuserve, and the Internet, has led to “on-line” advertising. For example, on the Internet, often such on-line advertisements will appear on a web page, such as a banner on the top or the bottom of the page. When the user views a web page using a browser such as Internet Explore 3 or Netscape 3, the banner appears at the appropriate location and user may then try to find out more information regarding the advertisement by selecting the advertisement (clicking through on that banner) to send a request for an object with a given URL address to a different appropriate web site to access, for example, the advertiser's home page.
Nonetheless, such advertising has ha, so far, as poor rate of response because it is untargeted advertising. Thus, someone who is totally uninterested in computers other than they happen to be on the Internet, may continually see advertisements for computers. On the other hand, someone who is interested in computers may continually see advertisements for gardening tools when browsing through a particular web site. Thus it would be highly desirable to have a method of targeting the advertising to the appropriate user.
In addition, if a user of such computer networks is continuously exposed to the same advertisement, the response rate to the advertisement will generally decline. Therefore, it is highly desirable to have a system that controls the frequency of exposure of advertisements to particular users. In addition, it is also important for the advertisers to track response to the advertisements and to acquire as much information about those people responding to the advertisements for targeting those same people at later dates.
Therefore, it is a first object of this invention to provide targeting of advertising over networks such as the Internet. It is a second object of this invention to provide control over frequency of exposure to users for advertisements appearing on web pages overtime. It is a third object of the invention to provide the capability to gather information about recipients of the advertisement.SUMMARY OF THE INVENTION
These and other objects of the invention are achieved by the disclosed system and methods. Information about networks and subnetworks is routinely collected. In addition, information about individual users is also gathered when uses select (click on) different advertisements. Also, data attracted on how often a given advertisement has been displayed, how often a given user has seen a given advertisement, and other information regarding the user and the frequency of the display of the advertisement
To effect such a capability, an advertising server process is provided as a node on the network. The various advertisements are stored on the network of the server and preferably on the server. When, for example, a user using a web browser accesses a web page that is affiliated with the advertising server process, the affiliated page's encoding includes an embedded reference to an object provided by the advertising server process. That causes the user's browser to contact the advertising server process to provide the advertising image or information that will appear on the accessed web page as displayed by the user's browser. Using the address information and/or other information passed by the browser for the user, including the page being accessed by the user, the advertising server process determines an appropriate advertisement to select for the particular user. In addition, the advertising server process will use information such as the number of times the user has seen various advertisements, how often the advertisement has been seen by any user and the start and stop date for the various advertisements to select which advertisement to transmit to the user's web page for display.
If the user decides to respond to the advertisement selected by the web server by clicking on the advertisement, the advertising server process logs that fact and to have more information about the given user. A derive profile process is used for compiling information on TCP/IP networks for use by the advertising server process. By compiling the information on networks and user selections, the advertising server process is able to compile information that can be used for targeting advertising.
The basic architecture of the network 10 comprises at least one affiliate web site 12, an advertisement (ad) server web site 19 and one or more individual advertiser's web sites 18. Affiliates are one or more entities that generally for a fee contract with the entity providing the advertisement server permit third party advertisements to be displayed on their web sites. When a user using a browser accesses or “visits” a web site of an affiliate, an advertisement provided by the advertisement server 19 will be superimposed on the display of the affiliate's web page displayed by the user's browser. Examples of appropriate affiliates include locator services, service providers, and entities that have popular web sites such as museums, movie studios, etc.
The basic operation of the system is as follows in the preferred embodiment. When a user browsing on the Internet accesses an affiliate's web site 12, the user's browser generates an HTTP message 20 to get the information for the desired web page. The affiliate's web site in response to the message 20 transmits one or more messages back 22 containing the information to be displayed by the user's browser. In addition, an advertising server process 19 will provide additional information comprising one or more objects such as banner advertisements to be displayed with the information provided from the affiliate web site. Normally, the computers supporting the browser, the affiliate web site and the advertising server process will be at entirely different nodes on the Internet. Upon clicking through or otherwise selecting the advertisement object, which may be an image such as an advertisement banner, an icon, or a video or an audio clip, the browser ends up being connected to the advertiser's server or web site 18 for that advertisement object.
As part of the “click through” process, when the user clicks on the banner or other advertising object displayed by the user's browser 16, the user's browser again transmits a message to the ad server. The ad server notes the address of the computer of the browser (or any other identifier such as a cookie or a digital signature) that generated the message 23 and transmits back the URL of the advertiser's web page so that the user's web browser 16 generates a message 26 to contact the advertiser's web site. 18. The ad server process 19 also notes that a “click through” for an advertisement has occurred and updates the various databases in the manner described below. In the above scenario for the click through process, the ad server process must remember which advertisement was sent to the user's browser in order to know where to redirect the user's browser.
While in the above embodiments, the user is a computer on an IP network using a browser, the affiliate web sites are web pages of affiliates located somewhere on the Internet and the ad server is a particular node on the Internet, other setups are also possible. The affiliates may be ISP's or may be actual dedicated web servers and the users may be an entire network instead of an individual browsing on a single computer with a browser.
The basic database structure is shown in
Also, as noted above, to enhance the process of identifying information about various users, information on domains or networks is also tracked. This information includes the domain name and type (e.g., military, government, commerce, foreign countries), the IP address, the standard industrial code, the time zone and the address as shown in
In response to an incoming message to the advertising server process 19, the advertising server processes 19 first attempts to identify the user in
If the user's browser does not support cookies, the advertising server process looks up the user's IP address in a table that stores identification numbers that correspond to IP addresses for the users who have previously contacted the advertising server process. If the IP address is not found in the table, then the user is a new user and is assigned an unused identification number. Also, for each new user, that user's identification number will be marked for further processing under the derive profile process 52 described below. Also, if the domain for the new user has not previously been processed in the domain profile process, it may not be possible to target the advertisement for the new user and rather the new user should be shown a generic advertisement. Also, for new users, a promotional advertisement may be shown to get the new user to provide information about him or herself and his or her employer.
If the user is an existing user, the ad server 19 obtains from a database all of the information known about the user including the user's geographic location, the domain type (commercial educational, governmental, the Internet service provided), the organization type where the user works (for example a SIC code), the company size, the number of employees in that company, the particular types of advertisements that the user has clicked on by SIC or other appropriate coding and the number of times that the user has been exposed to each advertisement currently in the system as described in
Each advertisement along with a table of the targeting profile criteria for the advertisement and other data regarding the advertisement currently available is stored in a database such as shown in
The preferred embodiment also includes determining which advertising object should be selected if two or more advertising object have criteria matching the user. selecting from the matched advertisements by determining how often the particular user has been exposed to the given advertisement. For each user, data is kept about the number of times that a user has seen a given advertisement based upon the user ID. For each advertisement where the user matches the criteria, if the number of times that the user has seen the advertisement is less than a predetermined threshold, the advertisement is retained as one of the possible matches. If the number of times that the user has seen a given advertisement exceeds the threshold, the advertisement is discarded as a possible candidate for transmitting back to the user.
From the advertisements for which the user matches the criteria and for which the user has seen the advertisement less than the threshold, any of number of algorithms may be used to select the particular advertisement to transmit back to the user. In an embodiment, the formula used is based upon a satisfaction index (SI) according to the following formula:
n: the number of times the particular advertisement has been viewed by anyone
N: the number of times the advertisement is to be see by anyone
end-start: the total number of days that the advertisement is scheduled to run
now-start: the number of days that the advertisement has run to date
The satisfaction index (SI) is 1.0 when the advertisement is on schedule. If the advertisement is running behind schedule (i.e., the current rate of display means that the advertisement will not be viewed the targeted number of times by the end date so that the SI is less than 1.0) while if the SI is greater than 1.0, the advertisement is running ahead of schedule. Therefore, the advertisement that is to be selected for viewing is the one that has a matched profile and has the smallest SI. Upon selecting the advertisement, the selected advertisement object is then transmitted to the user's browser over the Internet by transmitting the GIF stored in RAM in one or more messages.
After delivery of the advertisement to the user, additional processing needs to be done both for tracking the exposure of the advertisement and for having more information about the user. First, the system stores the fact that the advertisement was sent to the user by storing that information in the database based upon the user ID. This information is used for processing the user's response to the advertisement when the user “clicks” on the advertisement. Also, the advertising processor updates the advertisements satisfaction index and logs the advertisement delivery for providing reports. Also, if the advertisement that has been sent has a limit on the number of times that the advertisement can be sent, the count of the number of times that the advertisement has been transmitted is incremented. This limit can be the overall limit for the number of times that the advertisement is viewed and/or the limit that any specific user can view the advertisement. If the limit on the number of times the advertisement can be sent is reached, then the particular advertisement is removed from the list of those that can be transmitted. In addition, even if an advertisement has not been transmitted recently, the SI is updated to reflect the passage of time.
If the user then decides that he wants to respond to the advertisement and then clicks on the advertisement, the advertisement server 19 receives an HTTP request 23 for a click through which it will recognize by receiving the same IP address (and optionally, the user ID specified by the cookie, digital signature or certificate or log in identification) in the request from the same affiliate's web page within a predetermined period. Since the advertisement server previously recorded which advertisement was sent to that IP address, it sends the redirect message causing the user's browser to receive the URL for the advertiser's web site based upon data stored in the server. In addition, the server logs that the advertisement was clicked through, which user selected the advertisement based upon the IP address, and the page on which the advertisement was seen based upon the click through. This information can then be logged in later reporting processes 59.
As an alternative to using a satisfaction index, the selection of the particular advertisement object to be sent back to the viewer's browser by the advertising server process 19 can be made by different criteria. For example, models can be created to maximize the likelihood of a click through. Such models for maximizing the likelihood of a click through may be based upon empirically gathered information about either types of advertisements or individual advertisements actually on the system correlated to the compiled information on a user or the user's network and the specific page through which the user is accessing the advertising server process 19.Derivative Profile Process 52
In addition, as part of the profiling process for gathering information about users and IP addresses needs to be done. First, appropriate “networks” need to be identified based upon the TCP/IP network address of the user. Periodically, the derive profiles process searches the user database for the address of additional users that have addresses for unknown networks, indicating that they are new users. Then the server does a reverse domain name search to locate the domain name of the user. The server also queries Internet Whols databases to find information about the network, which will often include the domain name.
Alternatively, a reverse form of look up can be used independent of people accessing the network. When a domain is discovered, the server will check common DNS names for the name, such as those starting with “www” and “ftp”. These resolve to IP addresses in most cases. From the IP addresses, the network number can be extracted and if the network does not yet have a domain name associated with the network number or address, the new domain associated with the network. A reverse domain name look up (A Whois lookup) will then usually provide the name, address and phone number of the organization, thereby providing the geographic location and the time zone of the network. Once the domain name is acquired, the server will determine whether the domain is an educational, military, governmental network and for non-U.S. based networks what country the network is located in through the extension.
However, it should be noted that some networks cover broad geographic areas and that further checking needs to be done to ensure that the data may be inaccurate. This can be done by performing a trace route operation to trace the network topology back to the network being examined. If the last two or three nodes on the trace show as being from a given region, the chances are high that the specific user on a network is located in that geographic area. Thus, reverse traces can be used to confirm location with a database for geographic locations. By checking telephone directories and other sources, the specific location for such users may be found by looking up the locations where the owner of the domain name has facilities and using the one closest to the outcome of the trace back step If the information for a given user is different than the location of the domain based upon the trace back, it is this address and location information that is then used.
Further for each domain that is found, a determination must be made as to whether the domain is an Internet Service Provider (ISP). A list of domains that are ISP's is compiled manually. For any user having a domain name of an ISP, the user is presumed to be an individual and so only information relating to that individual are used for the profiling process.Reporting Process
The reporting process uses standard database techniques for generating any desired reports. For example, reports showing the number of viewings and click throughs of various advertisements may be generated along with reports showing the click through rates relative to the matching criteria. Also, reports on the SI can be readily generated.
In addition to using the domain profiling process and logging advertisement clicked on by individual users and the pages being accessed by users of affiliate web sites, in addition surveying may be used. Further, for those survey respondents who are responding for non-ISP users discussed above, the results of the survey can be attributed to others on the same network. This provides further information for targeting the display of the advertisements.
Of course, those of skill in the field will understand that the disclosed techniques need not just be confined to Internet advertising but will work on other communication networks and private on line services such as CompuServe and America On Line. In addition, while specific user and domain profile information and matching criteria are discussed, it will be obvious to those of ordinary skill in the field that the specific type of user and domain name information profiled and used as matching criteria may include other or different criteria. In addition, while the specific examples are for IP networks, the same concepts can be applied to virtual LAN's such that a VLAN is the equivalent of a domain or on IPX based protocols or other network protocols.
Still further, rather than using cookies or IP addresses or other network addresses to identify the users, digital signatures or certificates may be used. In addition, a log in technique may be used whereby when users first access an affiliated web site, the user is assigned through a log in procedure a unique identifier and a log in name. When the user subsequently accesses either the same or a different affiliated web site, the user logs in using the unique identifier, thereby ensuring that users can be identified notwithstanding proxy servers or different users using the same computer.
Still further, those of ordinary skill in the field will also understand that while the advertising server, the affiliate web site and the advertiser's web site are described as being in different geographic locations, that is not required. Still further, while the advertising server process, reporting process, derive profile process and management process are described as being implemented on one computer platform performing all of the above described functions, it is readily understood by those of skill that any or all of these functions may be implemented on one or more different computers and further that these processes may be performed at different nodes on the network.
1. A method for advertising comprising:
- receiving, at an advertising server, a request for an advertisement, with the request being based on at least one message sent from an affiliate content provider to a user in response to a request for content sent from the user to the affiliate content provider; and
- responding to the request for the advertisement by selecting an advertisement from among candidate advertisements based on historical information regarding the candidate advertisements and information regarding at least one of the user and a group including the user.
2. The method of claim 1, wherein the information regarding the group comprises information regarding a network from which the user sent the request for content.
3. The method of claim 1, wherein the information regarding the group is based on an IP address of the user.
4. The method of claim 1, further comprising resolving at least one of the user's identity and a group including the user based on the request for the advertisement.
5. The method of claim 1, wherein the information regarding the user comprises geographic information.
6. The method of claim 1, wherein the information regarding the user comprises information regarding a type of advertisement previously selected by the user, the type of advertisement indicating an interest of the user.
7. The method of claim 1, wherein the information regarding the user comprises a number of times the user has been exposed to a particular advertisement.
8. The method of claim 1, wherein the information regarding the user comprises identification information.
9. The method of claim 1, wherein the information regarding the candidate advertisements comprises information regarding a location where a candidate advertisement was previously provided.
10. The method of claim 1, wherein the information regarding the candidate advertisements comprises information regarding a total number of times a candidate advertisement has been provided to all users.
11. The method of claim 1, wherein the information regarding the candidate advertisements comprises a satisfaction index, the satisfaction index being proportional to a number of times a candidate advertisement has been provided to all users, a total amount of time in which the candidate advertisement is to be provided to users, a total number of times that the candidate advertisement is to be provided to all users, and an amount of time that the candidate advertisement has been available for provision to users.
12. The method of claim 1, wherein the information regarding the candidate advertisements comprises information regarding a historical selection frequency, and wherein selecting the advertisement from among the candidate advertisements comprises comparing the information regarding the historical selection frequency to a threshold such that a candidate advertisement is not selected if a historical selection frequency associated therewith exceeds the threshold.
13. The method of claim 1, wherein the information regarding the candidate advertisements comprises information regarding a click-through rate.
14. The method of claim 1, wherein selecting the advertisement from among the candidate advertisements comprises selecting the advertisement based on an expected click-through rate.
15. The method of claim 1, wherein selecting the advertisement from among the candidate advertisements comprises selecting the advertisement based on survey information.
16. The method of claim 1, further comprising reporting, to an advertiser, historical information regarding previous selections.
17. The method of claim 16, wherein the historical information regarding previous selections comprises a click-through rate of a candidate advertisement relative to selection criteria associated with the candidate advertisement.
18. The method of claim 1, further comprising compiling information regarding users belonging to a group of users and attributing the compiled information to a user, wherein selecting the advertisement from among the candidate advertisements comprises selecting the advertisement based on the attribution.
19. The method of claim 1, wherein selecting the advertisement from among the candidate advertisements comprises targeting the user based on the historical information regarding the candidate advertisements and the information regarding at least one of the user and a group including the user.
20. The method of claim 1, wherein the information regarding the candidate advertisements comprises a location where a candidate advertisement was displayed when previously selected by a user.
21. A method of distributing advertisements comprising:
- receiving, at an advertising server, messages regarding historical user responses to historical advertisement selections; and
- selecting an advertisement from among candidate advertisements to provide in response to a request for an advertisement based on a prediction of a user response to the candidate advertisements, the prediction of the user response to the candidate advertisements being based on the messages regarding the historical user responses to the historical advertisement selections.
22. The method of claim 21, wherein the historical user responses are click throughs, and wherein selecting is based on a historical click through rate.
23. The method of claim 21, further comprising identifying a user associated with the request, and wherein selecting an advertisement in response to the request is based on at least one of an identity of a user and a group membership of the user.
24. The method of claim 23, wherein identifying a user comprises resolving identification of an unknown user based on an IP address of the user.
25. The method of claim 21, further comprising reporting, to an advertiser, information based on the historical user responses to historical advertisement selections involving an advertisement associated with the advertiser.
26. A method for distributing advertisements comprising:
- receiving a first advertising request for an advertisement based on a request for a web page, the request originating from a user;
- selecting an advertisement, from among candidate advertisements based on targeting information for candidate advertisements, information regarding a likelihood of click through for the candidate advertisements, and at least one of information contained in the request for an advertisement and information about the web page requested by the user, to send to the user in response to the first advertising request; and
- storing information regarding the selection of the advertisement.
27. The method of claim 14, wherein the targeting information includes interest information and wherein selecting comprises identifying a match between an interest of the user and the interest information for the candidate advertisements, wherein the interest of the user is determined based on at least one of the information contained in the request for an advertisement and the information about the web page requested by the user.
28. The method of claim 14, wherein the targeting information includes information regarding groups to which the advertisement should be distributed, and wherein selecting comprises determining a group membership of the user based on at least one of information contained in the request for an advertisement and information about the web page requested by the user.