Replay Performance

Replay is designed to deliver impressive functionality with minimal impact to the performance of your website.

With regards to performance, ForeSee has specific strategies for three common performance considerations:

  • Download of ForeSee product files.
  • CPU usage during a user's browsing session.
  • Transmission of Replay recordings to ForeSee.

Download of ForeSee Product Files

ForeSee uses a leading Content Delivery Network to optimize download speed and to follow best practices for caching and compression, as described here. ForeSee has also optimized for page weight (relative download size). On initial load, the Replay product file should have sub-second download times. On subsequent loads, there should be no load time due to caching.

The following image is an example of observed download speeds (345ms for initial load and 9ms for a subsequent load from cache).

471471 631631

CPU Usage

ForeSee® Replay code is designed to consume a minimal amount of CPU resources when capturing page events. This is further improved with version 19.7.0+ of the Web SDK, where we use multi-threading to maximize performance.

The implementation of masking rules is another key factor for CPU usage. We have optimized our code to account for this as well.

Transmission of Replays to ForeSee

In order to minimize the amount of data transmitted, Replay captures only DOM events and user interactions during the site visit. These are later overlaid with the other site assets to produce the Replay movies.

When a user accepts a survey invitation with Replay (Measure or Feedback), the recorder sends an initial burst of information to the server for pages consumed before survey invitation/badge interaction. Then Replay makes incremental transmissions from there as the user explores the site.

ForeSee minimizes the impact to your site by transmitting the data during dormant periods on the site. This can be observed using the Developer tools. As the survey respondent moves from page to page, the recorder stacks up events in the background that need to be transmitted to the server. If you open the network tools and unfocus the window where Replay is running, you can see it fire off a burst of traffic to ForeSee servers. When Replay sees the window leave focus, we know the user is doing something else on their device. So, Replay uses that moment of network inactivity to dump all those events to the server. This isn’t a universal rule; but definitely applies in the majority of situations to reduce the performance impact.