IP Library › Granted Patent US 8,683,051
Granted Patent B2
US 8,683,051 · App. 13/357,299 · Granted Mar 25, 2014

System and method for tracking unique visitors to a website

Inventors: Paul N. Muret (Los Altos, CA); Hui Sok Moon (Campbell, CA); Jonathon A. Vance (San Jose, CA)
Assignee: Google Inc.
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,683,051
App. No.
13/357,299
Granted
Mar 25, 2014
Kind
B2
Abstract

A system and method for analyzing traffic to a website is provided that is based on log files and that uses both server-side and client-side information channeled through one source to create a more complete picture of activity to a website. In one preferred embodiment, a sensor code is embedded in a requested web page, and sends information back to the web server where the website resides. This additional information is logged along with normal requests.

Claims (62)

1. A computer-implemented method, comprising:

receiving, at a server, a first request for a web page of a website from a client during a client session;

in response to receiving the first request:

generating a first log file entry specifying the first request; and

sending, from the server, the web page to the client, wherein the web page includes a script; and

receiving, at the server, a second request from the client during the client session, the second request generated by the script and including data specifying the first request for the web page and including data from at least one related cookie for the website, stored at the client, for determining the client session;

in response to receiving the second request:

generating a second log file entry specifying the first request and the second request; and

generating a client session path for the client session identifying web pages requested by the client and an order in which web pages were requested based on the first log file entry and the second log file entry, wherein generating the client session comprises:

merging the first log file entry and the second log file entry to remove a duplication from the client session path of the first request from the first log file entry and the first request from the second log file entry.

2. The method of claim 1 , wherein the client session path is the first request and the second request.

3. The method of claim 1 , further comprising:

determining that the first request and the second request were generated during the client session based on the data from at least one related cookie for the website stored at the client; and

wherein merging the first log file entry and the second log file entry comprises merging the first log file and the second log file in response to determining that the first request and the second request were generated during the client session.

4. The method of claim 1 , wherein the second request comprises a unique query.

5. The method of claim 1 wherein the second request is adapted to not be intercepted by a cache/proxy system.

6. The method of claim 1 , wherein the at least one related cookie for the website comprises:

a first cookie having a first expiration time and storing data defining two or more client sessions times with the website; and

a second cookie having a second expiration time that occurs before the first expiration time and that defines a client session with the website.

7. The method of claim 1 , wherein the first request comprises a request for the web page and the second request comprises a request for the web page, and wherein merging the first log file entry and the second log file entry comprises:

removing a request for the web page from one of the first request and the second request.

8. A system, comprising:

a server computer; and

a memory storage in data communication with the server computer and storing instructions that when executed by the server computer cause the server computer to perform operations comprising:

receiving a first request for a web page of a website from a client during a client session;

in response to receiving the first request:

generating a first log file entry specifying the first request; and

sending the web page to the client, wherein the web page includes a script; and

receiving a second request from the client during the client session, the second request generated by the script and including data specifying the first request for the web page and including data from at least one related cookie for the website, stored at the client, for determining the client session;

in response to receiving the second request:

generating a second log file entry specifying the first request and the second request; and

generating a client session path for the client session identifying web pages requested by the client and an order in which web pages were requested based on the first log file entry and the second log file entry, wherein generating the client session comprises:

merging the first log file entry and the second log file entry to remove a duplication from the client session path of the first request from the first log file entry and the first request from the second log file entry.

9. The system of claim 8 , wherein the client session path is the first request and the second request.

10. The system of claim 8 , wherein the instructions further cause the server computer to perform operations comprising:

determining that the first request and the second request were generated during the client session based on the data from at least one related cookie for the website stored at the client; and

wherein merging the first log file entry and the second log file entry comprises merging the first log file and the second log file in response to determining that the first request and the second request were generated during the client session.

11. The system of claim 8 , wherein the second request comprises a unique query.

12. The system of claim 8 , wherein the second request is adapted to not be intercepted by a cache/proxy system.

13. The system of claim 8 , wherein the at least one related cookie for the website comprises:

a first cookie having a first expiration time and storing data defining two or more client sessions times with the website; and

a second cookie having a second expiration time that occurs before the first expiration time and that defines a client session with the website.

14. The system of claim 8 , wherein the first request comprises a request for the web page and the second request comprises a request for the web page, and wherein merging the first log file entry and the second log file entry comprises:

removing a request for the web page from one of the first request and the second request.

15. A computer program product, encoded on a computer-readable storage device, operable to cause one or more processors to perform operations comprising:

receiving, at a server, a first request for a web page of a website from a client during a client session;

in response to receiving the first request:

generating a first log file entry specifying the first request; and

sending, from the server, the web page to the client, wherein the web page includes a script; and

receiving, at the server, a second request from the client during the client session, the second request generated by the script and including data specifying the first request for the web page and including data from at least one related cookie for the website, stored at the client, for determining the client session;

in response to receiving the second request:

generating a second log file entry specifying the first request and the second request; and

generating a client session path for the client session identifying web pages requested by the client and an order in which web pages were requested based on the first log file entry and the second log file entry, wherein generating the client session comprises:

merging the first log file entry and the second log file entry to remove a duplication from the client session path of the first request from the first log file entry and the first request from the second log file entry.

16. The computer program product of claim 15 , wherein the client session path is the first request and the second request.

17. The computer program product of claim 15 , wherein the second request comprises a unique query.

18. The computer program product of claim 15 , wherein the second request is adapted to not be intercepted by a cache/proxy system.

19. The computer program product of claim 15 , wherein the at least one related cookie for the website comprises:

a first cookie having a first expiration time and storing data defining two or more client sessions times with the website; and

a second cookie having a second expiration time that occurs before the first expiration time and that defines a client session with the website.

20. The computer program product of claim 15 , wherein the first request comprises requests for the web page and another web page from the website and the second request comprises a request for the web page, and wherein merging the first log file entry and the second log file entry comprises:

removing a request for the web page from one of the first request and the second request.

Assignments (3)
CHANGE OF NAME Recorded Oct 5, 2017
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 044129/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 7, 2012
From: MURET, PAUL NICOLAS; MOON, HUI SOK; VANCE, JONATHON ANDREW
To: URCHIN SOFTWARE CORPORATION
Reel/Frame 028165/0450 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 7, 2012
From: URCHIN SOFTWARE CORPORATION
To: GOOGLE INC.
Reel/Frame 028165/0529 →
Continuity (5)
Continuation 12961197 · Dec 6, 2010
Continuation 12266934 · Nov 7, 2008
Continuation 10429721 · May 6, 2003
Provisional Application 60377616 · May 6, 2002
Related Publication 20120124205A1 · May 17, 2012