Convert Experiences Tracking Cookies Structure

Currently we are using three cookies in order to track visitor experiments. These cookies are a small bit of text that accompanies requests and pages as they go between the Web server and browser. The cookie contains information that Convert application can read whenever the user visits the site. So in that sense they are necessary to store user-specific information.

Below you will find more details for these three cookies.


This cookie is the visitor centric cookie that has a lifetime of max 6 months from the last update time. It is a string of star(*) separated pieces; each piece is a string that contains key and value strings glued together by colon (:). Here is a list of used keys:

    • vi : has value 1 when customer did not provide an ID for the visitor (option available only on certain plans);

    • sc : sessions count; number of session for this visitor;

    • cs : current session start timestamp

    • fs : first session start timestamp

    • pv : number of pageviews for this visitor across all sessions

    • ps : previous session start timestamp

    • seg:  the IDs of project-level segments that this visitor belongs to 
    • exp : json like structure of all experiments presented to this visitor together with the goals triggered for each one of them. Replacing dot (.) with colon (:) , hyphen (-) with comma (,) and quoting all the keys and values it becomes a valid JSON. Something like this could be used to transform it into a valid JSON:

  data = data.replace(/-/g,","); //getting back the comas
  data = data.replace(/\./g,":"); //getting back the column
  data = data.replace(/([a-z0-9]+):/g,'"$1":'); //bringing back quotes

This json has as keys the experiments IDs and values has objects where the key “v” represents the variation ID and the key “g” represents the goals triggered for that experiment;

example cookie value: vi:1*sc:2*cs:1374079443*fs:1374074823*pv:4*seg:{100246.1}*exp:{10001236.{v.10008683-g.{10001841.1}}-10001237.{v.10008687-g.{10001841.1}}}*ps:1374074823


This cookies is session centric cookie that has a lifetime of 20 minutes since the last update (last browsing activity). It is stored in the same structure as the one above, having the following keys:

    • si - session ID; starts at 1 and increases with each new session

    • pv - number of pageviews in the current session

    • sh - when vi value inside the previous explained cookie (_conv_v) is 1. we'll generate a session hash which is stored in here for the period of the session and which is used and needed for performance reasons. This value is being sent to the server where it serves for cache purposes( the cache is expiring in 20 minutes, same as session)

example cookie value: si:2*sh:1521723696383-0.5867184247347756*pv:3


This cookie holds the referral data for the current visitor. This is overwritten each time visitor comes from a new referrer. Structure same as above using the following keys:

    • s : source name - domain name of the referrer or the provided value through the corresponding utm variable

    • m : referral medium  or the provided value through the corresponding utm variable

    • t : referrer search terms automatically picked from search engines or manually fed through the corresponding utm variable

example cookie value:*m:organic*t:ab testing

Size Limits

According to Microsoft, most browsers will allow cookies of up to 4096 bytes and again, most browsers only allow you to store up to 20 cookies per site.  The oldest cookie would be discarded if trying to store more than the limit. You can find a reference here:

AWS Persistent Cookies

We cannot write persistent cookies on some public domains such as In cases such as this you would have to use a domain that you own in order to run experiments. 

Have more questions? Submit a request