IP Library Granted Patent US 8,812,473
Granted Patent B1
US 8,812,473 · App. 11/454,305 · Granted Aug 19, 2014

Analysis and reporting of collected search activity data over multiple search engines

Inventors: Richard Kazimierz Zwicky (Victoria, CA); Todd William Hooge (Victoria, CA); Matthew Dunn (Bellingham, WA)
Assignee: Gere Dev. Applications, LLC
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,812,473
App. No.
11/454,305
Granted
Aug 19, 2014
Kind
B1
Abstract

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.

Claims (47)

1. A computer-implemented method, comprising:

collecting search activity data of search engine users, wherein the search activity data is descriptive of searches performed by said users on each of a plurality of index-type search engines, wherein each of the plurality of index-type search engines maintains its own proprietary index obtained by crawling web sites for building a unique database for generating search results, wherein each of the search engine users interacts with a search results page of the index-type search engine to view search results;

for a particular search destination, programmatically analyzing the collected search activity data by a computer system having a processor and memory to identify a plurality of search events in which a search engine user selected the particular search destination from a search result set to access the destination; and

for each of the plurality of search events, identifying from the collected search activity data, and recording in computer storage, at least the following information: (a) the search engine used, (b) the search query submitted, and (c) a position at which the destination was listed in the search result set.

2. The method of claim 1 , wherein the particular search destination is a particular web site.

3. The method of claim 1 , wherein the particular search destination is a particular web page.

4. The method of claim 3 , wherein the method comprises collecting the search activity data, at least in part, via browser-executable code embedded in said web page.

5. The method of claim 4 , wherein the browser-executable code is JavaScript code.

6. The method of claim 1 , wherein the method comprises collecting the search activity data from at least one of the following sources: browser toolbars of the search engine users; a web server access log associated with the destination; or a search engine log.

7. The method of claim 1 , wherein said position is identified as a search result page number.

8. The method of claim 1 , wherein collecting the search activity data comprises decoding HTTP referrers of a plurality of different HTTP referrer formats, each format corresponding to a different one of said plurality of index-type search engines.

9. The method of claim 1 , wherein the method further comprises using IP addresses associated with the search events to identify geographic locations of associated search engine users.

10. The method of claim 1 , further comprising analyzing said information over the plurality of search events and over the plurality of index-type search engines to generate statistical data reflective of how search engine users locate the destination.

11. The method of claim 10 , wherein analyzing said information comprises sorting said position information by search engine and by query.

12. The method of claim 10 , further comprising programmatically incorporating the statistical data into a report, said report separately specifying, for each of the plurality of index-type search engines, the search queries used to locate the destination.

13. The method of claim 12 , wherein the report further specifies, for each search engine/search query pair, statistical information about the position at which the destination was listed in a search result set.

14. The method of claim 10 , further comprising programmatically incorporating the statistical data into a report, said report separately specifying, for each of a plurality of unique search queries used to locate the destination, the index-type search engine(s) used to perform an associated search.

15. The method of claim 14 , wherein the report further specifies, for each search query/search engine pair, statistical information about the position at which the destination was listed in search results.

16. The method of claim 10 , wherein the information identified for each of the plurality of search events further includes a geographic location of an associated search engine user, and the statistical data is generated separately for each of a plurality of geographic locations.

17. The method of claim 10 , further comprising incorporating the statistical information into a ranking process used by a particular index-type search engine to rank the destination.

18. The method of claim 10 , further comprising using the statistical information to select advertising to display on said destination.

19. The method of claim 1 , further comprising automatically generating a search engine comparison report using said information, said search engine comparison report separately indicating, for each of the plurality of index-type search engines, the pluralities of different search queries used to arrive at the destination via the respective search engine.

20. A computer-readable medium having stored thereon a computer program that, when executed by a computer system, causes the computer system to perform the method of claim 1 .

21. The method of claim 1 , further comprising automatically generating an interactive search engine comparison report using said information, said search engine comparison report separately indicating, for each of the plurality of index-type search engines, the pluralities of different search queries used to arrive at the destination via the respective search engine;

wherein via interaction with a user of the interactive search engine comparison report, a data range of the report can be constrained by one or more of the following:

a time limit;

a type of industry;

search term ranking;

a limit on a geographical range comprising at least one of country, state, territory, city, or zip code; or

identification of the index-type search engine; and

displaying applicable constraints in the interactive search engine comparison report.

22. A computer system, comprising:

a data repository that stores search activity data of search engine users, said search activity data encompassing searches conducted by search engine users over a plurality of index-type search engines, wherein each of the plurality of index-type search engines maintains its own proprietary index obtained by crawling web sites for building a unique database for generating search results, wherein each of the search engine users interacts with a search results page of the index-type search engine to view search results; and

an analysis component stored on a computer-readable medium, wherein the analysis component analyzes the search activity data stored in the data repository to generate statistical data regarding search queries used over said plurality of index-type search engines to locate and access a particular destination, wherein the analysis component comprises computer hardware.

23. The computer system of claim 22 , wherein the analysis component generates separate statistical data for each of the plurality of index-type search engines.

24. The computer system of claim 22 , wherein the statistical data includes, for a particular search engine and search query, information about a position at which the index-type search engine displayed the destination in search results for said query.

25. The computer system of claim 22 , further comprising a report generator stored on a computer-readable medium, wherein the report generator incorporates the statistical data into a search engine comparison report, said search engine comparison report identifying differences between how users locate the destination using different search engines.

26. The computer system of claim 22 , further comprising a content selection system stored on a computer-readable medium, wherein the content selection system takes the statistical data into consideration in selecting content to display on said destination.

27. The computer system of claim 22 , further comprising a search engine system stored on a computer-readable medium, wherein the search engine system takes the statistical data into consideration in ranking the destination for display in said search results.

28. The system of claim 22 , further comprising a report generator stored on a computer-readable medium, wherein the report generator incorporates the statistical data into an interactive search engine comparison report, said search engine comparison report identifying differences between how users locate the destination using different search engines;

wherein via interaction with a user of the interactive search engine comparison report, a data range of the report can be constrained by one or more of the following:

a time limit;

a type of industry;

search term ranking;

a limit on a geographical range comprising at least one of country, state, territory, city, or zip code; or

identification of the index-type search engine; and

displaying applicable constraints in the interactive search engine comparison report.

Assignments (9)
MERGER Recorded Dec 26, 2015
From: GERE DEV. APPLICATIONS, LLC
To: GULA CONSULTING LIMITED LIABILITY COMPANY
Reel/Frame 037360/0781 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 26, 2011
From: EIGHTFOLD LOGIC, INC.
To: GERE DEV. APPLICATIONS, LLC
Reel/Frame 026650/0007 →
CORRECTIVE ASSIGNMENT TO CORRECT THE RECEIVING PARTY PREVIOUSLY RECORDED ON REEL 020964 FRAME 0915. ASSIGNOR(S) HEREBY CONFIRMS THE ERROR IN THE PARTY "RJ RESEARCH INC." WHICH SHOULD HAVE BEEN "ENQUISITE, INC." DUE TO A NAME CHANGE IN THE ENTITY. Recorded Jun 29, 2011
From: METAMEND SOFTWARE AND DESIGN LTD.
To: ENQUISITE, INC.
Reel/Frame 026525/0402 →
CHANGE OF NAME Recorded Jun 10, 2010
From: ENQUISITE, INC.
To: EIGHTFOLD LOGIC, INC.
Reel/Frame 024518/0362 →
SECURITY AGREEMENT Recorded Jul 28, 2008
From: ENQUISITE, INC., A DELAWARE CORPORATION
To: VENCORE SOLUTIONS LLC
Reel/Frame 021315/0423 →
CHANGE OF NAME Recorded May 29, 2008
From: RJ RESEARCH, INC.
To: ENQUISITE, INC.
Reel/Frame 021014/0978 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 19, 2008
From: METAMEND SOFTWARE AND DESIGN LTD.
To: RJ RESEARCH, INC.
Reel/Frame 020964/0915 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 12, 2006
From: ENQUISITE SOFTWARE, INC.
To: METAMEND SOFTWARE AND DESIGN LTD.
Reel/Frame 018620/0687 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 21, 2006
From: ZWICKY, RICHARD KAZIMIERZ; HOOGE, TODD WILLIAM; DUNN, MATTHEW
To: ENQUISITE SOFTWARE INC.
Reel/Frame 018287/0025 →
Continuity (3)
Provisional Application 60690914 · Jun 16, 2005
Provisional Application 60703901 · Aug 1, 2005
Provisional Application 60731243 · Oct 31, 2005