A method for tracking, with a tracking server, web browsing activity of a client device accessing a vendor server, comprising: receiving a request for tracking software from the client device, the request for the tracking software being prompted by launch software sent to the client device by the vendor server; transmitting the tracking software to the client device, wherein the tracking software is configured to execute upon receipt by the client device and: prompt the client device to determine whether the client device has stored therein a web cache file having an embedded client fingerprint, to request the creation of a new web cache file from the tracking server if the client device does not have the web cache file stored therein, upon receipt of a new cache file received from the tracking server, to create a backup of the client fingerprint on the client device, to check if a backup of an old fingerprint exists on the client device, and if a backup of an old fingerprint exists, to transmit to the tracking server the backup of the old fingerprint, the client fingerprint, a vendor identifier associated with the vendor, and an identification of one or more client actions; receiving a request for the new web cache file from the client device; establishing a client fingerprint associated with the client device, wherein the client fingerprint is unique to the client device; storing, in a memory of the tracking server, a client profile associated with the client fingerprint, the client profile describing zero or more client actions; embedding the client fingerprint in the new web cache file; transmitting the new web cache file to the client device; receiving the client fingerprint and an identification of one or more client actions from the client device; updating the client profile to include the identification of the one or more client actions; and linking the client profile associated with the fingerprint to a client profile associated with the backup of the old fingerprint. receiving a request for tracking software from the client device, the request for the tracking software being prompted by launch software sent to the client device by the vendor server; transmitting the tracking software to the client device, wherein the tracking software is configured to execute upon receipt by the client device and: prompt the client device to determine whether the client device has stored therein a web cache file having an embedded client fingerprint, to request the creation of a new web cache file from the tracking server if the client device does not have the web cache file stored therein, upon receipt of a new cache file received from the tracking server, to create a backup of the client fingerprint on the client device, to check if a backup of an old fingerprint exists on the client device, and if a backup of an old fingerprint exists, to transmit to the tracking server the backup of the old fingerprint, the client fingerprint, a vendor identifier associated with the vendor, and an identification of one or more client actions; prompt the client device to determine whether the client device has stored therein a web cache file having an embedded client fingerprint, to request the creation of a new web cache file from the tracking server if the client device does not have the web cache file stored therein, upon receipt of a new cache file received from the tracking server, to create a backup of the client fingerprint on the client device, to check if a backup of an old fingerprint exists on the client device, and if a backup of an old fingerprint exists, to transmit to the tracking server the backup of the old fingerprint, the client fingerprint, a vendor identifier associated with the vendor, and an identification of one or more client actions; receiving a request for the new web cache file from the client device; establishing a client fingerprint associated with the client device, wherein the client fingerprint is unique to the client device; storing, in a memory of the tracking server, a client profile associated with the client fingerprint, the client profile describing zero or more client actions; embedding the client fingerprint in the new web cache file; transmitting the new web cache file to the client device; receiving the client fingerprint and an identification of one or more client actions from the client device; updating the client profile to include the identification of the one or more client actions; and linking the client profile associated with the fingerprint to a client profile associated with the backup of the old fingerprint.