9 minute read

Editor's note: This is an update from our Analytics v1 article

Picture it, you’ve just received a notification as you leave your house. Your phone switches from WiFi to LTE as you try to view what promises to be a hilarious video. For some reason, your VPN is still trying to reconnect as you wait, one, five, ten seconds, and still no laughs. Frustrated, you put your phone in your pocket and resign yourself to boredom.

Customers want a VPN that connects quickly, so they know they’re protected as soon as it turns on. Waiting longer than expected can mean turning their VPN off altogether, which is the last thing we want you to do at TunnelBear. We pride ourselves on building a service that you don’t have to spend much time tinkering with, but in order to make sure you don’t notice any difference in service when switching from one network to the next, we need to better understand how long it takes the average Bear to connect.

tldr; we’re collecting some new data to make our network better, but as always, we did our homework to make sure we’re not collecting personally identifiable data

Reducing the time it takes to connect, and ensuring you always get the highest throughput connection, means improving our understanding of what’s happening on our network when a connection takes place. Part of this project means collecting connection information so we can see if our network improvements are working as expected. We’ve gone to great lengths to ensure that the information we’re collecting cannot be tied to an individual user or device.

Improving your experience

Making sure TunnelBear is quick and responsive around the world, not just under ideal conditions, is just as important for our customers as it is for us. Sometimes it’s hard to get an accurate picture of how things are performing from our office in downtown Toronto. We use TunnelBear all day on our office 1Gbps fibre connection, where it feels fast and connects quickly. We also use TunnelBear on our phones, while out and about, but Canada is in the top 20 countries for fastest 4G data speeds, so our experience isn’t exactly representative of most people.

For example, here in the Bear Cave, TunnelBear for Windows typically connects using IKEv2 in just over a second, which we’re pretty happy with. Since we started analyzing data points from connections globally, we’ve found that the average connection time is in fact around five seconds, which is good, but we want to make it even better.

Optimizing TunnelBear for speed and connection time

The main thing we’re interested in is how long it takes for people to connect. There are a lot of things that impact connection times, so alongside the data outlined below, we’re looking at which of our supported VPN protocols successfully connects first and whether features (like GhostBear) are enabled. Here’s the full list of what we collect when you connect and why:

Item Why
Date Measure improvement over time.
Session ID Shows if unsuccessful connection attempts are followed by successful ones.
Operating system Compare performance results across platforms.
Operating system version See which OS versions we need to support.
TunnelBear version Compare performance results across platforms.
Enabled features (VigilantBear, GhostBear, Trusted Networks, TCP Override, Auto Destination Selection) Gauge feature popularity and possible impact on connection experience.
Destination server Compare global server responsiveness.
Network type used To understand the impact on connection time based on the network type (3G, LTE, WiFi)
Country connected from Helps us understand network utilization by region
Time spent in API calls Helps us prioritize and optimize API to provide a better VPN experience
Time taken Time to connect statistics
Overall result Counts unsuccessful connection attempts

How we’re protecting your privacy

We take a “privacy-first” approach to everything we do. If we can’t do something in a way that maintains our users’ privacy, we simply don’t do it. To further reduce the risk that combining multiple types of metadata could potentially identify someone, we’ve carefully taken the following steps:

  • We do not store the time of when the connection event happened. Although it might be useful to TunnelBear, we reduced the granularity of the data to be just the day. This significantly reduces the threat that a user could be identified through comparing a 3rd party source of data with TunnelBear data and confirming a user was connected to TunnelBear
  • We do not send any information which identifies an individual user or account. Instead, we randomly generate a “Session ID” when the app is launched, and only compare data in aggregate
  • We never store who starts the connection, their IP address, or any other personally identifiable information (e.g. email address, device id etc.). While we are storing data about which countries are connected to, which countries connections are coming from, we never store data at a granularity that allows anyone to personally identify a user.

Maintaining compliance

As we build tests and analytics processes, we make sure we stay true to our promise of not keeping any personal data. We don’t log anything that could identify a customer, and we don’t monitor anything our customers do. If you’d like to know what information we require to run TunnelBear you can read our Privacy Policy. If you’re a Bear owner and you’d like to see what information you’ve shared with us, you can download a copy of your data through the “Privacy” section of your account page.

We have no more of our customers' data now than we did before our tests started.

We would love to hear from you if you have any questions about the nature of our analytics tests, or would like to know more about how we measure network speeds. Just reach out to our friendly Support Bears for more information.

Warm rawr-gards,
the TunnelBear Team