Swan songs: How FullStory records sessions that end unexpectedly

This article exists to describe a somewhat esoteric aspect of the FullStory recording infrastructure referred to internally as "swan songs". Most customers using FullStory wouldn't need to know that swan songs exist or how they work, but sometimes understanding how swan songs work can help to explain certain edge cases that our customers may encounter.

A quick primer on how FullStory recording works: When an end user session is recorded by the FullStory script, FullStory starts by recording event data locally in the browser. Every few seconds, this local event data is packaged up and sent to FullStory recording servers in the form of bundles. These bundles are then processed by FullStory's backend infrastructure into a format that generates the sessions and digital experience insights you see when you log into the FullStory application.

Occasionally, the FullStory script will record event data locally in the browser, but won't be able to send the bundled events to the FullStory recording servers immediately. If the user navigates away or closes their tab—which is normal behavior—FullStory bundles these events together into a "swan song" bundle, that is, a last ditch attempt to send the event data to FullStory before the page closes. In some instances, the swan song isn't successful, so the data is stored locally in the user's browser, and the next time the user on that particular device visits the customer's site, the FullStory script will send the swan song data that weren't successfully sent on the user's last visit. These swan song events will be processed and appear as part of the original FullStory session.

Swan song bundles can be added to a FullStory session up to 24 hours after the last bundle was recorded (that is, near the end of the session). After 24 hours, swan song bundles will be dropped.

Need to get in touch with us?

The FullStory Team awaits your every question.

Contact us