Source: http://www.google.com/patents/US7685191?dq=oakley+5,387,949
Timestamp: 2014-08-23 17:44:07
Document Index: 495693043

Matched Legal Cases: ['Application No. 60', 'Application No. 60', 'Application No. 60', 'art=20', 'art=10', 'art=20', 'art=20', 'art=1']

Patent US7685191 - Selection of advertisements to present on a web page or other destination ... - Google PatentsSearch Images Maps Play YouTube News Gmail Drive More »Sign in<nobr>Advanced Patent Search</nobr>PatentsA tracking system passively tracks and records searches conducted by actual search engine users. The recorded data for each search event preferably includes the search query submitted, the search engine used, the search result item (e.g., web page) selected, the position (e.g., page number) of this item,...http://www.google.com/patents/US7685191?utm_source=gb-gplus-sharePatent US7685191 - Selection of advertisements to present on a web page or other destination based on search activities of users who selected the destinationAdvanced Patent SearchPublication numberUS7685191 B1Publication typeGrantApplication numberUS 11/454,299Publication dateMar 23, 2010Filing dateJun 16, 2006Priority dateJun 16, 2005Fee statusPaidAlso published asUS7844590, US8312002, US8745020, US8751473, US20120030191, US20120036117, US20120036119Publication number11454299, 454299, US 7685191 B1, US 7685191B1, US-B1-7685191, US7685191 B1, US7685191B1InventorsRichard Kazimierz Zwicky, Todd William Hooge, Matthew DunnOriginal AssigneeEnquisite, Inc.Export CitationBiBTeX, EndNote, RefManPatent Citations (43), Non-Patent Citations (13), Referenced by (27), Classifications (6), Legal Events (8) External Links: USPTO, USPTO Assignment, EspacenetSelection of advertisements to present on a web page or other destination based on search activities of users who selected the destinationUS 7685191 B1Abstract A tracking system passively tracks and records searches conducted by actual search engine users. The recorded data for each search event preferably includes the search query submitted, the search engine used, the search result item (e.g., web page) selected, the position (e.g., page number) of this item, and the user's IP address. The collected data is aggregated and analyzed to generate data regarding the search queries used to locate and access particular destinations (e.g., web pages and sites). This data may be used for various purposes, such as (1) to, generate reports showing, e.g., how users reach a particular destination from different search engines and geographic locations, (2) to select content to display on a destination page, such that the content is relevant to search queries commonly used to locate that page, and (3) to update the database of one search engine to reflect searches conducted on other search engines.
CROSS-REFERENCE TO RELATED APPLICATIONS This application claims the benefit under 35 U.S.C. �119(e) of U.S. Provisional Application No. 60/690,914, filed Jun. 16, 2005; U.S. Provisional Application No. 60/703,901, filed Aug. 1, 2005; and U.S. Provisional Application No. 60/731,243, filed Oct. 31, 2005, the entire disclosures of which are hereby incorporated by reference.
This application is related to co-pending application entitled �BROWSER-ASSISTED COLLECTION OF SEARCH ACTIVITY DATA,� application Ser. No. 11/454,298, to co-pending application entitled �ANALYSIS AND REPORTING OF COLLECTED SEARCH ACTIVITY DATA OVER MULTIPLE SEARCH ENGINES,� application Ser. No. 11/454,305; to copending application entitled �SELECTION OF CONTENT TO PRESENT ON A WEB PAGE OR OTHER DESTINATION BASED ON SEARCH ACTIVITIES OF USERS WHO SELECTED THE DESTINATION,� application Ser. No. 11/454,628, all filed on the same date as the present application, the entireties of which are hereby incorporated by reference.
Companies, webmasters and individuals commonly take measures to increase the rankings or �placement� of their respective web sites in search results listings. For example, the operator of a particular web site may encourage other web site operators to provide links to this web site. The operator can also adjust the content of a web site to make it more enticing to human visitors, and implement a search engine optimization strategy, which is a set of methodologies aimed at improving the ranking of the web site in search engine listings. To assess and increase the effectiveness of these measures, web site operators frequently use automated tools to monitor the placement of their web sites across a number of different search engines and search queries. These tools generally operate by submitting pre-specified search queries to the search engines of interest, and recording the placement of the web sites and pages of interest in the search results.
One problem with using such automated tools is that they tend to produce inaccurate or misleading results. The lack of quality of the results is typically due to one or more of the following: (1) the search results are based on predefined search queries, which may or may not be representative of actual search queries in common usage; (2) the search results can vary based on a user's, and thus the automated tools, geographic location; (3) the search results can vary based on the server reached, and the quality of the index used by the particular server; (4) the search results can vary based on when the search engine had last been updated; and (5) the results are �moment in time� snapshots, and do not indicate variations during any time period between one search and the next. Another problem with using such automated tools is that they increase the load on the search engine system. In fact, some search engine operators have published terms of service prohibiting the use of such tools.
SUMMARY A tracking system passively tracks and records searches conducted by actual search engine users. The recorded data for each search event preferably includes the search query submitted, the search engine used, the search result item (e.g., web page) selected, the position (e.g., search result page number) of this item, and the user's IP address. The collected data is aggregated and analyzed to generate data regarding the search queries used to locate and access particular destinations (e.g., web pages and sites). This data may be used for various purposes, such as (1) to generate reports showing, e.g., how users reach a particular destination from different search engines and geographic locations, (2) to select content to display on a destination page, such that the content is relevant to search queries commonly used to locate that page, and (3) to update the database of one search engine to reflect searches conducted on other search engines.
FIGS. 9A to 9G are screenshots illustrating report screens generated as a user �drills down� within an interactive report.
As used herein, the term �user� denotes a human that is operating a user computing device, and not, for example, a computer program or �bot� operating a computer to mimic a user, and not a computing device of a search engine, web site, or other content provider's site. The user computing devices can be any type of user device that can be used to conduct searches over a network, such as, but not limited to, a personal or laptop computer, a hand held computer, a set top box for a TV, a personal digital assistant (PDA), or a mobile telephone. These computing devices can be coupled to a network via wired and/or wireless techniques. Typically, these devices run web browser software such as Microsoft� Internet Explorer or Mozilla Firefox, and access the Internet via an Internet Service Provider (ISP). The skilled artisan will appreciate that the principles and advantages described herein will also be applicable to viewer applications other than browsers.
FIG. 18 is a system diagram of a tracking system 120 according to an embodiment of the invention. The tracking system 120 includes a data store 122, such as a relational database, that stores search event records, and includes a reports server 124 and an analyzer 126. The tracking system 120 receives search event data (also referred to as �search activity data�) and stores the search event data in the data store 122. The search event data can be provided by, for example, any one or more of the following: a browser-executed tracking component such as a JavaScript program, an application embedded in a browser toolbar, another type of software component installed on user computing devices, a network node programmed to monitor and record search and/or other types of traffic, web server access logs of referred-to or �destination� sites, web server access logs of search engine sites, and the like.
As illustrated in FIG. 1B, the information stored for each search event preferably includes the following: (a) the referring site or URL, which is typically but not necessarily a search engine site, (c) the referred-to or �destination� site or URL, (d) the search query (typically a keyword or keyword phrase) submitted by the user, (e) the IP address of the user computing device, and/or a geographic location identifier identified therefrom, and (f) an event timestamp (not shown). Preferably, this search event data consists exclusively or primarily of �passively� collected data obtained from one or more of the sources mentioned above. Consequently, the collected data encompasses the actions of actual search engine users. (It should be noted that the passively collected search event data may also encompass searches conducted by automated tools that are external from, and independent of, the tracking system 120.) The collected data also preferably encompasses searches performed over a number of different search engines.
The reports server 124 may, for example, be implemented as a web-based reports server through which authorized web site operators, and other classes of users, can interactively request and view various types of reports. The analyzer 126 processes the raw data maintained in the data store 122 to identify search events that satisfy particular criteria, and to generate associated statistical data regarding such events. The statistical data can be used by a report generator 128 to generate human readable or machine readable reports, or both. For example, the operator of a particular web site may be given access rights for viewing reports that separately show, for each of multiple search engines, the search queries used to locate and �click through� to the web site, or a particular page thereof. The reports may also include statistical information regarding, e.g., the number of times each search query was used, the resulting position (e.g., search results page number) at which the destination was displayed in the search results, the geographic locations of the users, etc. (The term �destination� is used herein to refer generally to a web page, web site, or other content item that can be selected by a user from a set of search results.)
As another example, data from the data store 122 and/or the analyzer 126 can be provided over a network to a database 130 of a particular search engine 108, which may but need not be one of the search engines for which search event data is collected. This data may be descriptive of, or based on, searches conducted on one or more other search engines, and may identify the search results (or at least those selected by users) returned by these other search engines for particular search queries. Adding this data to the database 130 of the particular search engine 108 enables this search engine to �learn� of behavioral associations between particular search queries and particular destinations, and thus to provide more relevant search results to users. For example, the search engine 108 may learn that users who submit search query Q to other search engines frequently click through to web site A; as a result of this information, the search engine 108 may effectively add web site A to the search results for Q, or may bump up the ranking of web site A for Q. One embodiment of this feature is depicted in FIG. 6, and is described below.
FIG. 1C illustrates an example of data flow among various entities with a browser-executable component 148 providing tracking information, and represents one of the passive methods that may be used to collect search event data. FIG. 1C illustrates a search engine site 108, a user computing device 106, a web site 140, and a tracking system 120. The web site 140 includes a web server 102 for providing access to a repository 142 of web pages. At least one of these web pages includes a reference or �tag� (e.g., a short JavaScript sequence) that causes browsers to load the browser-executable tracking component 148 when the web page is loaded. Such tags may be included in any number of the site's web pages (e.g., in the HTML document of such web pages). Including the tag in a given web page enables the tracking system to track searches in which the user/searcher clicks through to that web page. A web page that includes such a tag is referred to herein as a tracking-enabled page, and the associated web site is referred to as a tracking enabled site.
The user then selects or �clicks through� to a particular search result or �destination.� The browser then requests and loads a corresponding destination web page from the web site 140. In some cases, the destination web page is loaded as the result of a redirect command being sent to the browser by the search engine. At this point, the search results page is the referring web page, and the selected destination page is the referred-to page. In the illustrated embodiment, the web page includes a reference to a browser-executable tracking component 148, which is then retrieved by the browser 144 from a data collection server 302 of the tracking system 120 (or from any other suitable source, such as the web server 102 of the tracking-enabled site). As mentioned above, the destination web page itself can also statically include the browser-executable tracking component 148.
FIG. 2 illustrates one example of a report that may be generated by the report generator 128 based on search activity data collected in the data store 122. This and the other reports described herein may be generated based on search activity data (also referred to as �search event data�) collected using the process shown in FIG. 1C, and/or based on search activity data collected using the other sources and methods described herein. The illustrated report is a screenshot of web browser readable report. It will be understood that the reports can be generated in a wide variety of formats, such as, but not limited to, human-readable formats, machine-readable formats, electronic formats, printed formats, and the like. In the illustrated report, the results of three search engines are compared for a particular date range, in this example, the month of February 2006, for a particular destination web page.
The data is generally represented in columns. A first table 202 includes the search queries (listed under �Phrase�) for a first search engine, a second table 204 includes the search queries for a second search engine, and a third table 206 includes the search queries for a third search engine. In the illustrated actual example, the first search engine' is the Google� search engine, the second search engine is Yahoo!� search, and the third search engine is MSN� search.
The report separately lists the search queries used by search engine users to locate and click through to a particular destination or group of destinations, which in this example is a particular web site (collection of web pages)<www.marketingshift.com>. The report can also be constrained for an individual web page. The report also includes statistical data associated with these search queries. The queries and statistical data are shown separately for each of three search engines, which are the Google� Yahoo!� search, and MSN� search in this example. Each search engine in this example is operated by separate business entity, and uses its own algorithms to rank search results for display.
The first table 202 indicates that the top four search queries used by users to select the web page via the first search engine were �oracle layoffs� with 923 hits, �should put these pictures of us on myspace or facebook?� [sic] with 572 hits, �oracle layoff� with 567 hits, and �AIM virus� with 439 hits. Other search query results are also shown. The second table 204 indicates that the top four search queries for the second search engine were �myspace aim virus fix� with 296 hits, �oracle layoffs� with 203 hits, �myspace virus� with 192 hits, and �oracle layoff� with 78 hits. The third table 206 indicates that �Exxon Mobile� [sic] with 135 hits, �msn account� with 52 hits, �MYSPACE VIRUS� with 48 hits, and �international cxt� tied with �oracle layoffs� with 41 hits. These tables can readily be compared to identify behavioral differences between the users of different search engines. A column with the heading �H� indicates the highest page position that the referral came from, i.e., if users selected a corresponding link from any of pages 1, 3, and 6, the value under �H� would be 1. A column with the heading �L� indicates the lowest page position used by a user to select a corresponding link to the referred-to page. For example, if a user selected a link from the 63'rd page, a value of �63� would appear under the heading for �L.� A column with the heading �A� indicates the average of H and L. A median value can also be used. A column with the heading �K� indicates the page position used to select a link by the last visitor, that is, the most recent user visiting the tracked page (or tracked pages), arrived at your web site from {parameter} (search engine/phrase/country etc). This can be useful when, for example, a particular page has not been accessed in a while. A column with the heading # indicates the number of referrals with the particular constraints invoked. In the illustrated example, each table 202, 204, 206 is constrained to a particular search engine, and each row of the table to a particular search query. A column with the heading �%� indicates the percentage for the particular search query versus all of the search queries of the table (only the tops of which are shown in FIG. 2). The constraints can be further selected or �drilled down� as will be described later in connection with FIGS. 9A-9G. In one embodiment, the reporting generator 128 permits further selection of data by any of the headings indicated in table 202.
In the configuration illustrated in FIG. 3A, the user of the user computing device 106 selects a link from the search results page for the desired web page of the web server 102. The user may also select other search results pages from the search engine for a selection further down in a list prior to selecting the link for the desired web page. After selecting the link, the previous search results page becomes the �referer� or HTTP referer, which is also referenced herein as �referring web page.� See, for example, RFC 2616 (spelling referrer as referer). Typically, the user's browser sends an HTTP request for the referred-to web page, and also sends header information for the HTTP referer when requesting the referred-to web page from the web server 102.
Browser-Executable Tracking Component 148 There are a variety of software languages that are executable in a browser. These languages include, but are not limited to, JavaScript, Jscript, XML, cfm, cgi, perl, php, asp, aspx, AJAX, and �.net.� The browser-executable tracking component 148 will be described in the context of JavaScript, but it will be understood by the skilled artisan that other types of languages and components can alternatively be used.
The JavaScript code can be statically embedded directly into the destination web page, or can be �dynamically� embedded via a reference or �tag� that causes browsers to load the JavaScript code (from the data collection server 102 or elsewhere) when the destination page is loaded. Some combination of these two approaches can alternatively be used. In one example, the JavaScript code of the referred-to web page from the web server 102 includes an HTML image tag to retrieve an image from the data collection server 302. The actual image does not matter for the purposes of data collection and can be a blank pixel. In one embodiment, the image corresponds to an advertisement or other content item, and the collected data, e.g., search queries, are used to compare to metadata keywords or parameters derived from metadata keywords to select content. An example of such a data flow is described later in connection with FIG. 10E. When executed, the image tag retrieves the image from the data collection server 302, which permits the data collection server 302 to communicate with and collect data from the user computing device 106.
var log_string=� �;
var log_referrer=� �;
var log_referrer_type=�0�;
var log_w=�w�+�r�+�i�+�t�+�e�;
Other code can be included to, for example, report the IP address, to report the URL of the referred-web page, to ensure that only one copy of the code executes, and/or to handle multiple frames and different types of browsers. In addition, the browser-executable tracking component 148 may be configured to create a cookie on the user computing device that can be used to efficiently detect repeat visits to a particular tracking-enabled web page from the same referrer. This feature may be used, for example, to detect repeat visits that occur when a user clicks through to a destination page, then uses the browser's �back� button to return to the search results page, and then clicks through to the same destination page again. Such detected revisits can be ignored (not recorded in the data store 122) or discounted.
The following examples illustrate the decoding of an HTTP referer URL for various search engines. Decoding of other search engine HTTP referer URLs will be readily determined by one of ordinary skill in the art. It will be understood that the formats used by search engines to embed information in the URLs can change over time. The first two examples are from Google�.
Example 1 <http://www.google.ca/search?hl=en&q=goodniteirene&btnG=Search&meta=cr%3DcountryCA>.
Example 2 <http://www.google.ca/search?q=good+nite+irene&hl=en&lr=&start=20&sa=N&filter=0>.
In Example 1, the referred-to (destination) web page can be determined to have been in the top 10 of Google's results for the particular search query, as the URL does not indicate a change in the default number of 10 listings per page and it can be determined that the URL was the first page. Search engine results can also vary depending on the geographical location determined for the user computing device 106 and the particular search engine's site The �http://www.google.ca/� portion refers to the referring site, which is Google's Canadian search site. The �search?� indicates that the referer is a result of a search on Google's web site. The �hl=en� portion indicates that the language is English, the �q=goodniteirene� portion indicates the search query submitted, the �btnG=Search� portion indicates the search button triggered the query, and the �meta=cr%3DcountryCA� refers to the region where the search engine site is located.
The fact that the query was triggered by a search is useful information to distinguish a search query from a directory listing, as is the wording of the query, and the particular referring site of the search engine. The fact that a �start=� portion is absent indicates that the result was on page 1 of the search results. The second example will illustrate an example of the �start=� portion.
When, for example, �start=10� is present, then the referred-to web page was listed on page 2 of the search results. If �start=20� is present, then the referred-to web page was listed on page 3, and so forth.
In Example 2, the referred-to web page was listed on page 3, and should be in the top 30 search results, as opposed to, for example, a directory listing. A �start=20� indicates page 3 of the search results. An �lr� is the �location range� indicating location on page 2 of the search results. Using 20 for page 2 allows for further definition in the future: i.e., 21 would be the first result on page 2 of the search results, etc. The �filter=0� portion specifies the filters that have been preset by the end user, such as, for example, �no adult content.�
Example 3 <http://search.yahoo.com/search?p=good+nite+irene&prssweb=Search&ei=UTF-8&fr=FP-tab-web-t&fl=0&x=wrt>.
Example 4 <http://search.yahoo.com/search?p=goodniteirene&sm=Yahoo%21+Search&toggle=1&ei=UTF-8&xargs=0&pstart=1&fr=FP-tab-web-t&b=11>.
In Example 3, the structure is similar to those of Examples 1 and 2, with the following adjustments: �p=� prefaces the search query, �prssweb=Search� indicates search results, as opposed to a directory listing. In Example 4 the �sm=Yahoo+Search . . . � is an alternate indication that the query was a search.
When no �b=� element is included in the URL for the referring web page, then the link for the referred-to web page was listed on page 1 of the search results. When �b=11� is present, then the link for the referred-to web page was listed on page 2 of the search results. A �b=21� would indicate that the link for the referred-to web page would was on page 3 of the search results, and so forth.
Example 5 <http://search.msn.com/results.aspx?FORM=MSNH&srch_type=0&q=good+nite+irene>
Example 6 <http://search.msn.com/results.aspx?q=goodniteirene&first=11&count=10&FORM=PERE>
When no �first=� element is contained in the URL for the referring web page as shown in Example 5, then the link for the referred-to web page was listed on page 1. When �first=11� is present, then the link for the referred-to web page was listed on page 2 as shown in Example 6. A �first=21� would indicate that the referred-to web page was listed on page 3, and so forth.
Examples 7 and 8 illustrate information retrieval from an �Excite� search.
Example 7 <http://msxml.excite.com/info.xcite/search/web/goodniteirene>.
Example 8 <http://msxml.excite.com/info.xcite/search/web/goodniteirene/21/20/2/-/0/0/1/1/1/1/-/-/-/on3%253A1117819743567%253A0%253A/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/goodniteirene/-/1/-/-/-/-/-/-/-/-/-/-/0>.
In Example 8, note that the first portion after �/web/goodniteirene/� is �21,� and then the next element is �20.� The �21� indicates that the link for the referred-to web page was on page 2 because the count (next portion) is �20� so that page 2 starts with search result number 21. Excite is defaulted to 20 search results per page. Example 7 corresponds to an HTTP referer for a link to a referred-to web page, where the result was listed on page 1 of the search results.
Example 9 <http://search.lycos.com/default.asp?loc=searchbox&tab=web&query=good+nite+irene&submit.x=0&submit.y=0 & submit=image>.
Example 10 <http://search.lycos.com/default.asp?query=good+nite+irene&first=11&pmore=more>.
When no �first=� element is contained in the URL for the referring web page, as in Example 9, then the link for the referred-to web page was on page 1 of the search results. When �first=11� is present, as in Example 10, then the link for the referred-to web page was on page 2 of the search results. A �first=21� would indicate that the link for the selected web page was on page 3, and so forth.
FIG. 5 is a flowchart that illustrates a process implemented by the data collection server 302 for collecting search activity data from a user computing device 106 that has or is in the process of loading a tracking-enabled web page. It is assumed in this example that the tracking-enabled destination page is loaded as the result of the user's selection of this page from a search result listing. The process begins by receiving 502 a request from a user computing device 106 for the executable code 148 referenced within the referred-to page. For example, the web page can include a reference to the browser-executable tracking component 148 on the data collection server 302. The reference can be relatively simple, as illustrated by the following example using JavaScript code: <script type=�text/javascript� src=�http://log.enquisite.com/log.js?id=enquisite�> </script>. This causes the browser to request the browser-executable tracking component 148 (named log.js) from a server operating as the data collection server 302 (from the server addressed at log.equisite.com in this example). The external referencing of the browser-executable tracking component 148 permits updates to be made relatively easily (without having to update each tracking-enabled web page). While tracking information, such as the URL for the HTTP referer and the URL of the web page that is being tracked, can be collected by the data collection server 302 when providing the external browser-executable component 148, it is preferably not collected at that time for reasons that will be discussed below.
A search query for �Blue Suede Shoes� results in one hundred results from Search Engine �A.� 500 queries are performed on search engine A for that search query daily, and 30 distinct results are selected by users. In collecting data from web sites, it becomes apparent that Search Engine �B� also gets searched 500 times per day for the query �Blue Suede Shoes,� and that 20 distinct web pages are selected by users whose activities can be tracked. If the number of search queries varies, the number of results can be correspondingly normalized.
The resource names or URLs that were selected can be compared to determine if the pages selected from Search Engine �B� are found in database �A.� Missing pages can be considered for inclusion in the results. In the following example, engineers value Search Engine Index/Databases �A� and �B� approximately equally. If one is considered better than the other, unequal weighting can be used. Continuing with the example, if the number 5 search result in search engine �A� received a certain number of click throughs, but the numbers 1-3 referred-to web pages from Search Engine �B� received more click throughs than the number 5 search result of search engine �A,� and were either not in the database for search engine �A,� or were listed lower in the results, then those pages should be algorithmically considered for inclusion in the search results from database �A,� or higher ranking in the results.� The prominence of the selection of the numbers 1-3 referred-to pages by actual search engine users is indicative of the relevance of the numbers 1-3 referred-to pages. The foregoing illustrates an example of using a ranking by user-selection of web pages from another search engine's search results (B) to improve a search in a search engine (A).
In another example, an engineer for Search Engine �A� can compare the rankings of pages for search queries of Search Engine �A� with the page positions of referred-to web pages for the same search queries of one or more other search engines. This makes it possible for the engineer to take advantage of search page position data of other search engines without running searches on those engines.
For example, a web page which discusses the exploits of the musical group �The Who� may contain lots of verbiage concerning concerts, events, albums, and likes and dislikes of the band members. If on-page advertising is enabled for that web page, advertising can be selected manually, or algorithmically served based on the inventory of web pages and/or number of advertisers bidding for related terms, and driven by the content. However, search engines do not always categorize web pages properly. In such a case, the user of a search engine may arrive at the web page based on a search referral for a search query completely unrelated to the search query.
For instance, the web page relating almost exclusively to the musical group �The Who,� and its guitarist �Peter Townshend� might mention that �Joe Jackson� performed as the opening act at a concert in 1982. Algorithmically, advertising displayed on the web page should relate to �The Who.�
However, it is possible that a search engine determines that the usage of �Peter� and �Jackson� on the same page is relevant to the search query �Peter Jackson.�When the search query �Peter Jackson� is entered into the search engine, this web page relating to �The Who� may be displayed in a prominent position in the search results, and inadvertently selected by users looking for information on the film director who made the Lord of the Rings movies. The inadvertently-selected web page for the music group �The Who� would load, with advertising relating to the music group �The Who.�
In one embodiment, the advertising server takes into account the search engine referrer, and also the search query. If it is determined that either most and/or a mathematically significant number of referrals from the search engine to that particular web page arrive as a result of the search query for �Peter Jackson,� then advertising relating to �Peter Jackson� can be displayed on the web page when accessed from this search engine. Normally, this advertising would be irrelevant to �The Who,� and would not be displayed. However, its inclusion would be viewed as highly relevant by the user, who would be more inclined to click on the advertising related to �Peter Jackson,� than advertising related to �The Who.�
FIG. 8 is a flowchart that generally illustrates a process for generating a report from the search activity data stored in the data store 122. The data can be collected by a variety of techniques, including, but not limited to, the techniques described earlier in connection with FIGS. 1C and 3A to 3E. The illustrated process may be embodied collectively in the report generator 128 and analysis component 126 in FIG. 1B. The process begins by selecting 802 a particular destination web page or web site for analysis. For example, an analyst may desire to know which search queries are used the most frequently to locate and access a particular destination page or site�either via a particular search engine or across all search engines for which search activities are tracked. The selected web page or site can be used as a key in retrieving appropriate search event records from the data store 122. The retrieve event records may be limited to a particular time period, such as the last day or month.
In the illustrated process, the retrieved search event records are then organized 804 or sorted according to search queries used and at least one other criteria, such as time, geographical location, search engine used, and the like. Returning now to the initial example of organization by search engine (FIG. 2, discussed above), the search queries for Google� are kept separate from the search queries for Yahoo!�, and so on. By organizing or sorting the data, occurrence counts can be determined, e.g., for particular search engine/search query pairs. In addition, data regarding the position or rank (e.g. search results page number) of the particular destination can be generated for each search engine/search query pair.
FIGS. 9A to 9G illustrate screenshots showing how an analyst can �drill down� in an interactive report. The numbered circles indicate the drill down level. FIG. 9A illustrates a top-level summary report without drilling down. In addition, FIG. 9A illustrates trend analysis over time. The top right illustrates a graph showing search engine referrals over time, which permits an analyst to observe the relative changes in referrals from search engines over time. These time-based analyses can also be used with, for example, search queries. This permits an analyst to observe if the search queries are changing over time or are changing for a particular search engine. In another example, page position rankings by search engine can be tracked over time, which efficiently permits an analyst to analyze how the relative search rankings change over time, and take corrective actions for specific search engines as necessary.
FIG. 9B illustrates a report after the analyst has further selected or �drilled down� to select only the U.S. as the geographical region. The most popular search queries used to find a referred-to web page in the U.S. are displayed. The search queries are listed under �Phrases.� FIG. 9C illustrates further selection or �drilled down� the specific search query of �oracle layoffs.� FIG. 9D illustrates a further selection to the pages referred by the Google search engine. FIG. 9E illustrates further selection to a particular page, and the display illustrates ordering by region (state, in this example). FIG. 9F illustrates further selection of the selected page to the region of California, and illustrates the ranking by city. FIG. 9G illustrates further selection to �Redwood City,� and illustrates the popularity of the web page for the zip codes associated with Redwood City. In addition, the constraint parameters used to further select data for the drill down displays of FIGS. 9B to 9G are illustrated towards the upper left of the displays next to a box with an �X.� It should be noted that other constraints previously applied are not shown.
Patent CitationsCited PatentFiling datePublication dateApplicantTitleUS6006260Jun 3, 1997Dec 21, 1999Keynote Systems, Inc.Method and apparatus for evalutating service to a user over the internetUS6421675Jul 15, 1998Jul 16, 2002S. L. I. Systems, Inc.Search engineUS6873982 *Jul 16, 1999Mar 29, 2005International Business Machines CorporationOrdering of database search results based on user feedbackUS6877007Oct 16, 2001Apr 5, 2005Anna M. HentzelMethod and apparatus for tracking a user's interaction with a resource supplied by a server computerUS7206780Jun 27, 2003Apr 17, 2007Sbc Knowledge Ventures, L.P.Relevance value for each category of a particular search result in the ranked list is estimated based on its rank and actual relevance valuesUS7383334Jul 18, 2006Jun 3, 2008Omniture, Inc.Comparison of website visitation data sets generated from using different navigation toolsUS20020082923Feb 26, 2002Jun 27, 2002Merriman Dwight A.Network for distribution of re-targeted advertisingUS20020126135May 7, 2002Sep 12, 2002Keith BallImage sharing for instant messagingUS20020169760Aug 3, 2001Nov 14, 2002Cheung Dominic Dough-MingSystem and method for providing place and price protection in a search result list generated by a computer network search engineUS20020178180 *May 21, 2002Nov 28, 2002Tanya KolosovaDocument usage monitoring method and systemUS20030208578 *May 1, 2002Nov 6, 2003Steven TaraborelliWeb marketing method and system for increasing volume of quality visitor traffic on a web siteUS20040068460 *Oct 2, 2002Apr 8, 2004Feeley Michael A.Method and system for achieving an ordinal position in a list of search results returned by a bid-for-position search engineUS20040267806Jun 30, 2003Dec 30, 2004Chad LesterPromoting and/or demoting an advertisement from an advertising spot of one type to an advertising spot of another typeUS20050076097Sep 24, 2003Apr 7, 2005Sullivan Robert JohnDynamic web page referrer tracking and rankingUS20050102282Oct 12, 2004May 12, 2005Greg LindenMethod for personalized searchUS20050137939Dec 19, 2003Jun 23, 2005Palo Alto Research Center IncorporatedServer-based keyword advertisement managementUS20050222901 *Mar 31, 2004Oct 6, 2005Sumit AgarwalDetermining ad targeting information and/or ad creative information using past search queriesUS20050222987Apr 2, 2004Oct 6, 2005Vadon Eric RAutomated detection of associations between search criteria and item categories based on collective analysis of user activity dataUS20050240580 *Jul 13, 2004Oct 27, 2005Zamir Oren EPersonalization of placed content ordering in search resultsUS20050267872 *Mar 1, 2005Dec 1, 2005Yaron GalaiSystem and method for automated mapping of items to documentsUS20060031206Apr 21, 2005Feb 9, 2006Christian DeubelSearching for data objectsUS20060074883 *Oct 5, 2004Apr 6, 2006Microsoft CorporationSystems, methods, and interfaces for providing personalized search and information accessUS20060112081 *Nov 23, 2004May 25, 2006Microsoft CorporationStoring searches in an e-mail folderUS20060149710 *Dec 30, 2004Jul 6, 2006Ross KoningsteinAssociating features with entities, such as categories of web page documents, and/or weighting such featuresUS20060161520Jan 14, 2005Jul 20, 2006Microsoft CorporationSystem and method for generating alternative search termsUS20060161534Jan 18, 2006Jul 20, 2006Yahoo! Inc.Matching and ranking of sponsored search listings incorporating web search technology and web contentUS20060161537Jan 19, 2005Jul 20, 2006International Business Machines CorporationDetecting content-rich textUS20060161541Jan 19, 2005Jul 20, 2006Microsoft CorporationSystem and method for prefetching and caching query resultsUS20060161542Jan 18, 2005Jul 20, 2006Microsoft CorporationSystems and methods that enable search engines to present relevant snippetsUS20060161591Jan 14, 2005Jul 20, 2006Microsoft CorporationSystem and method for intelligent deletion of crawled documents from an indexUS20060161843Jan 15, 2004Jul 20, 2006Ebrahimi Armin GValue system for dynamic composition of pagesUS20060167852Jan 28, 2005Jul 27, 2006Yahoo! Inc.System and method for improving online search engine resultsUS20060167854Mar 31, 2005Jul 27, 2006Dissett Daniel PSystem and method for improving online search engine resultsUS20060167857May 12, 2005Jul 27, 2006Yahoo! Inc.Systems and methods for contextual transaction proposalsUS20060167874Jan 24, 2005Jul 27, 2006Microsoft CorporationGame-powered search engineUS20060167896Dec 5, 2005Jul 27, 2006Shyam KapurSystems and methods for managing and using multiple concept networks for assisted search processingUS20060168056Sep 12, 2005Jul 27, 2006Yahoo!, Inc.System and method for providing improved access to SPAM-control feature in mail-enabled applicationUS20060200455Dec 22, 2003Sep 7, 2006Redbank Manor Pty LtdSearch engine result reporterUS20060265435May 18, 2005Nov 23, 2006Mikhail DenissovMethods and systems for locating previously consumed information item through journal entries with attention and activationUS20070100962May 10, 2006May 3, 2007Barth Brian EDynamic flight packagingUS20070130131Feb 7, 2007Jun 7, 2007Porter Charles ASystem and process for searching a networkUS20070220000Apr 2, 2007Sep 20, 2007Walsh Aaron EUniversal CacheUS20080177859Jun 28, 2007Jul 24, 2008Nickerson Thomas WSystem and method for displaying dynamic page content in a page-caching browser* Cited by examinerNon-Patent CitationsReference1Filip Radlinski & Thorsten Joachims; Query Chains: Learning to Rank from Implicit Feedback, Proceedings of the ACM Conference on Knowledge Discovery and Data Mining, Association for Computing Machinery (2005).2New Search Patent Applications: Aug. 1, 2006-Microsoft Answers?; [online] [retrieved on Aug. 21, 2006] Retrieved from the Internet: .3New Search Patent Applications: Aug. 1, 2006�Microsoft Answers?; [online] [retrieved on Aug. 21, 2006] Retrieved from the Internet: <URL: http://blog.searchenginewatch.com/blog/060801-232103>.4Thorsten Joachims; Optimizing Search Engines using Clickthrough Data, Proceedings of the ACM Conference on Knowledge Discovery and Data Mining, Association for Computing Machinery (2002).5USPTO; Office Action dated Dec. 5, 2008, from related application U.S. Appl. No. 11/454,298, filed Jun. 16, 2006.6USPTO; Office Action dated Jun. 11, 2009, from related application U.S. Appl. No. 11/454,305, filed Jun. 16, 2006.7USPTO; Office Action dated Jun. 11, 2009, from related application U.S. Appl. No. 11/454,628, filed Jun. 16, 2006.8USPTO; Office Action dated May 1, 2008, from related application U.S. Appl. No. 11/454,628, filed Jun. 16, 2006.9USPTO; Office Action dated May 2, 2008, from related application U.S. Appl. No. 11/454,305, filed Jun. 16, 2006.10USPTO; Office Action dated May 29, 2008, from related application U.S. Appl. No. 11/454,298, filed Jun. 16, 2006.11USPTO; Office Action dated Nov. 14, 2008, from related application U.S. Appl. No. 11/454,305, filed Jun. 16, 2006.12USPTO; Office Action dated Nov. 14, 2008, from related application U.S. Appl. No. 11/454,628, filed Jun. 16, 2006.13USPTO; Office Communication Concerning a Requirement for Information, dated Jun. 1, 2009, from related application U.S. Appl. No. 11/454,298, filed Jun. 16, 2006.Referenced byCiting PatentFiling datePublication dateApplicantTitleUS7805428 *Dec 6, 2007Sep 28, 2010Nemediasoft Inc.SEO suite and sub-componentsUS7836041 *Mar 10, 2008Nov 16, 2010Google Inc.System and method for displaying both time information search results and internet search resultsUS7953746 *Dec 7, 2007May 31, 2011Google Inc.Contextual query revisionUS8135735May 27, 2011Mar 13, 2012Geodex, LlcComputerized system and method for tracking the geographic relevance of website listings and providing graphics and data regarding the sameUS8230418 *Aug 7, 2008Jul 24, 2012International Business Machines CorporationComputer program product for evaluating the workloads of installation plans in quantity by building a pre-requisite relation knowledge-baseUS8312002Oct 13, 2011Nov 13, 2012Gere Dev. Applications, LLCSelection of advertisements to present on a web page or other destination based on search activities of users who selected the destinationUS8341142 *Sep 8, 2010Dec 25, 2012Nuance Communications, Inc.Methods and apparatus for searching the InternetUS8364689 *Dec 22, 2006Jan 29, 2013Verizon Patent And Licensing Inc.Methods and apparatus for providing a location based searchUS8401903 *Sep 11, 2008Mar 19, 2013Say Media, Inc.Interactive advertisingUS8452779Jul 8, 2011May 28, 2013Collective Labs, LlcMethods and system for targeted content deliveryUS8484283 *Aug 17, 2007Jul 9, 2013Akamai Technologies, Inc.Method and system for mitigating automated agents operating across a distributed networkUS8626785May 17, 2011Jan 7, 2014Google Inc.Contextual query revisionUS8676651Nov 15, 2012Mar 18, 2014Say Media, Inc.Interaction prompt for interactive advertisingUS8682718Dec 14, 2011Mar 25, 2014Gere Dev. Applications, LLCClick fraud detectionUS8687840May 10, 2011Apr 1, 2014Qualcomm IncorporatedSmart backlights to minimize display power consumption based on desktop configurations and user eye gazeUS8732019May 27, 2011May 20, 2014Say Media, Inc.Non-expanding interactive advertisementUS8745020Oct 13, 2011Jun 3, 2014Gere Dev. Applications, LLC.Analysis and reporting of collected search activity data over multiple search enginesUS8751418 *Oct 17, 2011Jun 10, 2014Quantcast CorporationUsing proxy behaviors for audience selectionUS8751473Oct 13, 2011Jun 10, 2014Gere Dev. Applications, LLCAuto-refinement of search results based on monitored search activities of usersUS20080091767 *Aug 17, 2007Apr 17, 2008Akamai Technologies, Inc.Method and system for mitigating automated agents operating across a distributed networkUS20100037217 *Aug 7, 2008Feb 11, 2010International Business Machines CorporationComputer program product for evaluating the workloads of installation plans in quantity by building a pre-requisite relation knowledge-baseUS20110066608 *Sep 14, 2009Mar 17, 2011Cbs Interactive, Inc.Systems and methods for delivering targeted content to a userUS20120047248 *Aug 20, 2010Feb 23, 2012Arbor Networks, Inc.Method and System for Monitoring Flows in Network TrafficUS20120059813 *Sep 8, 2010Mar 8, 2012Nuance Communications, Inc.Methods and apparatus for searching the internetUS20120203757 *Feb 8, 2011Aug 9, 2012Balaji RavindranMethods, apparatus, and articles of manufacture to measure search resultsUS20130097148 *Dec 5, 2012Apr 18, 2013Semmx, Inc.Methods and systems for modifying search engine rankings of web pagesEP2596431A1 *Jul 21, 2010May 29, 2013Empire Technology Development LLCInformation processing apparatus, server-client system, and computer program product* Cited by examinerClassifications U.S. Classification707/706, 707/758, 707/727International ClassificationG06F7/00Cooperative ClassificationG06Q30/02European ClassificationG06Q30/02Legal EventsDateCodeEventDescriptionAug 26, 2013FPAYFee paymentYear of fee payment: 4Jul 26, 2011ASAssignmentOwner name: GERE DEV. APPLICATIONS, LLC, DELAWAREEffective date: 20110624Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:EIGHTFOLD LOGIC, INC.;REEL/FRAME:026650/0007Jun 10, 2010ASAssignmentFree format text: CHANGE OF NAME;ASSIGNOR:ENQUISITE, INC.;REEL/FRAME:24518/362Effective date: 20100517Owner name: EIGHTFOLD LOGIC, INC.,CALIFORNIAFree format text: CHANGE OF NAME;ASSIGNOR:ENQUISITE, INC.;REEL/FRAME:024518/0362Owner name: EIGHTFOLD LOGIC, INC., CALIFORNIAJul 28, 2008ASAssignmentOwner name: VENCORE SOLUTIONS LLC,OREGONFree format text: SECURITY AGREEMENT;ASSIGNOR:ENQUISITE, INC., A DELAWARE CORPORATION;US-ASSIGNMENT DATABASE UPDATED:20100323;REEL/FRAME:21315/423Effective date: 20080710Free format text: SECURITY AGREEMENT;ASSIGNOR:ENQUISITE, INC., A DELAWARE CORPORATION;REEL/FRAME:021315/0423Owner name: VENCORE SOLUTIONS LLC, OREGONMay 29, 2008ASAssignmentOwner name: ENQUISITE, INC.,CALIFORNIAFree format text: CHANGE OF NAME;ASSIGNOR:RJ RESEARCH, INC.;US-ASSIGNMENT DATABASE UPDATED:20100323;REEL/FRAME:21014/978Effective date: 20080514Free format text: CHANGE OF NAME;ASSIGNOR:RJ RESEARCH, INC.;REEL/FRAME:021014/0978Owner name: ENQUISITE, INC., CALIFORNIAMay 19, 2008ASAssignmentOwner name: RJ RESEARCH, INC.,CALIFORNIAFree format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:METAMEND SOFTWARE AND DESIGN LTD.;US-ASSIGNMENT DATABASE UPDATED:20100323;REEL/FRAME:20964/915Effective date: 20080516Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:METAMEND SOFTWARE AND DESIGN LTD.;REEL/FRAME:020964/0915Owner name: RJ RESEARCH, INC., CALIFORNIADec 12, 2006ASAssignmentOwner name: METAMEND SOFTWARE AND DESIGN LTD.,CANADAFree format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:ENQUISITE SOFTWARE, INC.;US-ASSIGNMENT DATABASE UPDATED:20100323;REEL/FRAME:18620/687Effective date: 20061112Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:ENQUISITE SOFTWARE, INC.;REEL/FRAME:018620/0687Owner name: METAMEND SOFTWARE AND DESIGN LTD., CANADASep 25, 2006ASAssignmentOwner name: ENQUISITE SOFTWARE INC.,CANADAFree format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:ZWICKY, RICHARD KAZIMIERZ;HOOGE, TODD WILLIAM;DUNN, MATTHEW;SIGNED BETWEEN 20060816 AND 20060905;US-ASSIGNMENT DATABASE UPDATED:20100323;REEL/FRAME:18297/570Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:ZWICKY, RICHARD KAZIMIERZ;HOOGE, TODD WILLIAM;DUNN, MATTHEW;SIGNING DATES FROM 20060816 TO 20060905;REEL/FRAME:018297/0570RotateOriginal ImageGoogle Home - Sitemap - USPTO Bulk Downloads - Privacy Policy - Terms of Service - About Google Patents - Send FeedbackData provided by IFI CLAIMS Patent Services©2012 Google