HelpCrunch widget uses "first-party" cookies linked directly to your website's domain. We are committed to protecting your data privacy, and these cookies cannot be accessed by HelpCrunch on any other websites or by other sites using the HelpCrunch widget. Each cookie is exclusive to your domain.
We have 2 types of cookies set globally (for example, hc-logout) and cookies with suffixes, based on the organization and application ID. They are structured in the following manner:
domain-organizationName-appIdNumber-cookieKey
(example: helpcrunch.com-tesla-2-visit-start-time)Here is a list of cookies, including their purpose, duration, and a brief description:
Cookie name |
Type |
Storage duration |
Description |
device-source | link | 1 year | Сurrent page when the widget is was loaded |
device-referrer | link | 1 year | The link from which the visitor came to the current page (document.referrer) |
hc-visitor-hash | hash | 1 year | We create a hash that is necessary for tracking metrics related to proactive chat auto messages and popups. This hash is utilized exclusively when the device has not been created yet (for visitors). |
Cookie keys that include widget ID
Cookies designated for a particular widget are structured in the following manner:
domain-organizationName-appIdNumber-cookieKey
This is the list of cookieKeys:
Cookie key name |
Type |
Storage duration |
Description |
chat-id | number | 1 year | ID of the active chat |
helpcrunch-device | object | 1 year | Device data, such as ID, secret, and sessions. |
device-id | number | 1 year | The device ID is needed to send requests to the device, for example, to update it or to retrieve the customer data (not visitor data) during loading. |
hc-logout | true | 1 year | In the event of a logout error, we assign a value true to this cookie. This is important because it allows us to remove all authorization information from the cookies when the widget is reloaded. |
widget-close-time | time | 1 year | We set the time, during which widget was collapsed for the proactive chat auto message ruleTime since the widget was closed |
visits-count | number | 1 year | The number of sessions used for the proactive chat auto message rule number of visits |
visit-start-time | time | 1 year | Auxiliary key for calculating the start of the session |
visit-end-time | time | 1 year | Auxiliary key for calculating the end of the session |
last-trigger-message | object | 1 year | The last proactive chat auto message |
last-trigger-time | time | 1 year | Used for proactive chat auto messages |
received-triggers-count | number | 1 year | The number of triggers for the proactive chat auto message rule triggers received |
last-message | object | 1 year | It's used to display the last message text above the closed chat button |
triggers-list | array of objects | 1 year | The list of proactive auto messages that were triggered. As they are not sent immediately, they are logged, and when the client responds - a chat is created that includes all these messages. |
unsent-popups | array of objects | 1 year | Pop-ups that appeared before the creation of the device and customer were created. Once the user initiates a chat, this information will be transmitted to the device to log which particular pop-ups were activated. |
page-views | number | 1 year | It is required for the proactive chat auto messages rule (how many times the page has been viewed) |
widget-window-state | state name | 1 year | The state of the widget we are currently on. For example, Pre-chat form, chat, or knowledge base |
previous-state | state name | 1 year | The previous state of the widget is used to understand from which state we transitioned and what to do when the "back" button is pressed. |
last-agent-message | object | 1 year | The last message from the agent is used to display the agent's avatar on the chat button |
user-location | object | 1 year | If the popup or trigger needs data about the visitor's location (city/ country/countryCode), we send a request to retrieve that information and then store it in a cookie |
unfinished-message | text | 1 year | If the user begins to type in the input field but doesn't send the text, we will store it and show this text when they come back to the chat, allowing them to continue composing the message |
open-chat-state | boolean | 1 year | Stores the chat state (either minimized or maximized). It's necessary to maintain the chat state while moving between various pages |
token-data | object | 1 year | Token data for request authorization. |
user-id | string | 1 year | user_id field for a registered customer. Used for user authentication |
kb-article-ratings | array of objects | 1 year | The information regarding the ratings of Knowledge Base articles |
kb-session-token | hash | 1 year | The session token in the knowledge base, used for limiting access by IP or password |
knowledge-base-state | object | 1 year | State of the knowledge base. Saving information about the current page and section of the knowledge base that a user visited |
kb-lang-tag | string | 1 year | The language selected by the user in the knowledge base |
large-widget | boolean | 1 year | Saves the state when clicking the "expand" button in the knowledge base section of the chat widget, to expand the widget for more convenient viewing of articles |