The Warmly Script & Performance

Information about Warmly's script and the impact of adding it to your website

Maximus Greenwald avatar
Written by Maximus Greenwald
Updated over a week ago

Warmly’s Javascript Snippet is one line of code added to your website and enables you to identify & aggregate the anonymous visitors from your web traffic for sales & marketing use cases. Here are a few frequently asked questions about what the snippet is, what data it collects and how it works.

Overview

Example Of A Warmly Script

<script id="warmly-script-loader" src="https://opps-widget.getwarmly.com/warmly.js?clientId=XXXXX" defer></script>

Instructions for Adding the Warmly Script to your Website

See here

How Does Warmly's Script Tag Work?

Warmly Identifies anonymous web visitors using their IP address. We then place a cookie in the user's browser to re-identify them on subsequent visits.

To match their IP Address to a known company or contact we use a database of known matches from 6sense (IP address to company name) and Clearbit​ (email address to business information) via API plus our own proprietary enrichment data.

How Does our Team See the Live Interaction of a Web Visitor?

Warmly replicates web visitor interactions for your team to view using their mouse movements, page views and scrolling.

We send across chat messages and 2-way video to complete the view.

Compliance

Is This Privacy Aware?

Yes, Warmly is GDPR/CCPA Compliant. If customers are doing business in Europe, we recommend customers have a cookie policy in their privacy policy or terms of service. Additional details on privacy are at the end of this document.

Is This Secure?

Yes, Warmly takes security extremely seriously. We are SOC2 Type2 Compliant. Please see here for full transparency on our security posture: https://security.warmly.ai/.

What User / Browser Information Does The Snippet Send To Warmly?

Warmly receives the following pieces of information:

  • IP Address

  • URL and URL’s UTM parameters

  • Session cookie

  • Session status (active, idle, closed)

  • ClientId (so we know which client we’re processing traffic for)

  • Form fill information

  • User agent

  • Messages exchanged via chat

  • Pages visited

  • Time spent on page

  • Inbound widget interactions from the end user (e.g. requesting a call/chat)

Where Is This Data Stored By Warmly?

Google Cloud Platform

Performance

Will This Slow My Site Down? What Amount of Data Transfer is Occurring Here?

No, it will not slow your site down. If ​your team is not actively viewing the live session of a visitor the data transfer is minimal because we are not live streaming all end user activity, instead only streaming select events such as form fills, site/page hits, and periodic pings on whether the user is still active on the session​. Just like any snippet from Google or ad platforms, it should not impact website performance.

If ​your team is viewing the end user session there is more data transfer because Warmly live streams all end user activity​ but impact overall to their browsing session is not degraded significantly​. Total data transfer depends on traffic, and we defer all scripts so ​our ​Warmly script will not block page rendering.

Does Behavior Change Around Mobile / Cellular Usage?

No​.

Data Quality

How Well Does This Work?

6sense, our provider, is the #1 provider for website IP de-anonymization as per Forrester (read more here). Their match rate varies by vertical and audience but to keep quality high, averages 55-60%.

How Does it Work with Limiting Factors on Cookies?

There are limitations to cookies - some browsers are banning cookies and others clear cookies daily. 6sense data has a multi-pronged approach to identification using device ID, fingerprinting and several other factors to provide the most accurate data even when cookies are not present.

Does Identification Work on Mobile?

Yes.

How do You Deal with Remote Workers / Multi-worker Households?

This has made matching more difficult - 6sense estimates that its non-corporate matches are 85% accurate. When remote work took off their 6signal intent graph deployed available secondary marker information, like mobile advertising IDs, to triangulate data connections. Read more by 6sense’s CTO.

How do VPNs Affect the Data Quality?

While companies can and do use VPN for company resources, 6sense doesn’t need someone to be on a VPN to match accounts. Since the early days of 6sense, they’re mapped non-corporate locations to businesses, and as a result have never lost a match test against a competitor.

Even though many employees use a VPN to access company resources, most companies limit the types of activities routed through the VPN. If you access your company intranet, data center or cloud resources, then that traffic is routed through a VPN. But when you are browsing the internet for memes or the news, that traffic isn’t routed through the VPN to reduce the load on the VPN tunnel.

If a user or company uses a Cloud VPN (hosted solution), 6sense tends to ignore these types of IP addresses, as they are difficult to verify and susceptible to deception — for example, they could be associated with a bot crawling the internet, and their 6signal Graph focuses instead on more reliable data.

Additional Detail on Privacy

From a privacy perspective, it is our customer’s obligation as the data controller to ensure they have the right to provide the data to Warmly to perform the processing described above. While we do not provide legal advice to our customers on their EU or GDPR compliance, our customers should follow the EU ePrivacy Directive with respect to required opt-outs or opt-ins and also rely on legitimate interest for the use of business contact information for marketing purposes. As a general matter, the EU cookie policies have been in flux for a while. The EU has the ePrivacy Directive, which is implemented through individual country privacy laws. In general, the EU ePrivacy Directive requires informed consent for the placement of a cookie or use of another technology that stores or accesses information on a user’s device. There are exceptions to the consent requirements, for example, for technical storage and access purposes and where strictly necessary to provide a service requested by a subscriber. The scope of these exceptions (for example, whether it includes analytics cookies) differ among some member countries. Many of our customers follow the most restrictive approach, while others adopt different approaches based on the countries in which they do business and the types of services they provide to their subscribers. Some customers consider the collection of cookie data analytics as essential for running their business. This varies based on the customer and their use case.

Regardless of the above, there are two components to the Warmly snippet: (1) the JavaScript, and (2) the cookie. Features of the Warmly snippet provide our customers’ webmasters the ability to either: (1) place both the JavaScript and cookie behind a cookie banner, or (2) place just the cookie behind the cookie banner while allowing the JavaScript to fire. The Warmly JavaScript allows for account identification without dropping a cookie. In this case, while our customer will not collect cookie information to track a specific visitor’s journey, the JavaScript will be able to identify a specific account that has visited the customer’s website, and information such as date/time of access, browser used, etc. to provide value to the customer. Many customers consider this an important use-case because it allows for website personalization depending on the account that are visiting the website.

Note that all data displayed as a result of collection by the Warmly JavaScript is at the “company level,” and Warmly does not identify a person from the JavaScript data that we collect. Warmly cannot and does not identify individuals through this process as person level identification comes from other opt-in means.

This article was written by the Customer Success team at Warmly. Please feel free to reach out to your CSM directly or [email protected]

Did this answer your question?