Patent ID: 8719452

Claim:
A computer-implemented method comprising: receiving, by one or more servers, a data packet that includes: data referencing one or more client-side click events, data referencing a respective time that each client-side click event occurred, as indicated by a client-side clock, and data referencing a transmission time, as indicated by the client-side clock, that is assigned to the data packet; determining, by the one or more servers, a receipt time of the data packet as indicated by a server clock associated with one or more of the servers; estimating, by the one or more servers, an amount of time by which the client-side clock and the server clock are out of synchronization based at least on (i) the transmission time, as indicated by the client-side clock, that is assigned to the data packet, and (ii) the receipt time of the data packet, as indicated by the server clock; for one or more client-side click events referenced by data included in the data packet, generating, by the one or more servers, a server clock time for the client-side click event based at least on (i) the estimate of the amount of time by which the client-side clock and the server clock are out of synchronization, and (ii) the time that the client-side click event occurred, as indicated by the client-side clock; and for one or more client-side click events referenced by data included in the data packet, logging, by the one or more servers, the client-side click event in an event log according to the server clock time for the client-side click event.